- 博客(4)
- 收藏
- 关注
原创 volatile使用精讲,终于讲清楚了
volatile使用精讲第一章 volatile关键字概览1.1. 多线程下变量的不可见性1.1.1 概述在多线程并发执行下,多个线程修改共享的成员变量,会出现一个线程修改了共享变量的值后,另一个线程不能直接 看到该线程修改后的变量的最新值。1.1.2 案例演示public class MyThread extends Thread { // 定义成员变量 private boolean flag = false ; public boolean isFlag() { re
2022-05-17 16:04:11
906
原创 Mybatis-Plus 条件构造器
条件构造器说明:以下出现的第一个入参boolean condition表示该条件是否加入最后生成的sql中以下代码块内的多个方法均为从上往下补全个别boolean类型的入参,默认为true以下出现的泛型Param均为Wrapper的子类实例(均具有AbstractWrapper的所有方法)以下方法在入参中出现的R为泛型,在普通wrapper中是String,在LambdaWrapper中是函数(例:Entity::getId,Entity为实体类,getId为字段id的getMethod)以下
2020-08-11 17:02:33
1491
转载 Spring AOP 实现原理
什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功能。日志代码往往水平地散布在所有对象层次中,而与它所散布到的对象的核心功能毫无关系。对于其
2020-08-11 16:58:14
100
转载 spring aop 及实现方式
spring aop 及实现方式一、AOP的基本概念:1、什么是aop:AOP(Aspect Oriented Programming)称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等待,Struts2的拦截器设计就是基于AOP的思想,是个比较经典的例子。在不改变原有的逻辑的基础上,增加一些额外的功能。代理也是这个功能,读写分离也能用aop来做。AOP可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完
2020-08-11 16:43:21
102
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人