摘要: wait和sleep的区别 简说:wait释放🔒,sleep不释放🔒 例子:买票过程中,当程序进行上锁后 sleep控制下的线程,买票是一一完成,当程序休眠后,sleep不会释放🔒,购票者和售票完成后才能继续后面购票操作,顺序执行。 wait控制下的线程,购票是多人同时进行,当程序等待时,wa 阅读全文
posted @ 2022-09-15 21:07 别亦难 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 每一个切面都有一个默认的优先级(默认值为Integer的最大值) @Order(1)通过这个注解设置一个正整数数值,数值越小,优先级越高 @Component @Aspect//将当前组件标识为切面 @Order(1) public class ValidateAspect { //@Before( 阅读全文
posted @ 2022-09-15 16:55 别亦难 阅读(183) 评论(0) 推荐(0) 编辑
摘要: AOP注意事项 切面类和目标类都需要交给IOC容器管理切面类必须通过@Aspect注解标识为一个切面在spring的配置文件中设置<aop:aspectj-autoproxy/>开启基于注解的AOP功能 <!--扫描路径--> <contest:component-scan base-package 阅读全文
posted @ 2022-09-15 16:54 别亦难 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 概念:二十三种设计模式中的一种,属于结构型模式。它的作用就是通过提供一个代理类,让我们在调用目标 方法的时候,不再是直接对目标方法进行调用,而是通过代理类间接调用。让不属于目标方法核心逻辑 的代码从目标方法中剥离出来——解耦。调用目标方法时先调用代理对象的方法,减少对目标方法的调 用和打扰,同时让附 阅读全文
posted @ 2022-09-15 16:54 别亦难 阅读(27) 评论(0) 推荐(0) 编辑
摘要: * @Component:将类标识为普通组件* @Controller:将类标识为控制层组件* @Service:将类标识为业务层组件* @Repository:将类标识为持久层组件(dao层)* (4个的效果都是一样,但为代码可读性,不能乱标) context:exclude-filter:排除扫 阅读全文
posted @ 2022-09-15 16:53 别亦难 阅读(77) 评论(0) 推荐(0) 编辑
摘要: * 自动装配:* 根据指定的策略,在IOC容器中匹配某个bean,* 自动为bean中的类类型的属性或者接口类型的属性赋值* 可以通过bean标签中的autowire属性设置自动装配的策略** 自动装配的策略:* 1.no,default:表示不装配,* 即bean中的属性不会自动匹配某个bean为 阅读全文
posted @ 2022-09-15 16:51 别亦难 阅读(49) 评论(0) 推荐(0) 编辑
摘要: spring框架中 获取bean时 1.NoUniqueBeanDefinitionException:没有一个唯一的bean被发现异常 原因:ioc中有多个类型匹配的bean 2NoSuchBeanDefinitionException::没有足够的bean被发现异常 原因:ioc中没有与之匹配的 阅读全文
posted @ 2022-09-15 16:50 别亦难 阅读(25) 评论(0) 推荐(0) 编辑
摘要: bean生命周期简易版 * 生命周期:1、创建对象(实例化)* 生命周期:2、依赖注入(为属性赋值)* 生命周期:3、初始化(需要通过bean中init-method属性指定初始化方法)* 生命周期:5、销毁(ioc容器关闭时销毁* 需要通过bean的destroy-method属性指定销毁方法) 阅读全文
posted @ 2022-09-15 16:50 别亦难 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 1.通过List标签在property标签中直接进行赋值 <property name="students"> <list> <ref bean="studentOne"></ref> <ref bean="studentTwo"></ref> </list> </property> 2.通过配置一 阅读全文
posted @ 2022-09-15 16:48 别亦难 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 1 ref:引用IOC容器中的某个bean的id <property name="clazz" ref="clazzOne"></property> <bean id="clazzOne" class="com.javasm.spring.pojo.Clazz"> <property name="c 阅读全文
posted @ 2022-09-15 16:48 别亦难 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 字面量赋值:之间调用value赋值就行赋值null:<property name="gender" ><null/></property>特殊符号赋值: 1.<:&lt; >:&gt; 2.CDATA节其中的内容会原样解析(通过输入CD快捷生成) 放在property的子标签value中<prope 阅读全文
posted @ 2022-09-15 16:47 别亦难 阅读(15) 评论(0) 推荐(0) 编辑
摘要: * 获取bean的三种方式:* 1)根据bean的id获取* 2)根据bean的类型获取(最常用)* 注意:* 根据类型获取bean时,* 要求IOC容器中有且只有一个类型匹配的bean* 若没有一个类型匹配的bean,此时抛出异常:NoSuchBeanDefinitionException* 若有 阅读全文
posted @ 2022-09-15 16:47 别亦难 阅读(1435) 评论(0) 推荐(0) 编辑
摘要: <cache>中相关属性 在mapper配置文件中添加的cache标签可以设置一些属性: ①eviction属性:缓存回收策略,默认的是 LRU。 LRU(Least Recently Used) – 最近最少使用的:移除最长时间不被使用的对象。 FIFO(First in First out) – 阅读全文
posted @ 2022-09-15 16:39 别亦难 阅读(120) 评论(0) 推荐(0) 编辑
摘要: MyBatis的二级缓存(实现需要4个条件)* MyBatis的一级缓存是SqlSessionFactory级别的,* 即通过同一个SqlSessionFactory所获取的SqlSession对象* 查询的数据会被缓存,在通过同一个SqlSessionFactory所获取的SqlSession* 阅读全文
posted @ 2022-09-15 16:39 别亦难 阅读(473) 评论(0) 推荐(0) 编辑
摘要: MyBatis的一级缓存:(默认开启)MyBatis的一级缓存是SqlSession级别的即通过同一个SqlSession查询的数据会被缓存于SqlSession的缓存中再次使用同一条SqlSession查询同一条数据会从缓存中获取(增加了查询效率) 使一级缓存失效的4种情况:* 1) 不同的Sql 阅读全文
posted @ 2022-09-15 16:39 别亦难 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 可以记录一段sql,在需要用的地方使用include标签进行引用优点:(可设置*避免了*传入mysql中再次被解析,从而加快执行效率) 设置sql片段(代替*) <sql id="empColumns"> emp_id,emp_name,age,gender,dept_id </sql> 引用sql 阅读全文
posted @ 2022-09-15 16:38 别亦难 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 可分别用数组或集合进行批量添加和删除 collection:设置要循环的数组或集合item:用一个字符串表示数组或集合中的每一个数据separator:设置每次循环的数据之间的分隔符(会在设置的分隔符前后加 空格)open:循环的所有内容以什么开始(仅适用于批量删除)close:循环的所以内容以什么 阅读全文
posted @ 2022-09-15 16:37 别亦难 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 动态SQL1.if 通过test属性中的表达式判断标签中的内容是否有效(是否会拼接到sql中) <select id="getEmpByConditionOne" resultType="Emp"> select * from t_emp where 1=1 <if test="empName!=n 阅读全文
posted @ 2022-09-15 16:37 别亦难 阅读(645) 评论(0) 推荐(0) 编辑
摘要: 处理一对多的映射关系:1.collection标签类似于association的模板模板 <resultMap id="deptAndEmpResultMap" type="Dept"> <id column="dept_id" property="deptId"></id> <result col 阅读全文
posted @ 2022-09-15 16:36 别亦难 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 优点:可以实现延迟加载,减少当前内存的消耗 开启延迟加载延迟加载与两个全局配置有关(放在mybatis-config中的settings(全局配置)里面) 如果只是要得到延迟加载的效果,其实将lazyLoadingEnabled开启就能够做到1.lazyLoadingEnabled(默认关闭) <s 阅读全文
posted @ 2022-09-15 16:36 别亦难 阅读(39) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示