记一次iBatis自定义sql的坑
来源:互联网 发布:php商城板块 编辑:程序博客网 时间:2024/05/21 22:46
在进行定时任务调度Job时,在执行到service层时,先是报错,原因是service方法未增加@Transaction注解
@Override
@Transactional
public List<Object[]> modelListBySql(Map<String, Object> paraMap)
{
return null;
}
,再次调试,控制台打印sql语句,但是似乎程序停止了一样没有任何反应,然后在Dao层将封装的查询方法放到dao了添加断点调试。
public List findListBySqlId(String sqlId, Map<?, ?> paraMap)
/* */ {
/* 195 */ List list = null;
/* */ try {
/* 197 */ String hql = getSqlStatementById(sqlId, paraMap);
/* 198 */ if (StringUtils.isNotBlank(hql)) {
/* 199 */ Query query = getSession().createSQLQuery(hql);
/* 200 */ query.setCacheable(SysPropertiesUtil.getBoolean("use_query_cache", false));
/* 201 */ setQueryParameters(query, paraMap);
/* 202 */ list = query.list();
/* */ } else {
/* 204 */ throw new BasalException(BasalException.ERROR, "未在 SqlMap配置文件中配置, ID为" + sqlId +
/* 205 */ "hql 语句");
/* */ }
/* */ } catch (Exception e) {
/* 208 */ throw new BasalException(BasalException.ERROR, e.getCause().getMessage(), e.getCause());
/* */ }
/* 210 */ return list;
/* */ }
代码走到list = query.list();后同样没有任何反应,生成的sql语句在本地执行也没有任何问题。后来将配置文件中的语句整体再包一层来查询问题解决,这可能是sql拼接时,多表关联查询导致,ibatis错误判断语句结尾导致的。
- 记一次iBatis自定义sql的坑
- ibatis一次sql过程
- ibatis 的动态SQL
- ibatis的动态sql
- ibatis的动态sql
- 记一次SQL Server的清理过程
- Ibatis 的 模糊查询 SQL
- 关于ibatis的SQL注入。
- iBatis动态SQL的编写
- Ibatis基本的sql语句
- Ibatis基本的sql语句
- iBatis的SQL注入问题
- 记一次SQL踩坑之旅
- 记一次SQL查询
- 记一次自定义控件引起的内存优化:getCompoundDrawables();
- 使用ibatis自定义排序sql,在java设置排序字段
- 一次SQL分页的优化
- 一次简单的SQL调整
- 错误: 编码GBK的不可映射字符
- 增量dump mysql的shell脚本
- 深度学习优化器 optimizer
- 数据分析系统Hive
- 剑指offer面试题54 表示数字的字符串(java实现)
- 记一次iBatis自定义sql的坑
- Servlet编程
- 微信、支付宝、银联支付遇到的坑 总结
- 卢俊卿设宴欢迎德国前副总理施卡•菲舍尔阁下
- 操作系统、乱码、驱动、键盘失灵、win7
- Android webview 里面发起的微信支付
- SIP for android 即时通讯
- Tempter of the Bone HDU
- 异常收集者 一NoClassDefFoundError