FreyjaJdbcTemplate特性三:JdbcTemplate

这个算不上什么特性。每个用过spring jdbcTemplate的估计都会写一些封装类。

 

老实说在使用过程中,吃了点亏,浪费了一些时间。

 

1、RowMapper

2、update

 

RowMapper很好很强大,Freyja里面使用了3个实现类

 

BeanPropertyRowMapper - 用来处理类似于select * from User 的结果集

MapRowMapper - 用来处理类似于 select name,age from User  的结果集 Map<String,Object>结构返回

ObjectRowMapper - 同MapRowMapper 不过返回是以List<Object[]>结构返回如果只有一个返回值则为Object 泛型

SimpleRowMapper - 返回单个泛型(我突然发现这个好像和BeanPropertyRowMapper 雷同。)

 

jdbcTemplate的update封装很好很强大

但是如果参数有null则会报错。也就是说

update(String sql, Object... args)这个方法完全属于坑爹方法根本就不应该存在。

而应该使用

update(String sql, Object[] args, int[] argTypes)除了set args之外你需要指定类型:argType

 

重复一遍,你根本就不应该认识上面一个方法,因为你根本就不能确定args数组是否有null

 

args应该为可序列化的,取出来也是序列化对象。如果你把一个Integer[][] arr; 存入blob,那么你取得时候需要处理下,spring jdbc会按照blob格式取出来给你,当然你会获得一个byte[]然后转型之后你会获得Integer[] 这个完全错乱的数值,处理办法也好办。例如:deserialize()然后转型就行了。

 

blob字段还没有试过。

 

FreyjaJdbcTemplate特性一:HQL 

 

FreyjaJdbcTemplate特性二:cache

 

FreyjaJdbcTemplate特性三:JdbcTemplate 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值