- 博客(20)
- 收藏
- 关注
原创 redis分布式锁
1.生成锁(即是redis的key)时,需要给锁设置一个过期时间,防止出现异常,锁一致存在。2.删除锁时,需要注意两点,a:当前线程加的锁当前删除, b:保证redis的删除操作需要具有原子性延伸问题:上述第一个,如何保证过期时间一定大于当前线程在该业务方法中的操作时间,Redis锁的过期时间小于业务的执行时间该如何续期?@Autowired private StringRedisTemplate redisTemplate; //redis锁名 String lockKey
2021-02-03 10:58:59
296
原创 java8 之 stream流
package com.mozi.stream;public class User { private String name; private int age; public User() { } public User(String name, int age) { this.name = name; this.age = age; } public int getAge() { return age;
2020-10-20 17:18:16
188
原创 spring-boot整合jax-ws发布服务
第一步:导入依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.s
2020-08-13 17:27:44
835
1
原创 jax-ws客户端调用webservice
jax-ws客户端远程调用webservice服务 <!-- 要进行jaxws服务开发 --> <!-- https://mvnrepository.com/artifact/org.apache.cxf/cxf-rt-frontend-jaxws --> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxw
2020-08-13 17:16:00
761
原创 01_mybatis-generator代码生成器
第一步:添加mybatis-generator依赖<dependencies> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.5</version> </dep
2020-06-12 16:28:44
148
原创 字符串转换的工具类
一,.将list集合转换为字符串 @Test public void listToString(){ //将list集合转换为字符串 ArrayList<String> list = new ArrayList<>(); list.add("你好"); list.add("北京"); ...
2019-12-18 22:57:49
333
原创 POI工具
1、什么是POI ?Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。HSSF - 提供读写Microsoft Excel格式档案的功能。(.xls)只能操作以**.xls文件结尾的表格XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。(.xlsx)只能操作以.xl...
2019-12-17 23:56:47
1831
原创 01-讲师管理的增删改查
讲师管理的页面展示首先,当点击路由(router)跳转的的时候,在页面加载之前就要获取到数据库中所有的讲师数据,并按照分页显示和能够按照条件查询,// 讲师管理 { path: '/teacher', component: Layout, redirect: '/teacher/table', name: '讲师管理', meta: { titl...
2019-12-17 23:38:04
1008
原创 MybatisPlus入门
1、创建springboot工程2、引入相关依赖<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId>...
2019-12-14 00:00:37
131
原创 统一资源返回结果集
在后端获取到数据后返回一个统一的样式返回给前端package com.guli.common.entity;import io.swagger.annotations.ApiModel;import io.swagger.annotations.ApiModelProperty;import lombok.Data;import java.util.HashMap;import j...
2019-12-13 23:38:42
1394
原创 Mybatis-Plus代码生成器
mybatis-plus的代码生成器要用代码生成器需要添加以下依赖 <!--mybatis-plus--> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId&g...
2019-12-13 23:04:53
1292
原创 redis常用指令
keys * 查询当前库的所有键exists <key> 判断某个键是否存在type <key> 查看键的类型del <key> 删除某个键expire <key> <key> <second> 为键值设置过期时间,单位秒。ttl <key> 查看还有多少秒过期,-1表示永不过期,-2表示已过...
2019-11-25 20:53:04
135
原创 手动创建线程池
线程池的优势:线程池做的工作只要控制运行的线程数量,处理过程中将任务放入队列。然后在线程创建后启动这些任务,如果创建后启动这些任务,如果线程数量超过了最大数量,超出数量的线程排队等候,等其他线程执行完毕,在从队列中取出任务来执行。他的主要特点为:线程服用,控制最大并发数;管理线程。通常在工作中,我们都是根据实际情况手动创建线程的。说道手动创建线程池时,我们需要用到一个类ThreadPoo...
2019-11-24 21:52:10
425
原创 jvm内存结构
类加载器:负责加载class文件,class文件在文件开头有特定的文件标示,并且ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engine(执行引擎)决定执行引擎:执行引擎负责解释命令,提交操作系统执行本地接口:本地接口的作用是融合不同的编程语言为 Java 所用,它的初衷是融合C/C++程序,Java 诞生的时候是 C/C++横行的时候...
2019-11-21 21:46:29
444
原创 JUC-闭锁countDownLatch
countDownLatchimport java.util.concurrent.CountDownLatch;/** * CountDownLatch:闭锁,在完成某些运算时,只有其他所有线程的运算 * 全部完成,当前运算才继续执行 */public class CountDownLatchTest { public static vo...
2019-11-21 16:01:26
197
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人