snjl

我大概率会编程。


  • 首页

  • 标签

  • 分类

  • 归档

  • 搜索

chmod命令

发表于 2018-11-24 | 分类于 服务器
字数统计: 998 字 | 阅读时长 ≈ 3 分钟

/home/user/java/jdk1.7.0/bin/java:permission denied

处理方法:提升java为执行权限

1
chmod +x /home/user/java/jdk1.7.0/bin/java

以及javac权限不够也是如此处理。

阅读全文 »

开放端口查看和打开关闭

发表于 2018-11-24 | 分类于 服务器
字数统计: 24 字 | 阅读时长 ≈ 1 分钟

查看打开端口

1
sudo iptables -L -n

打开80端口

1
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

react:存储session

发表于 2018-11-24 | 分类于 react , 前端
字数统计: 80 字 | 阅读时长 ≈ 1 分钟

react框架中使用session,如果是单个字符串:

1
sessionStorage.setItem("key",value);

取出时:

1
var result = sessionStorage.getItem("key")

如果是json,在存储时需要将json对象通过stringify()方法转为字符串,存入sessionStorage:

1
sessionStorage.setItem("jsonKey",JSON.stringify(jsonData));

取出时需要再转回json:

1
var result = JSON.parse(sessionStorage.getItem("jsonKey"));

移除session:

1
sessionStorage.removeItem("data");

springboot配置文件

发表于 2018-11-21 | 分类于 springboot
字数统计: 2.1k 字 | 阅读时长 ≈ 8 分钟

项目地址:https://github.com/snjl/springboot.config_test.git

Spring Boot使用了一个全局的配置文件application.properties,放在src/main/resources目录下或者类路径的/config下。Sping Boot的全局配置文件的作用是对一些默认配置的配置值进行修改。

阅读全文 »

springboot常用属性汇总

发表于 2018-11-21 | 分类于 springboot
字数统计: 13.1k 字 | 阅读时长 ≈ 81 分钟

可以在application.properties/application.yml文件中或作为命令行开关指定各种属性。本节提供了常用的Spring Boot属性列表,以及对使用它们的底层类的引用。

属性贡献可以来自您的类路径上的其他jar文件,因此您不应该考虑这是一个详尽的列表。定义您自己的属性也是完全合法的。
此示例文件仅作为指南。不要将整个内容复制/粘贴到您的应用程序中;而只是选择你需要的属性。

阅读全文 »

springboot工程结构推荐

发表于 2018-11-20 | 分类于 springboot
字数统计: 629 字 | 阅读时长 ≈ 3 分钟

项目地址:https://github.com/snjl/springboot.myproject.git

Spring Boot框架本身并没有对工程结构有特别的要求,但是按照最佳实践的工程结构可以帮助我们减少可能会遇见的坑,尤其是Spring包扫描机制的存在,如果您使用最佳实践的工程结构,可以免去不少特殊的配置工作。

阅读全文 »

springboot开发web应用

发表于 2018-11-20 | 分类于 springboot
字数统计: 1.1k 字 | 阅读时长 ≈ 5 分钟

项目地址:https://github.com/snjl/springboot_thymeleaf_demo

静态资源访问

js,css,图片等文件,放在main/resources/static里。

页面放在main/resources/templates里。

配置文件内容可以添加在main/resources、application.properties里。

举例:我们可以在src/main/resources/目录下创建static,在该位置放置一个图片文件。启动程序后,尝试访问http://localhost:8080/D.jpg。如能显示图片,配置成功。

springboot提供默认配置的一些模版:

  • Thymeleaf
  • FreeMarker
  • Velocity
  • Groovy
  • Mustache

使用上述模板引擎中的任何一个,它们默认的模板配置路径为:src/main/resources/templates。当然也可以修改这个路径,具体如何修改,可在后续各模板引擎的配置属性中查询并修改。

阅读全文 »

springboot热启动

