Spring为传统的jdbc API进行封装,简化持久层操作,虽然jdbcTemplate很灵活,但和ORM框架相比jdbcTemplate功能就显得力不从心了,学习jdbcTemplate是为学习ORM框架做铺垫ORM:对象关系映射 O:对象 R:关系 M:映射
代码简单了不少吧.
使用Spring-jdbcTemplate准备
- 引入jar包(Spring基础jar包、aop、jdbc、tx、MySql驱动)
- 配置dataSource源
JdbcTemplate基本使用
- execute方法
- update与batchUpdate方法
- query与queryXXX方法
- call方法
execute对数据库DDR操作 update操作单个增删改
//APIint update(String sql,Object[] args)int update(String sql,Objcet... args)
批量修改
//APIint[] batchUpdate(String[] sql)int[] batchUpdate(String sql,List)
单个简单查询
T queryForObjcet(String sql,Class type)T queryForObjcet(String sql,Object[] args,Class type)T queryForObjcet(String sql,Class type,Object... arg)
获取多个
//APIList queryForList(String sql,Class type)List queryForList(String sql,Object[] args,Class type)List queryForList(String sql,Class type,Object... arg)
查询复杂对象(封装为Map)获取单个
Map queryForMap(String sql)Map queryForMap(String sql,Objcet[] args)Map queryForMap(String sql,Object... arg)
获取多个
List> queryForList(String sql)List> queryForList(String sql,Obgject[] args)List> queryForList(String sql,Obgject... arg)
查询复杂对象(封装为实体对象)
T queryForObject(String sql,RowMapper mapper)T queryForObject(String sql,object[] args,RowMapper mapper)T queryForObject(String sql,RowMapper mapper,Object... arg)
获取多个
List query(String sql,RowMapper mapper)List query(String sql,Object[] args,RowMapper mapper)List query(String sql,RowMapper mapper,Object... arg)
如果把这些方法弄懂了,再学习mybatis应该没问题了。
相对于mybatis来说,这个非常轻量级。