SpringJDBC的使用主要是spring对JDBC提供一些必要的支持,使JDBC的代码更加简洁、高效。spring对jdbc的支持主要是通过JDBCTemplate类来实现。
使用JDBC操作数据库时需要进行以下步骤:打开数据库、创建statement语句、执行sql语句、返回执行结果等等。JDBCTemplate的作用是用于完成资源的创建以及释放工作,从而简化了对JDBC的使用。它还可以帮助我们避免一些常见的错误,比如忘记关闭数据库连接。JdbcTemplate将完成JDBC核心处理流程,比如SQL语句的创建、执行,而把SQL语句的生成以及查询结果的提取工作留给我们的应用代码。它可以完成SQL查询、更新以及调用存储过程,避免了数据库操作过程中的低水平重复劳动的问题,简化数据库开发。
JDBCTemplate常用方法
execute方法方法执行 SQL 语句
query方法,用于执行查询相关语句;
update方法
在Dao中使用JDBCTemplate
spring中配置JDBCTemplate注入DAO;
使用JDBC操作数据库时需要进行以下步骤:打开数据库、创建statement语句、执行sql语句、返回执行结果等等。JDBCTemplate的作用是用于完成资源的创建以及释放工作,从而简化了对JDBC的使用。它还可以帮助我们避免一些常见的错误,比如忘记关闭数据库连接。JdbcTemplate将完成JDBC核心处理流程,比如SQL语句的创建、执行,而把SQL语句的生成以及查询结果的提取工作留给我们的应用代码。它可以完成SQL查询、更新以及调用存储过程,避免了数据库操作过程中的低水平重复劳动的问题,简化数据库开发。
JDBCTemplate常用方法
execute方法方法执行 SQL 语句
ApplicationContext context = new ClassPathXmlApplicationContext("JDBCTemplateBean.xml");
JdbcTemplate jdbcTemplate =(JdbcTemplate)context.getBean("jdbcTemplate");
String sql ="create table_user(user_id int primary key,user_name varchar(60))";
jdbcTempalte.execute(sql);
query方法,用于执行查询相关语句;
Public void query(){
String name=(String)jdbcTemplate.queryForObject(
"selcet name from user where id=?",
new Object[]{id},
Java.lang.String.class);
}
update方法
public void testResultSet() {
jdbcTemplate.update("insert into test(name) values('name')");
String listSql = "select * from test";
List result = jdbcTemplate.query(listSql, new RowMapper<Map>() {
@Override
public Map mapRow(ResultSet rs, int rowNum) throws SQLException {
Map row = new HashMap();
row.put(rs.getInt("id"), rs.getString("name"));
return row;
}});
Assert.assertEquals(1, result.size());
jdbcTemplate.update("delete from test where name='name5'");
}
在Dao中使用JDBCTemplate
@Resposity
public class ViewDao{
private JdbcTempalte jdbcTemplate
public void initDb{context
String sql ="create table_user(user_id int primary key,user_name varchar(60))";
jdbcTempalte.execute(sql);
}
}
spring中配置JDBCTemplate注入DAO;
<pre name="code" class="html"><!--配置数据源——>
<context :property-placeholder location ="classpath:jdbc.properties" />
<bean id="dataSource" class="org.apache.commons.dbcp.BaseDataSource"
destory_method="close"
p:driverClassName="${jdbc.driverClassName}"
p:url= "${jdbc.url}"
p:username= "${jdbc.username}"
p:password= "${jdbc.password}" />
<bean id="jdbcTemplate"
class="org.springframework.jdbc.core.JDBCTemplate"
p:datasource-ref="dataSource"/>