• JDBCTemplate


    一、使用JDBCTemplate的必要性

      1、Spring提供的一个操作数据库的技术JdbcTemplate,是对Jdbc的封装。语法风格非常接近DBUtils。

        JdbcTemplate可以直接操作数据库,加快效率,而且学这个JdbcTemplate也是为声明式事务做准备,毕竟要对数据库中的数据进行操纵!

        JdbcTemplate中并没有提供一级缓存,以及类与类之间的关联关系!就像是spring提供的一个DBUtils。

        Spring对数据库的操作使用JdbcTemplate来封装JDBC,结合Spring的注入特性可以很方便的实现对数据库的访问操作。使用JdbcTemplate可以像JDBC一样来编写数据库的操作代码

      2.为啥要使用Jdbc_template进行开发呢?

        Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中。

        Spring提供的JdbcTemplate对jdbc做了封装,大大简化了数据库的操作。找到Spring JdbcTemplate源码,可以看到如下方法:

        Connection con = DataSourceUtils.getConnection(getDataSource());

        如果直接使用JDBC的话,需要我们加载数据库驱动、创建连接、释放连接、异常处理等一系列的动作;繁琐且代码看起来不直观。

        此外,Spring提供的JdbcTempate能直接数据对象映射成实体类,不再需要获取ResultSet去获取值/赋值等操作,提高开发效率;

        如下:return (User) jdbcTemplate.queryForObject("select * from tb_test1 where id = 100", User.class)

    二、配置环境

      ①导入jar包

        [1]IOC容器需要的jar包

          commons-logging-1.1.3.jar
          spring-aop-4.0.0.RELEASE.jar //注解会使用到的包
          spring-beans-4.0.0.RELEASE.jar
          spring-context-4.0.0.RELEASE.jar
          spring-core-4.0.0.RELEASE.jar
          spring-expression-4.0.0.RELEASE.jar

        [2]MySQL驱动、C3P0jar包

          c3p0-0.9.1.2.jar
          mysql-connector-java-5.1.37-bin.jar

        [3]JdbcTemplate需要的jar包

          spring-jdbc-4.0.0.RELEASE.jar
          spring-orm-4.0.0.RELEASE.jar
          spring-tx-4.0.0.RELEASE.jar

      ②在IOC容器中配置数据源

        <!-- 加载properties文件中 信息 -->

          <context:property-placeholder location="classpath:jdbc.properties"/>

        <!-- 配置数据源 -->

          <bean id="comboPooledDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
            <property name="user" value="${jdbc.user}"></property>
            <property name="password" value="${jdbc.passowrd}"></property>
            <property name="jdbcUrl" value="${jdbc.url}"></property>
            <property name="driverClass" value="${jdbc.driver}"></property>
          </bean>

      其中jdbc.properties文件内容:

          jdbc.user=root
          jdbc.passowrd=123456
          jdbc.url=jdbc:mysql://localhost:3306/test
          jdbc.driver=com.mysql.jdbc.Driver

      ③在IOC容器中配置JdbcTemplate对象的bean,并将数据源对象装配到JdbcTemplate对象中.

        参照文档:实验_JDBCTemplate.txt逐一进行试验!

        当然为了进行试验,我们首先需要导入实验 JDBCTemplate.sql语句,然后才能试验!

        将数据库连接信息改为:jdbc.url=jdbc:mysql://localhost:3306/jdbc_template

        <!-- 配置JdbcTemplate对应的bean, 并装配dataSource数据源属性-->

        <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
          <property name="dataSource" ref="comboPooledDataSource"></property>
        </bean>

      ④JdbcTemplate对象的使用

        在类中使用数据库连接时,只需要向类中添加Template类型的属性,并配置注解:自动注入

        就可以在该类中使用template操作数据库,通过template.XXX()方法

        使用完成后不需要关闭数据库连接,Jdbc Template会自动将连接放入数据库连接池

  • 相关阅读:
    api接口出现Provisional headers are shown,
    yii消息提示扩展
    php中普通类 接口类 抽象类 浅谈
    读韭菜的自我修养
    读李笑来的《把时间当作朋友》
    Spring整合Struts2框架的第二种方式(Action由Spring框架来创建)(推荐大家来使用的)
    Spring整合Struts2框架的第一种方式(Action由Struts2框架来创建)。在我的上一篇博文中介绍的通过web工厂的方式获取servcie的方法因为太麻烦,所以开发的时候不会使用。
    Spring框架整合Struts2框架的传统方法
    ecplice中代码使用快捷键无法格式化,使用其他方法将代码格式化的步骤
    SSH框架整合jar包时的注意事项
  • 原文地址:https://www.cnblogs.com/java-zmj/p/8023596.html
Copyright © 2020-2023  润新知