DAO模板类【了解】
来源:互联网 发布:桌面规划软件 编辑:程序博客网 时间:2024/06/05 11:29
1.Spring提供有DAO支持模板类,功能类似于Apache DBUtils
JdbcTemplate
HibernateTemplate
SqlMapClientTemplate(过时)
JpaTemplate (过时)
2.基础实例
A.导入jar包
核心包(4个)
日志(2个)
jdbc模板支持(1个)
spring-jdbc-3.2.0.RELEASE.jar
模板相关事务处理包(1个)
spring-tx-3.2.0.RELEASE.jar
数据库连接驱动包
mysql-jdbc.jar
B.JDBC模板类使用(编程式)
//创建Spring对应的数据源对象
//数据源描述的是一系列的相关描述信息的封装对象
DriverManagerDataSource dataSource = new DriverManagerDataSource(); //为数据源对象提供数据库连接的相关数据(4个)
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/springdb");
dataSource.setUsername("root");
dataSource.setPassword("root");
//创建JDBC模板类,需要使用数据源对象
JdbcTemplate template = new JdbcTemplate(dataSource);
//执行添加语句
template.execute("insert into tbl_user values(null,'jock',34)");
template.execute("update tbl_user set userName='jockme' where uuid=1");
3.使用Spring形式开发JDBCTemplate
A.在DAO中声明JDBCTemplate变量
B.提供setter注入
C.将DAO声明为Bean,为其注入JDBCTemplate
<!-- UserDao -->
<bean id="userDao" class="cn.itcast.jdbc.UserDAO">
<property name="jdbcTemplate" ref="jdbcTemplate"/>
</bean>
D.声明JDBCTemplate的Bean,为其注入DataSource
<!-- JDBCTemplate -->
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"/>
</bean>
E.声明DataSource的Bean,为其注入DataSource需要使用的数据库连接参数
</bean> 方式二:推荐使用 <context:property-placeholder location="classpath:jdbc.properties"/> 注意:方式二可以使用通配符格式classpath:*.properties格式,一次加载所有的配置文件,但是,该方式要加载所有的系统配置,因此属性文件中的属性名不要与系统属性冲突。userName特别注意 C.将固定的参数改为引用属性文件中的参数 格式:${属性名} ${userName} ${url} ${password} ${jdbc_user}
- DAO模板类【了解】
- ssh中dao自定义的模板类
- web中的dao模板
- java DAO模板
- ibatis dao模板
- 典型DAO的模板
- dao注入hibernate模板
- JDBC了解(2)-DAO
- JPA 应用技巧 1:实体类和实体 DAO 模板
- ssh中dao继承HibernateDaoSupport类实现模板操作
- JDBC-模板模式优化DAO
- DAO类
- 使用模板模式简化DAO操作Hibernate
- 使用模板模式简化DAO操作Hibernate
- 用模板模式简化DAO操作Hibernate
- 用模板模式简化DAO操作Hibernate
- 使用模板模式简化DAO操作Hibernate
- 使用模板模式简化DAO操作Hibernate
- CentOS 7下的VirtualEnv的安装配置简明教程
- dtype函数——numpy模块
- css3实现箭头
- C语言学习——字符串
- 文件夹已经存在的情况下调用mkdir函数
- DAO模板类【了解】
- swing的高级布局
- 通用的 cmakeLists.txt 文件
- OpenCV中对Mat里面depth,dims,channels,step,data,elemSize和数据地址计算的理解
- PAT1017. Queueing at Bank (25)
- int转String的三种方法性能分析
- Download ERS-1 precise (DGM-E04) orbits
- npm 安装错误及处理方法
- Handler源码解析基于ThreadLocal来进行分析