分页查询()。
连接池技术
4.2 Spring IOC
4.2.1 Spring bean
bean注入 注解方式方便易读,引用第三方(连接,连接池,JedisPool等)采用配置文件方式。
bean作用域:Singleton,prototype,request,session,global session

4.3 Spring AOP
基本概念:关注点、切面Aspect、切入点pointcut、连接点joinpoint、通知advice、织入weave、引入introduction。
Spring AOP支持5中类型通知,分别是MethodBeforeAdvice、AfterReturningAdvice、ThrowsAdvice、MethodInterceptor、IntroductionInterceptor(吐槽一下名字太长)
实现方式如下:
基于代理的AOP
基于@Aspect注解驱动的切面。(强烈推荐:可读性好,易维护,易扩展,开发快)
纯POJO切面。
注入式Aspect切面。
4.4 Srping事务
4.4.1 事务传播
概念:某些操作需要保证原子性,如果中间出错,需要事务回滚。如果某个事务回滚,那么调用该事务的方法中的事务的作出如何的动作,就是事务传播。
短时间内写不清楚,建议访问 查看。
事务传播属性:
PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。
PROPAGATION_SUPPORTS--支持当前事务,如果当前没有事务,就以非事务方式执行。
PROPAGATION_MANDATORY--支持当前事务,如果当前没有事务,就抛出异常。
PROPAGATIONREQUIRESNEW--新建事务,如果当前存在事务,把当前事务挂起。
PROPAGATIONNOTSUPPORTED--以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。
PROPAGATION_NEVER--以非事务方式执行,如果当前存在事务,则抛出异常。
事务隔离级别:
ISOLATION_DEFAULT: 这是一个PlatfromTransactionManager默认的隔离级别,使用默认的事务隔离级别.另外四个与JDBC的隔离级别相对应
ISOLATIONREADUNCOMMITTED: 这是事务最低的隔离级别,充许令外一个事务可以看到这个事务未提交的数据。这种隔离级别会产生脏读,不可重复读和幻像读。
ISOLATIONREADCOMMITTED: 保证一个事务修改的数据提交后才能被另外一个事务读取。另外一个事务不能读取该事务未提交的数据
ISOLATIONREPEATABLEREAD: 这种事务隔离级别可以防止脏读,不可重复读。但是可能出现幻像读。它除了保证一个事务不能读取另一个事务未提交的数据外,还保证了避免下面的情况产生(不可重复读)。
ISOLATION_SERIALIZABLE 这是花费最高代价但是最可靠的事务隔离级别。事务被处理为顺序执行。除了防止脏读,不可重复读外,还避免了幻像读。
4.5 其他Spring 技术栈
spring boot 轻量级启动框架
spring security 用户权限管理,根据角色和用户,实现UserDetailsService,进行自定义权限管理。
spring task 代码级定时任务,注解方式,使用起来非常方便。需要注意的是,如果某次定时任务出了异常而没有进行处理,会导致接下来定时任务失效。如果各个任务相互独立,可以简单用try,catch包围(之前就吃过这方面的亏)。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-64566-3.html