- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 AtomicBoolean与compareAndSet原理
Atomic是原子性,能够保证在高并发的情况下只有一个线程能够访问这个属性值。compareAndSet(boolean expect, boolean update)。这个方法主要两个作用1、比较AtomicBoolean和expect的值,如果一致,执行方法内的语句。2、把AtomicBoolean的值设成updatepublic class AtomicBeanTest1 implements Runnable { private static AtomicBoolean exists
2021-08-02 22:30:38
727
原创 2021-7-5 声明式事务
1、什么是事务把一组业务当成一个业务来做。要么都成功,要么都失败事务在项目开发中,十分重要,涉及到数据的一致性问题,不可马虎!确保完整性和一致性事物的ACID原则原子性(确保都成功,货都失败)一致性(资源和状态保持一致)隔离性(多个业务操作同一个资源,防止数据损坏)持久性(事务一单提交,无论系统发生什么事情,结果都不会被影响,被持久化到存储器中)<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://
2021-07-05 19:02:32
104
原创 2021-7-4-AOP面向切面编程
面向切面编程,通过预编译的方式,和运行期动态代理实现程序功能的统一维护的一种技术。使用AOP织入,需要导入一个依赖包<dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.9.4</version> </dep
2021-07-03 18:52:38
108
原创 2021-7-3-动态代理
动态代理和静态代理角色一样动态代理和代理类是动态生成的,不是我们直接写好的动态代理分为两大类:基于接口的动态代理、基于类的动态代理基于接口-----JDK动态代理基于类------cglibJava字节码实现:javasistProxy类 (代理):InvocationHandler(调用处理接口):import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.r.
2021-07-03 18:12:40
106
原创 Redis集成SpringBoot
SpringBoot操作数据:spring-data jpa jdbc mongodb redisSpringData也是和SpringBoot 齐名的项目说明:在SpringBoot2.x之后,原来使用的jedis被替换为了lettucejedis:采用直连,多个线程操作的话,是不安全的,如果想要避免不安全的话,使用jedis pool连接池 ! 更像BIO模式lettuce:使用netty,实例可以再多个线程中进行共享,不存在线程不安全的情况!可以减少线程数据了,更像NIO模式源码分析[外链
2021-06-29 10:09:05
606
1
原创 2021-06-05 Swagger
<!--swagger--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency>
2021-06-05 09:41:30
165
原创 邮件发送 2021-6-5
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>```java/*SimpleMailMessage mailMessage = new SimpleMailMessage();
2021-06-05 09:34:42
360
原创 2021-05-26 Druid
com.alibaba druid 1.1.21 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency&...
2021-05-26 13:18:29
167
原创 验证码的设计与运用
@WebServlet("/CheckCodeServlet")public class imageYZM extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//
2021-05-25 23:01:06
94
原创 2021-05-25 分页插件实现分页
当前第 [[${pageInfo.pageNum}]] 页,共 [[${pageInfo.pages}]] 页,一共 [[${pageInfo.total}]] 条记录 首页 上一页 上一页 下一页 下一页 尾页 ==========...
2021-05-25 22:56:54
88
原创 2021-03-23 spring整合Mybatis
spring整合Mybatis步骤:1、导入相关jar包junitmybatismysql数据库spring相关的aop织入mybatis-spring【new】<dependencies> <!--junit--> <dependency> <groupId>junit</groupId> <artifactId>junit</ar
2021-03-24 10:37:39
96
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人