发表于 2018-11-20 | 分类于 springboot
字数统计: 193 字 | 阅读时长 ≈ 1 分钟

在pom.xml中的dependencies中添加:

1
2
3
4
5
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>

阅读全文 »

springboot:hello world

发表于 2018-11-19 | 分类于 springboot
字数统计: 1.7k 字 | 阅读时长 ≈ 8 分钟

项目地址:https://github.com/snjl/springboot_helloworld.git

Spring Boot的主要优点:

  • 为所有Spring开发者更快的入门

  • 开箱即用,提供各种默认配置来简化项目配置

  • 内嵌式容器简化Web项目

  • 没有冗余代码生成和XML配置的要求

    阅读全文 »

数据库处理tips

发表于 2018-11-14 | 分类于 数据库
字数统计: 456 字 | 阅读时长 ≈ 2 分钟

1.mysql 开放,关闭 远程授权

默认安装mysql是关闭远程连接的 这样也有助于系统的安全 但是有时候需要开启下远程连接方便操作

开启连接 mysql -uroot -p 进入mysql 输入密码

1
GRANT ALL PRIVILEGES ON * . * TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 ;

1
flush privileges;

输入这两个命令即可开启mysql远程连接

关闭授权

1
2
3
4
REVOKE ALL PRIVILEGES ON *.* FROM root@”%”;
USE mysql;
DELETE FROM user WHERE User=”root” and Host=”%”;
FLUSH PRIVILEGES;

使用下面的命令可以查询用户:

1
select host,user from user where user="root";

结果:

1
2
3
4
5
6
7

+-----------+------+
| host | user |
+-----------+------+
| % | root |
| localhost | root |
+-----------+------+

2.删除重复数据,只留下唯一不重复

1.先多建立一列 temp,用来合并meetingId和speakerId,用“-”连接,之后就判断这一列是否相同。

1
2
3
4
5
6
7
8
9
ALTER TABLE cekasp_meeting_speaker ADD temp VARCHAR(20) NULL;

update cekasp_meeting_speaker set temp = concat(meetingId, '-', speakerId);

delete from cekasp_meeting_speaker where temp in (
SELECT * from (SELECT b.temp from cekasp_meeting_speaker b GROUP BY b.temp HAVING count(*) > 1)ggg)
and id not in (select * from( (select min(c.id) from cekasp_meeting_speaker c GROUP BY c.meetingId,c.speakerId HAVING count(*) > 1) ) ggggggg);

ALTER TABLE cekasp_meeting_speaker DROP temp;

2.或者直接以meetingId和speakerId作为查询

1
2
3
delete from cekasp_meeting_speaker where (meetingId,speakerId) in (
SELECT * from (SELECT b.meetingId,b.speakerId from cekasp_meeting_speaker b GROUP BY b.meetingId,b.speakerId HAVING count(*) > 1)ggg)
and id not in (select * from( (select min(c.id) from cekasp_meeting_speaker c GROUP BY c.meetingId,c.speakerId HAVING count(*) > 1) ) ggggggg);

问题:delete/update里,有in的查询语句时,要使用临时表才能进行删除:

原本的

1
SELECT b.meetingId,b.speakerId from cekasp_meeting_speaker b GROUP BY b.meetingId,b.speakerId HAVING count(*) > 1

应该要使用

1
select * from ... as NAME

包起来,作为一个临时表。

3.两张表表结构一样,将一张表中数据插入另一张表

1
insert into table1 (SELECT * from table2 WHERE id not in (SELECT id from table1))

4.查询某张表的信息

1
select * from information_schema.COLUMNS where TABLE_SCHEMA = (select database()) and TABLE_NAME="paper";
1…18192021
snjl

snjl

越过山丘,才发现无人等候。

203 日志
44 分类
107 标签
RSS
GitHub E-Mail Weibo
© 2019 snjl
总访问量次 | 总访客人 |
由 Hexo 强力驱动
|
主题 — NexT.Mist v5.1.4