Spring学习笔记1——Spring JDBC
2016-01-19 18:14
567 查看
在Spring中使用JDBC大致可以分为如下几个步骤:
一、配置数据源:
1、使用JNDI数据源
2、使用数据源连接池(Apache Commons DBCP)
3、基于JDBC驱动的数据源(Spring框架提供的数据源对象DriverManagerDataSource和SingleConnectionDataSource)
本次我是使用的DriverManagerDataSource数据源对象,它与DBCP提供的BasicDataSource配置基本相同,唯一的不同是后者提供了线程池的功能。
DriverManagerDataSource虽然具有多线程,然而每一次请求连接的时候都会创建一个新的连接,与支持线程池的BasicDataSource相比还是有许多不足,使用时慎重考虑。
数据源配置的xml如下:
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/syh" />
<property name="username" value="root" />
<property name="password" value="password" />
</bean>
二、根据数据库存储的数据创建相应的bean(实现setter和getter)
三、实现DAO(Data Access Object,数据访问对象)
1、数据访问对象中必须包含一个JdbcTemplate(此外还有具有更多功能的NamedParameterJdbcTemplate)对象,该对象支持数据源的访问功能和简单的索引参数查询,NamedParameterJdbcTemplate还支持将查询值以命名参数的形式绑定到SQL中。注:DAO类需要实现JdbcTemplate的setter方法用以注入。
JdbcTemplate配置的xml如下:
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg ref="dataSource" />
</bean>2、将JdbcTemplate注入
<bean id="RentInfoDAO" class="com.syh.SpringDemo.RentInfoDAO">
<property name="jdbcTemplate" ref="jdbcTemplate"/>
</bean>四:通过DAO访问数据
一、配置数据源:
1、使用JNDI数据源
2、使用数据源连接池(Apache Commons DBCP)
3、基于JDBC驱动的数据源(Spring框架提供的数据源对象DriverManagerDataSource和SingleConnectionDataSource)
本次我是使用的DriverManagerDataSource数据源对象,它与DBCP提供的BasicDataSource配置基本相同,唯一的不同是后者提供了线程池的功能。
DriverManagerDataSource虽然具有多线程,然而每一次请求连接的时候都会创建一个新的连接,与支持线程池的BasicDataSource相比还是有许多不足,使用时慎重考虑。
数据源配置的xml如下:
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/syh" />
<property name="username" value="root" />
<property name="password" value="password" />
</bean>
二、根据数据库存储的数据创建相应的bean(实现setter和getter)
三、实现DAO(Data Access Object,数据访问对象)
1、数据访问对象中必须包含一个JdbcTemplate(此外还有具有更多功能的NamedParameterJdbcTemplate)对象,该对象支持数据源的访问功能和简单的索引参数查询,NamedParameterJdbcTemplate还支持将查询值以命名参数的形式绑定到SQL中。注:DAO类需要实现JdbcTemplate的setter方法用以注入。
JdbcTemplate配置的xml如下:
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg ref="dataSource" />
</bean>2、将JdbcTemplate注入
<bean id="RentInfoDAO" class="com.syh.SpringDemo.RentInfoDAO">
<property name="jdbcTemplate" ref="jdbcTemplate"/>
</bean>四:通过DAO访问数据
package com.syh.SpringDemo; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Map; import org.springframework.jdbc.core.JdbcTemplate; import Spiders.RentInfo; public class RentInfoDAO { private JdbcTemplate jdbcTemplate; private final String SQL_SELECT_RENTINFO = "SELECT title,url FROM rentinfo";//查询所有行 public void setJdbcTemplate(JdbcTemplate jdbcTemplate){ this.jdbcTemplate = jdbcTemplate; } public JdbcTemplate geJdbcTemplate(){ return this.jdbcTemplate; } public List<RentInfo> getRentInfo(){ List<RentInfo> rentInfos = new ArrayList<>(); List<Map<String, Object>> list = jdbcTemplate.queryForList(this.SQL_SELECT_RENTINFO); Iterator<Map<String, Object>> iterator = list.iterator(); while (iterator.hasNext()) { Map<String, Object> m = iterator.next(); String title = m.get("title").toString(); String url = m.get("url").toString(); RentInfo r = new RentInfo(); r.setTitle(title); r.setUrl(url); rentInfos.add(r); } return rentInfos; } }
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树