JdbcTemplate目的:
JDBC 模板的设计目的是为不同类型的JDBC操作提供模板方法,每个模板方法都能控制整个过程,并允许覆盖过程中的特定任务通过这种方式,可以在尽可能保留灵活性的情况下,将数据库存取的工作量降到最低。
下面演示jdbc最基本的增删改查。
-
首先创建jdbcTemplate对象,用到了junit包下的功能,可行导包。
private JdbcTemplate jdbcTemplate;@Before
public void getJdbcTemplate() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName(“com.mysql.jdbc.Driver”); //加载驱动程序
dataSource.setUrl(“jdbc:mysql:///a”); //设置连接的数据库
dataSource.setUsername(“root”); //设置用户名
dataSource.setPassword(“1234”); //设置密码
jdbcTemplate = new JdbcTemplate(dataSource); //获得jdbcTemplate对象
}1. 增
@Test
public void add() {
jdbcTemplate.update("insert into sc values (?,?,?);", 110, 2, 3);
}
2. 删
@Test
public void delete() {
jdbcTemplate.update("DELETE FROM sc WHERE sno=?", 110);
3. 改
@Test
public void update() {
jdbcTemplate.update("UPDATE sc SET sno=?,cno=?,crade=? WHERE sno = ?", 111, 112, 113, 110);
}
4. 查
@Test
public void select() {
Sc sc = jdbcTemplate.queryForObject("select * from sc where sno=111", new RowMapper<Sc>() {
public Sc mapRow(ResultSet resultSet, int i) throws SQLException {
int sno = resultSet.getInt("sno");
int cno = resultSet.getInt("cno");
int crade = resultSet.getInt("crade");
return new Sc(sno, cno, crade);
}
});
System.out.println(sc);
}