Spring--JdbcTemplate 谁践踏了优雅 2022-05-27 23:38 239阅读 0赞 ## 1.JdbcTemplate简介 ## 为了使 JDBC 更加易于使用, Spring 在 JDBC API 上定义了一个抽象层, 以此建立一个 JDBC 存取框架. 作为 Spring JDBC 框架的核心, JDBC 模板的设计目的是为不同类型的 JDBC 操作提供模板方法. 每个模板方法都能控制整个过程, 并允许覆盖过程中的特定任务. 通过这种方式, 可以在尽可能保留灵活性的情况下, 将数据库存取的工作量降到最低. ## 2.JdbcTemplate类的常用操作 ## 1. update();该方法为重载方法,用来执行单个非查询语句; 2. query();该方法也是重载方法,根据参数的不同,执行不同的查询语句; 3. batchUpdate();批量更新(非查询语句sql) 4. queryForObject();执行单个查询 ## 3.使用JdbcTemplate的步骤 ## * 由Spring创建数据源(DataSource)即数据库连接池; <!-- 配置dataSource(数据库连接池c3p0) --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/具体数据库"></property> <property name="user" value="用户名"></property> <property name="password" value="密码"></property> <property name="driverClass" value="com.mysql.jdbc.Driver"></property> </bean> * 由Spring创建JdbcTemplate; <!-- jdbc模版 --> <bean id="jdbc" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"></property> </bean> * 自定义DAO,使用@Autowired注解自动注入JdbcTemplate @Autowired JdbcTemplate jdbc; ## 4.Spring的事务 ## 1. 编程式事务:需要手动编写事务相关的代码(复杂) 2. 声明式事务:使用@Transactional注解控制事务(简单) ## 5.创建声明式事务的步骤 ## 1: 创建事务管理器 <!-- 创建事务管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"></property> </bean> 2: 定义@Transactional注解驱动(需要加入Spring的tx命名空间) <!-- 配置事务Annotation驱动 --> <tx:annotation-driven/> 3: 给service方法加入注解,控制事务 @Transactional public void buy(int isbn,int id,Integer num) throws Exception{ //获取图书价格 int price=bookDao.getPriceByIsbn(isbn); //修改库存 bookDao.updateBookStock(num,isbn); //修改余额 aDao.updateAccountBalance(price*num, id); //先执行操作,再进行判断可以防止幻读 int stock=bookDao.getStockByIsbn(isbn); if(stock<0){ throw new Exception("----------库存不足-----------"); } int balance=aDao.getAccount(id); if(balance<0){ throw new Exception("----------余额不足-----------"); } }
相关 JAVAEE框架整合技术之spring03-SpringJdbcTemplate模板技术和事务处理 SpringJdbcTemplate > Spring的JdbcTemplate是一个对JDBC的模板封装,它提供了一套JDBC的模板,能让我们写持久层代码时减少多余的代 - 日理万妓/ 2023年09月29日 17:18/ 0 赞/ 24 阅读
相关 Spring 温习笔记(五)springjdbcTemplate基本使用 什么是springjdbcTemplate springjdbcTemplate 是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装。通常我 落日映苍穹つ/ 2022年11月19日 07:55/ 0 赞/ 203 阅读
相关 SpringJDBCTemplate 配置依赖: <!--数据库--> <dependency> <groupId>mysql</groupId> <artifac 向右看齐/ 2022年05月23日 06:42/ 0 赞/ 219 阅读
相关 使用springjdbctemplate模板链接mysql数据库8.0遇到的坑 jar包不同连接方式不同 mysql-connector-java-8.0.11.jar com.springsource.com.mchange.v2.c3p0-0.9. 忘是亡心i/ 2022年03月17日 02:46/ 0 赞/ 259 阅读
相关 SpringJdbcTemplate&Jdbc整合&SpringMVC 文章目录 JdbcTemplate JdbcTemplate+Spring+Servlet SpringMVC JdbcTemplate (1) ╰半橙微兮°/ 2021年09月25日 11:52/ 0 赞/ 421 阅读
还没有评论,来说两句吧...