Spring JdbcTemplate API
来源:互联网 发布:java web 甘特图 开源 编辑:程序博客网 时间:2024/05/17 01:58
Spring JdbcTemplate API
1.queryForObject() 方法
- 查询方法,返回唯一结果方法
- 两个参数:sql 和 返回值类型
- 用于查询返回唯一结果的情况。
String sql = "select 'Hello World!'" +" as s from dual";String str=jdbcTemplate.queryForObject(sql, String.class);System.out.println(str);
2.update 方法
- 用于执行DML 语句:insert delete update
- 可变参数:第一个参数是SQL语句,第二个开始是SQL语句中替换的参数。
jdbcTemplate.update(sql, 100, 2012,"123","Jerry", "110", "jerry@tom.cn", new Date());
3.查询多个结果
1)返回一行数据,封装为一个对象
- Admin findById(int adminId)
2) 返回多行数据,封装为一个List
- List 中每个元素是一个对象。
- List<Admin> findAll()
> 注意:需要将一行数据映射到一个对象
4.使用 queryForObject() 方法查询对象
1) 写一个RowMapper 对象,用于将一行数据封装为一个对象。
2) 调用queryForObject方法:需要3个参数
- sql 语句
- sql 语句参数
- 结果映射对象 rowmapper
RowMapper 代码实例:
/** * 将当前结果行映射到一个对象 */RowMapper<Admin> rowmapper = new RowMapper<Admin>() {public Admin mapRow(ResultSet rs, int index)throws SQLException {int id=rs.getInt("admin_id");String code=rs.getString("admin_code");String name=rs.getString("name");String pwd = rs.getString("password");String tel=rs.getString("telephone");String email = rs.getString("email");Timestamp date =rs.getTimestamp("enrolldate");return new Admin(id, code, pwd,name, email, tel, date);}};执行 queryForObject方法实例:
String sql = "select * from " +" admin_info_lhh " +" where admin_id = ?";JdbcTemplate jdbcTemplate =getCtx().getBean("jdbcTemplate", JdbcTemplate.class);Admin admin = jdbcTemplate.queryForObject(sql,//SQL new Object[]{100}, //SQL参数rowmapper);//rs 的映射规则System.out.println(admin);
RowMapper 执行原理:
5.使用 query方法查询多个对象
> 用于:findAll() findByName()
1) 写一个RowMapper 对象,用于将一行数据封装为一个对象。
2) 调用query 方法:需要3个参数
- sql 语句
- 结果映射对象 rowmapper
- sql 语句参数
query方法实例:
String sql = "select * from " +" admin_info_lhh " +" where admin_id > ?";JdbcTemplate jdbcTemplate =getCtx().getBean("jdbcTemplate", JdbcTemplate.class);List<Admin> list = jdbcTemplate.query(sql,//SQL rowmapper, //rs 的映射规则new Object[]{0} //SQL参数);System.out.println(list);
6.使用 queryForList查询部分结果
- Spring JDBC 支持查询有限列作为结果
- 此时将 查询结果中的每个行封装为一个Map对象,在map中key是列明,value是列值。
- queryForList方法就是用于查询有限列作为结果,其结果为一个list,每个元素是一个map,每个map是一行。
原理:
使用方式:
String sql = "select admin_id, name" +" from admin_info_lhh ";JdbcTemplate jdbcTemplate =getCtx().getBean("jdbcTemplate",JdbcTemplate.class);List<Map<String, Object>> list=jdbcTemplate.queryForList(sql);for (Map<String, Object> row : list){System.out.println(row); }
- Spring JdbcTemplate API
- spring JdbcTemplate
- spring jdbcTemplate
- Spring JdbcTemplate
- Spring JDBCTemplate
- Spring jdbctemplate
- spring JdbcTemplate
- spring jdbcTemplate
- Spring JDBCTemplate
- spring jdbctemplate
- spring jdbctemplate
- Spring JdbcTemplate
- Spring--JdbcTemplate
- spring jdbcTemplate
- Spring jdbcTemplate
- spring-jdbcTemplate
- Spring JdbcTemplate
- spring jdbcTemplate
- cookie和session的区别
- 周期字符串的最小周期
- java反射机制的应用
- leetcode-189.-Rotate Array
- 单例模式——之饿汉模式
- Spring JdbcTemplate API
- 14. Spring国际化与图片验证码
- 278. First Bad Version
- vi 技巧和诀窍:令人刮目相看的 10 个超酷命令
- 集合运算(标准差)
- linux常用命令
- 自定义View绘制心得(自定义view和自定义viewGroup)
- 为 Vim 编辑器开发定制插件
- 【BZOJ3223】文艺平衡树,Splay反转区间