![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 70
yanyuan1024
纸上得来终觉浅,绝知此事要躬行。
https://gitee.com/yanyuan
展开
-
Lombok @Accessors用法
Accessors注释用于配置lombok如何生成和查找getter和setter。@Accessors有三个选项: fluent 为true时, 省略set/get方法关键字, 并且set方法返回对象本身。chain 为true时,set方法返回对象本身。prefix 为true时,省略配置的属性名前缀。原创 2020-11-26 20:17:08 · 571 阅读 · 0 评论 -
Mybaits批量插入且返回主键ID
Mybaits批量插入MyBatis从3.3.1版本开始支持批量添加记录并返回各记录主键字段值。只需配置useGeneratedKeys,keyProperty。useGeneratedKeys设置useGeneratedKeys参数值为true,在执行添加记录之后可以获取到数据库自动生成的主键ID。keyProperty指定主键名使用说明Mapper@Mapperpublic interface UserMapper { Integer batchInsert(List<Us原创 2020-11-18 21:21:47 · 668 阅读 · 0 评论 -
解读@SpringBootApplication注解
概述许多使用Spring Boot的开发者总是有带有@Configuration, @EnableAutoConfiguration 和 @ComponentScan 注解的主类。由于这些注解很频繁地被用在一起,Spring Boot提供了一个方便的注解@SpringBootApplication 来替代。@SpringBootApplication源码:@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documente原创 2020-08-20 14:41:06 · 134 阅读 · 0 评论 -
Spring Boot单元测试:GroboUtils多线程测试
简介Junit本身是不支持是多线程测试的,因为Junit的底层实现上,是用System.exit退出用例执行的。JVM终止了在测试线程启动的其他线程自然也无法执行。GroboUtils旨在扩展Java测试的可能性。它包含许多子项目,通过Java进行不同方面的测试。GroboUtils中包含的流行工具包括多线程测试、层次单元测试和代码覆盖工具。这个工具集是在MIT许可下发布的。官网地址:groboutils使用方法1. 导入POM依赖 <dependency> <g原创 2020-08-03 10:21:39 · 1666 阅读 · 0 评论 -
设计模式总结
设计模式六大原则:单一职责原则,里氏替换原则,依赖倒置原则,接口隔离原则,迪米特法则,开闭原则。 三大类别:建造型,结构型,行为型。原创 2020-07-14 18:57:27 · 200 阅读 · 0 评论 -
设计模式之模板方法模式(二十三)
模板方法模式在父类中提取了公共的部分代码,便于代码复用。部分方法是由子类实现的,因此子类可以通过扩展方式增加相应的功能,符合开闭原则。原创 2020-07-08 21:02:07 · 176 阅读 · 0 评论 -
设计模式之策略模式(二十二)
策略模式在主要解决有多种算法的情况下, 动态选择算法,避免 if, else 所带来的复杂和难以维护。原创 2020-07-08 13:13:25 · 196 阅读 · 0 评论 -
设计模式之状态模式(二十一)
使用状态模式替换多重if,嵌套if原创 2020-07-07 13:28:04 · 207 阅读 · 0 评论 -
设计模式之观察者模式(二十)
使用观察者模式实现订阅天气。原创 2020-07-06 20:58:11 · 127 阅读 · 0 评论 -
JAVA动态加载类及反射实现
//操作系统接口public interface OSAble { void work();}//windows系统实现操作系统接口public class Windows implements OSAble { @Override public void work() { System.out.println("WindowsXP workin...原创 2019-11-27 21:53:04 · 400 阅读 · 0 评论 -
Linux部署Java web项目
准备工作ftp 推荐使用 Filezilla工具ssh 推荐使用putty1.查看系统版本sudo uname --mi686 //表示是32位x86_64 // 表示是64位2.安装JDK=(新手推荐使用yum命令一键安装)=安装1.8.0的所有文件yum install java-1.8.0-openjdk* -y使用命令检查是否安装成功java -ver...原创 2019-07-25 22:14:55 · 72 阅读 · 0 评论 -
Eureka高并发服务发现原理
在一个超大型的系统中,有100K个Client,也就是10万个服务,这么多个服务定时向Eureka注册中心请求发现服务时,应该怎样处理?首先,我们可以让多个Eureka相互注册构成集群,多个服务向集群内的不同Eureka定时请求发现服务,不同的Eureka之间会相互同步服务地址数据。Eureka的部署方式如下图所示:一、 Eureka单点二、两台Eureka相互注册三、 三台Eure...原创 2019-07-25 21:43:18 · 1292 阅读 · 1 评论 -
Redis实现代码加锁实现均速排队任务
String uuid = UUID.randomUUID().toString(); long startTime = System.currentTimeMillis(); long endTime = 0L; //以下do-while块为加锁标准范例 do{ //加锁,设置的uuid在解锁时有用,设置的最长时限能防止死锁 Str...原创 2019-07-25 21:37:59 · 1036 阅读 · 0 评论 -
IDEA windows 常用快捷键
Ctrl + Alt + L对代码重新排列格式 对imports进行优化 Ctrl + Alt + OCtrl+N 查找类Ctrl+Shift+N 查找文件Alt+Insert 生成代码 (如get,set方法,构造函数等)Shift+F6 重构-重命名Ctrl+Shift+先上键Ctrl+X 删除行Ctrl+D 复制行HOME/END 跳转到行头行尾 定位文件 ctr+G ...原创 2018-06-09 09:42:56 · 127 阅读 · 0 评论 -
java中continue,break,return区别。(学习笔记)
continue:跳出本次循环。void repeat(){System.out.println("method start");for(int i = 0; i if(i == 1){continue;}System.out.println(i);}System.out.println("method end");}repeat原创 2015-04-02 15:52:27 · 377 阅读 · 0 评论