笔记-Spring和数据库编程

…银行转账。当从A户像B账户转1000 元后银行系统会从A账户上扣除 1000 元,而在B账户上增加 1000 元,这是正确处理的结果。但如果银行系统出错了怎么办,这里假设发生两种情况:
(1 ) A账户少了 1000 元,但B户却没有多出 1000
( 2) B账户多了 1000 元钱,但 A账户却没有被扣钱。
…客户和银行都不愿意看 上面两种情况 那么有没有措施保证转账顺利进行?这种措施就是数据库事务管理机制。
…Spring 事务管理简化了传统的数据库事务管理流程,提高了开发效率,但在学习事务管理前需要了解 Spring 数据库编程。
…数据库的编程是互联网编程的基础, Spring 为开发者提供了 JDBC 模板模式,那就是它自身的 jdbcTemplate ,它可以简化许多代码的编程,但是在实际的工作中 jdbcTemplate 并不常用,在工作中更多的时候是使用 Hibernate 框架和 MyBatis 框架进行数据库编程。

Spring JDBC的配置
<!-- 注册数据源:Spring内置连接池 -->
    <bean id="myDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <!-- MySQL数据库驱动 -->
    <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"> </property>
        <!-- 连接数据库的URL -->
    <property name="url" value="jdbc:mysql://localhost:3306/text?serverTimezone=UTC"/> 
        <!-- 连接数据库的用户名-->
    <property name="username" value="root"/>
        <!-- 连接数据库的密码-->
    <property name="password" value="root"/>    
    </bean>

 <!-- 配置JDBC模板 -->
    <bean id="MyJdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
    <property name="dataSource" ref="myDataSource"> </property>
    </bean>

在上述示例代码中 ,配置 JDBC模板时需要 dataSource 注入到jdbcTemplat ,而在数据访问层( Dao 类〉需要使用 jdbcTemplate时也需要将 jdbcTemplate 注入到对应 Bean中。

Spring JdbcTemplate的常用方法在这里插入图片描述

JdbcTemplate 与JDBC
…传统的JDBC 即使是执行一条简单的 SQL ,其过程也不简单,先打开数据库连接执行 SQL,然后组装结果 最后关闭数据库资源。但是太多的try… catch … finally …语旬,造成了代码泛滥。执行如 简单的 SQL 就需要这么多的代码,显然让开发者很头疼。如果用得好 JDBC ,其性能是最好的,但是太多的 catch … finally … 语句需要处理,数据库资源的打开、关闭都是定性的,甚至在大部分情况下,只要发生异常数据库的事务就会回滚,否则就提交,二者都是比较固定的模式。在Spring 没有出现前,许多开发者在JDBC 中滥用着 try… catch … finally … 语句,导致代码可读性和可维护性急剧下降 从而引发信任问题。为了解决这些问题, Spring提供了自己的方案,那就是 JdbcTemplete 模板。
1、使用JdbcTemplete不需要书写任何关闭对应数据资源的代码。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值