黑马程序员技术交流社区
标题:
JdbcTemplate的学习
[打印本页]
作者:
coqns
时间:
2012-12-12 09:36
标题:
JdbcTemplate的学习
Spring框架中提供了一个JdbcTemplate工具类,它对JDBC API进行了很好的封装,这个类其实跟我们自己对JDBC进行封装一样,但是代码更加健壮,功能更加强大,且没有太大的性能区别。要想使用这个工具类,需要从spring开发包中导入spring.jar和commons-logging.ar包以及在代码中获取数据源。自己写了个简单的JdbcTemplate入门Demo
获取数据源代码+简单的CURE示例
package com.springmvc.dao;
import java.util.List;
import javax.sql.DataSource;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;
import com.springmvc.pojo.Test;
@Repository
public class TestDao {
//封装数据源和JdbcTemplate
private DataSource dataSource;
private JdbcTemplate jdbcTemplate;
public DataSource getDataSource() {
return dataSource;
}
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
this.jdbcTemplate=new JdbcTemplate(dataSource);
}
public JdbcTemplate getJdbcTemplate() {
return jdbcTemplate;
}
public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
//增
public void addTest(Test t){
String sql="insert into test(userName,passWord,addTime) values (?,?,?)";
Object[] params=new Object[]{
t.getUserName(),
t.getPassWord(),
t.getAddTime()
};
jdbcTemplate.update(sql,params);
}
//删
public void deleteTest(int id){
String sql="delete from test where id=?";
jdbcTemplate.update(sql,id);
}
//改
public void updateTest(Test t){
String sql="update test set userName=?,passWord=? where id=?";
Object[] params=new Object[]{
t.getUserName(),
t.getPassWord(),
t.getId()
};
jdbcTemplate.update(sql,params);
}
//查
public Test queryTest(int id){
String sql="select * from test where id="+id;
Test test=jdbcTemplate.queryForObject(sql,Test.class);
return test;
}
//多条查询
public List queryAll(){
String sql="select id,userName,passWord,date_format(addTime,'%Y年%m月%d日 %H点%i分%s秒') as addTime from test";
List<Test> list=jdbcTemplate.query(sql, BeanPropertyRowMapper.newInstance(Test.class));
return list;
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2