- 博客(49)
- 收藏
- 关注
原创 解决:Mysql5.8向5.7版本迁移 this is incompatible with sql_mode=only_full_group_by
运行时报错:Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'novel.n.name' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_byMySQL版本不兼容,导致的Group b.
2020-10-18 22:55:36
412
原创 SpringBoot外部引用jar包(一)
前言:SpringBoot对于做Java开发的程序员来说比较熟悉了,但每次上传jar包的时候,由于jar大小的原因上传的速度比较令人头疼。而项目中引用的jar包基本不会有什么变动。我们可以将引用的jar包上传到服务器上,下次打包的时候直接打包项目代码就行了一、瘦身前的Jar包将jar解压lib目录下存放的就是引用的jar包,将lib目录上传到服务器上然后再pom.xml加上以下配置 <build> <plugins>
2020-10-18 18:18:34
1351
原创 SpringBoot AOP记录操作日志
新建枚举类记录操作类型public enum OperationType { /** * 操作类型 */ UNKNOWN("unknown"), DELETE("delete"), SELECT("select"), UPDATE("update"), INSERT("insert"); private String value; public String getValue() { return
2020-09-13 01:33:39
289
原创 SpringBoot统一异常处理和统一响应
SpringBoot全局统一异常处理和参数返回先编写一个枚举public enum ResultEnum { // 数据操作错误定义 SUCCESS(0, "成功!"), //参数错误 1001-1999 PARAM_IS_INVALID(1001,"参数无效"), PARAM_IS_BLANK(1002,"参数为空"), PARAM_TYPE_BIND_ERROR(1003,"参数类型错误"), PARAM_NOT_COMPLETE.
2020-09-13 01:18:30
589
原创 SpringBoot整合Redis限制IP频繁访问
编写一个redis工具类import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.connection.DataType;import org.springframework.data.redis.core.Cursor;import org.springframework.data.redis.core.ScanOptions;import org.s
2020-09-13 01:00:37
1554
原创 nginx代理路径配置
在配置nginx路径代理时,经常会出现一些配置问题,建议收藏!!!server{ listen 80; server_name 192.168.0.100; location /api { proxy_pass http://192.168.0.100:8080; }}请求url:http://192.168.0.100:80/api/login代理路径:http://192.168.0.100:8080/api/l
2020-09-13 00:50:30
2637
原创 Linux字体缺失,中文成方块;解决!
Java部署Linux上线后,代码生成出来的文件,中文显示成方块,查看日志显示Linux不支持部分字体从windows 复制C:\Windows\Fonts的字体上传到Linux的/usr/share/fonts/目录下执行下面两条命令mkfontscale mkfontdir fc-cache //刷新字体缓存fc-list :lang=zh //查看Linux上的中文字体完美解决,如果你的字体比较特殊,网上下载后放在Linux的/usr/share/fonts/目
2020-09-13 00:33:50
6179
原创 MySQL存在更新,不存在插入
当insert语句中使用了duplicate key update,在UNIQUE或PRIMARY KEY索引出现重复值时,会执行后续的update操作duplicate key updateinsert into table (player_id,award_type,num) values(20001,0,1) on DUPLICATE key update num=num+values(num)replace语句中,先执行insert操作,当发现已经有重复值(根据UNIQUE或PRIMA
2020-08-24 21:43:46
333
原创 SpringBoot项目打war包
因为SpringBoot里内置了Tomcat的,如果要部署在外部Tomcat的朋友,先去除掉Tomcat,并添加servlet容器然后再添加项目名称之后,按组合键Shift+Ctrl+Alt在点击+号,然后选中右边全部然后点击OK,配置完成,接下来开始打包打包完成...
2020-08-24 21:06:23
123
原创 SpringBoot自定义starter
目录结构为新建一个maven项目,在pom添加<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional&
2020-05-30 14:32:01
190
原创 MySQL索引优化
MySQL执行顺序fromjoinonwheregroup byavg,sum…havingselectdistinctorder by索引索引简单来说就是排好序的数据结构优点:提高检索效率,降低IO降低排序成本,降低CPU消耗缺点实际上索引是一张保存主键与索引的表,该表指向实体表的记录,需要占用空间降低了表更新的速度,因为表更新时MySQL更新时,不仅要保存数据还要调整索引表信息索引分类单值索引:一个索引只包含单个列,一个表可以有多个单
2020-05-26 16:45:30
140
原创 MySQL主从复制
原理:MySQL的主从复制是一个异步的复制过程Master(I/O)和Slave(I/O和SQL)之间实现整个主从复制的过程使用了三个线程Master将create、insert、update、delete操作写入binlog日志中;slave读取Master的binlog日志存放在中继日志上;slave执行中继日志上的SQL实现主从复制master节点<!--编辑mysql配置文件-->vim /etc/mysql/my.cnf<!--master使用以下配..
2020-05-26 16:40:51
196
原创 JVM垃圾回收算法
标记 —— 清除算法直接标记清除缺点:效率低产生大量的空间碎片复制算法把空间分成两块,将存活对象放在其中一半上,每次只对其中一块进行 GC。循环往复缺点:空间利用率低标记-整理算法主要是把存活对象移到内存的一端。分代回收根据存活对象划分几块内存区,分为新生代和老年代根据各个年代的特点制定相应的回收算法。新生代每次垃圾回收都有大量对象死去,只有少量存活,选用复制算法比较合理。老年代老年代中对象存活率较高、没有额外的空间分配对它进行担保。.
2020-05-26 16:22:58
87
原创 JVM判断对象是否存活
判断对象是否存活引用计数法给对象添加一个引用计数器。但是难以解决循环引用问题。例图可达性分析法GC Roots为起始节点,引用的路径为引用链。当对象与GC Roots之间没有引用链时,对象不可达例图可作为 GC Roots 的对象:虚拟机栈(栈帧中的本地变量表)中引用的对象方法区中类静态属性引用的对象方法区中常量引用的对象本地方法栈中 JNI(即一般说的 Native 方法) 引用的对象JDK 12对引用进行补充下面四种引用强度一次逐渐减弱强引用
2020-05-26 16:21:12
138
原创 SpringCloud系列教程
SpringCloud系列教程github代码地址:https://github.com/liujx0804/springcloud-example.gitSpringCloud教程之创建父工程(一)SpringCloud教程之服务注册于发现(二)SpringCloud教程之高可用分布式配置中心(三)SpringCloud教程之服务提供者(四)SpringCloud教程之服务消费者(rest + ribbon + hystrix)(五)SpringCloud教程之服务消费者(fe
2020-05-26 16:18:00
207
原创 SpringCloud教程之断路器监控(Hystrix + Turbine)(八)
SpringCloud断路器监控(Hystrix + Turbine)在父工程目录下创建一个maven项目,在这个maven项目中添加依赖 <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eu
2020-05-26 15:29:36
254
原创 SpringCloud教程之路由网关(zuul)(七)
SpringCloud路由网关Zuul在父工程目录下创建一个maven项目,在这个maven项目中添加依赖 <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</art
2020-05-26 15:25:25
288
原创 SpringCloud教程之服务消费者(feign + hystrix)(六)
SpringCloud服务消费者rest + feign+ hystrix在父工程目录下创建一个maven项目,在这个maven项目中添加依赖 <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix.
2020-05-26 15:09:29
153
原创 SpringCloud教程之服务消费者(rest + ribbon + hystrix)(五)
SpringCloud服务消费者ribbon在父工程目录下创建一个maven项目,在这个maven项目中添加依赖<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</a
2020-05-26 15:02:03
172
原创 SpringCloud教程之服务提供者(四)
SpringCloud服务消费者在父工程目录下创建一个maven项目,在这个maven项目中添加依赖<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> &...
2020-05-22 21:06:12
175
原创 SpringCloud教程之高可用分布式配置中心(三)
SpringCloud分布式配置中心在父工程目录下创建一个maven项目,在这个maven项目中添加依赖<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId>
2020-05-22 20:53:17
157
原创 SpringCloud教程之服务注册于发现(二)
SpringCloud服务与注册在父工程目录下创建一个Eureka的maven项目,在这个maven项目中添加依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2...
2020-04-11 16:10:00
114
原创 SpringCloud教程之创建父工程(一)
创建Maven父工程在pom.xml中引入相关依赖,这里选用的的spring Boot版本为2.0.3.RELEASE,Spring Cloud版本为Finchley<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmln...
2020-04-11 15:55:00
165
原创 VM虚拟机无法上网
安装完VMware和虚拟机后,设置VMware网络设置本机虚拟网卡配置修改Linux配置vi /etc/sysconfig/network-scripts/ifcfg-eth0 --->打开网络配置信息#修改ONBOOT为yesONBOOT=yes 重启服务service network restart尝试ping通网络完成,虚拟机可以正...
2019-11-01 11:00:18
135
原创 FTP工具类
public class FtpUtil { private static Logger logger = Logger.getLogger(FtpUtil.class); private static String host; private static String username; private static String password; ...
2019-10-31 21:49:18
271
原创 Spring MyBatis整合之Mapper代理和批量扫描
目录结构数据库配置文件db.propertiesjdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost/mytestjdbc.username=rootjdbc.password=123456MySQL数据库建表语句CREATE TABLE `user` ( `uid` int(...
2019-04-26 15:48:42
595
原创 javaWeb域对象
javaWeb四大域对象范围从小到大依次为:PageContext、Request、Session、ServletContextPageContext页面域对象生命周期:发起请求时开始,响应结束时销毁作用:可获取其它隐式对象 获取页面域中的数据作用范围:整个页面Request请求域对象生命周期:调用service()方法时,由服务器创建,请求结...
2019-04-03 20:48:22
150
原创 spring常用注解
java内置注解@Override 覆盖父类方法@Deprecated 表示方法已过期,不推荐使用@Suppvisewarning 忽略警告spring注解@Component("指定bean的id") 作用:把对象加入IOC容器,难以归类时使用,不建议使用@Controller一般在控制层使用@Service一般在业务层使用...
2019-04-03 20:18:47
172
原创 java之异常处理
Throwable 类是 Java 语言中所有错误或异常的超类Error 用来指示运行时环境发生的错误--------JVM 内存溢出。一般地,程序不会从错误中恢复。Exception分为两类CheckedException、UncheckedException CheckedException:需要用try...catch...捕获 ...
2019-01-27 22:17:27
163
原创 Map集合基础知识
Map集合是以键值对的方式进行存储,键(key)唯一、值(value)可重复Map常用接口为HashMap、HashTable、TreeMapHashMap:底层结构为哈希(表)结构、线程不同步、键值都可为nullHashTable:底层结构为哈希(表)结构、线程同步、键值不为nullTreeMap:底层结构为二叉树结构、键唯一,值重复...
2019-01-27 22:05:55
185
原创 Collection集合基础知识
Collection接口是最基本的接口,继承了Iterable接口,允许元素重复,可以无序Collection常用接口为List、SetList接口: 元素允许重复,有序 。实现类LinkedList、ArrayList、Vector LinkedList:底层数据结构为链表结构、查询慢、增删快 ...
2019-01-27 21:48:56
245
原创 Linux上安装MySQL二进制
下载命令yum install lrzsz -y 移动到/usr/local目录cd /usr/local 上传Linux版mysql二进制文件rz 解压安装包tar -zxvf 压缩包名 更改mysql文件名mv 文件名 mysql 建组[root@centos local]# groupadd mysql[root...
2019-01-27 21:20:37
451
原创 在Linux上安装Tomcat
下载命令yum install lrzsz -y 上传Linux版的Tomcatrz 将压缩包复制到/usr/localcp 压缩包 /usr/local 移动到/usr/local路径下cd /usr/local 解压 tar -zxvf 压缩包名 将文件改名为tomcatmv /usr/local/文件名 /usr/loc...
2019-01-27 21:12:55
99
原创 Linux上配置java环境变量
下载命令yum install lrzsz -y 上传Linux版本的JDK压缩包rz 将压缩包复制到/usr/localcp 压缩包 /usr/local 移动到/usr/local路径下cd /usr/local 解压tar -zxvf 压缩包名 将文件改名为javamv /usr/local/文件名 /usr/local/ja...
2019-01-27 21:04:04
161
原创 Java多线程的简介
进程:应用程序的一次动态执行过程线程:进程的执行单元,是比进程更小的执行单位多线程:指的是一个进程拥有多个执行单元 多进程是为了提高CPU的使用率多线程是为了提高进程的使用率Java中实现多线程的两种方式:1. 继承Thread类不适合多个线程共享资源2. 实现Runnable接口线程的生命周期:创建,就绪,运行,阻塞,终止现场的控制:1. 休眠线程2. 加入线程3. 礼让线程4. 后台线程5. ...
2018-06-09 14:08:23
294
原创 序列化与反序列化
序列化:将对象转化为字节序列反序列化:将字节序列转化为对象序列化与反序列化的好处:1. 进行远程通信传输对象我们知道数据是以二进制的方式在网络上传输的,而序列化就是将对象转化为字节序列,然后进行传输。2. 实现数据的持久化对象序列化后可以进行永久性存储要想实现序列化与反序列化必须实现Serializable或者Externalizable接口,否则会抛出异常详情请看API:java.io.Obje...
2018-06-03 18:43:23
105
原创 java io流 写入文件
//利用io流,写入文本信息,以下所用的是XXXXWrite方法(原因是纯文本属于字符类型)import java.io.*;//导包import java.util.*;class haha{public static void main(String[] args)throws IOException{File file=new File("D:/My Java/Game.
2017-12-25 11:17:23
2743
原创 java io流,读取文件内容
//读取文本,要考虑字符输入流 XXXXReader//FileReader可以直接封装File//导包 也可以直接导import java.io.*;import java.io.File;import java.io.IOException;import java.io.FileReader;class haha{public static vo
2017-12-18 10:37:24
1678
原创 java中的二维数组
package java1;//导包import java.util.*;class mygame{public static void main(String[] args){// 导用方法shop();}public static void shop(){String[] shopNames = new Strin
2017-12-13 11:00:00
250
原创 利用java中的双层循环求素数
class haha{public static void main(String[] args){int j,k,n; //定义变量System.out.println("0~"+100+"之间的所有的
2017-11-25 00:22:23
2050
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人