首页 > 数据库技术 > 详细

jdbc 占位符插入null值 NullPointerException

时间:2019-06-14 19:29:40      阅读:143      评论:0      收藏:0      [点我收藏+]

如果变量flag 为空 ,那么executeUpdate 后面的参数 bookCollect.getFlag() 就会被executeUpdate()方法忽略掉,程序会报错。

String addSql = "INSERT INTO BOOK_COLLECT(ADD_DATE,STATUS,DEPARTID,FLAG) VALUES(?,?,?,?)";
session.executeUpdate(addSql.toString(), new Object[]{bookCollect.getAddDate(), bookCollect.getStatus(), bookCollect.getFlag(), bookCollect.getDepartId()});

 解决方案:根据参数是否为空进行不同的sql拼接,然后再执行sql。感觉此处jdbc没有jpa智能。

addSql.append("INSERT INTO BOOK_COLLECT(DOCLIB_ID,DOC_ID,ADD_USER_NAME,ADD_DATE,STATUS,FLAG");
if (null != list.get(0).getDepartId()) {
addSql.append(",DEPARTID)").append(" VALUES(?,?,?,?,?,?,?)");

jdbc 占位符插入null值 NullPointerException

原文:https://www.cnblogs.com/Andrew520/p/11024988.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!