SpringAop;JDBCTemplate

可参考的其他的blog:

https://www.cnblogs.com/xuyatao/p/8485851.html ;Spring中aop的实现

https://www.jianshu.com/p/e18fd44964eb  ; aop中的原理

https://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/aop-api.html ; Spring源码位置

 

 

一、AOP(面向切面编程)

  1. 1.切面:将非业务之外的一些功能抽取到一个特定的类中.

   1.2.通知:

    a.前置通知  @Before

  b.后置通知@After

 

c.返回通知 @AfterReturning

 

 d.异常通知@AfterThrowing

 

 

  e.环绕通知  @Around

 

 

1.3.重用切入点表达式

 

      a.定义切入点表达式

 

b.使用切入点表达式

 

本类中:

        非本类

 1.4.切面的优先级

      a.切面的优先级可以使用@Order(int)来指定。

      b.指定的值越小优先级越高

      c.指定Order注解的优先级比不指定Order注解的高.

   1.5.基于注解/xml配置切面

     a.基于注解: 

 b.基于xml

 

2、JdbcTemplate

   2.1.配置JdbcTemplate

 

2.2.常用API方法

 

     a.update(): 完成增删改操作.

     b.batchUpdate():完成批量增删改操作.

     c.queryForObject():

        >.查询单行返回单个对象. 创建一个RowMapper==》BeanPropertyRowMapper来完成数据库表数据与java对象

          的映射

        >.查询返回单个值

     d.query():查询多行返回多个对象的集合.创建一个RowMapper==》BeanPropertyRowMapper来完成数据库表数据

              与java对象的映射

   2.3.在Dao中如何使用JdbcTemplate

     a.在Dao类中定义privateJdbcTemplate jdbcTempalte ; 然后通过@Autowired注入即可. 推荐!!!

     b.继承JdbcDaoSupport类,需要注入DataSource或者是JdbcTemplate,然后通过

       getJdbcTemplate()方法获取到jdbcTemplate对象.  不推荐!!!

 

3、NamedParameterJdbcTemplate

 3.1.配置NamedParameterJdbcTemplate

 

3.2.将java对象通过NamedParameterJdbcTemplate来进行操作:

 

      需要使用SqlParameterSource==>BeanPropertySqlParamterSource。

      需要注意: sql语句中的具名参数一定要与java对象的属性名一致.

 

posted @ 2022-12-07 18:38  diligently  阅读(22)  评论(0)    收藏  举报