public class JDBCTest { private ApplicationContext ctx = null; private JdbcTemplate jdbcTemplate; private CustomersDao customersDao; { ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); jdbcTemplate = (JdbcTemplate) ctx.getBean("jdbcTemplate"); customersDao = ctx.getBean(CustomersDao.class); namedParameterJdbcTemplate = ctx .getBean(NamedParameterJdbcTemplate.class); } // 查询表中的个数 @Test public void testQueryForObject2() { String sql = "SELECT count(id) FROM customers"; long count = jdbcTemplate.queryForObject(sql, Long.class); System.out.println(count); } // 查询实体类的集合:注意调用的是query,而不是queryList方法 @Test public void tstQueryForList() { String sql = "SELECT id,name,address,phone FROM customers WHERE id>?"; RowMapper<Customers> rowMapper = new BeanPropertyRowMapper<>( Customers.class); List<Customers> customers = jdbcTemplate.query(sql, rowMapper, 1); System.out.println(customers); } // 从数据表获取一条记录,实际得到一个对象 // 注意不是条用queryForObject(String sql, Class<Customer> requiredType, Object... // args) // 需要使用.queryForObject(String sql, RowMapper<Customer> rowMapper, Object... // args) // 1.其中的rowMapper指定如何映射结果如何去映射结果的行,常用的实现类为BeanPropertyRowMapper // 2.使用sql中的列名完成列和类的属性名的映射 // 3.不支持级联属性,jdbcTemplate到底是JDBC的小工具 @Test public void testQueryForObject() { String sql = "SELECT id,name,address,phone FROM customers WHERE id=?"; RowMapper<Customers> rowMapper = new BeanPropertyRowMapper<>( Customers.class); Customers customer = jdbcTemplate.queryForObject(sql, rowMapper, 3); System.out.println("customer" + customer); } // 执行批量更新:批量的insert update delete (错误) @Test public void testbatchUpdate() { String sql = "INSERT INTO customers(id,name,address,phone) VALUES (?,?,?,?)"; List<Object[]> batchArgs = new ArrayList<>(); batchArgs.add(new Object[] { 1, "AA", "aa", "123164" }); batchArgs.add(new Object[] { 2, "BB", "bb", "231645" }); batchArgs.add(new Object[] { 3, "CC", "cc", "31646" }); jdbcTemplate.batchUpdate(sql, batchArgs); } // 执行INSERT UPDATE DELETE @Test public void testUpdate() { String sql = "UPDATE customers SET name=? WHERE id=?"; jdbcTemplate.update(sql, "Kangkang1", 1); } }
|
|
来自: 魏祖清 > 《Spring数据库操作》