JSONObject obj = new JSONObject();
obj.put("code", transactionTemplate.execute(new TransactionCallback<Integer>() {
@Override
public Integer doInTransaction(TransactionStatus status) {
Object spt = status.createSavepoint();
try {
final String sql = "insert into article (title, content, source, keyword, intro,"
+ " type, author, recommend, headline,leaveNumber,clickNumber,userid,"
+ "createtime,updatetime,deploytime) values"
+ " (?, ?, ?, ?, ?, ?, ?, ?,?, ?, ?, ?, ?, ?, ?) ";
KeyHolder keyHolder = new GeneratedKeyHolder();
jdbcTemplate.update(new PreparedStatementCreator() {
@Override
public PreparedStatement createPreparedStatement(Connection conn)
throws SQLException {
PreparedStatement pstat = conn.prepareStatement(sql,PreparedStatement.RETURN_GENERATED_KEYS);
pstat.setString(1, title);
pstat.setString(2, content);
pstat.setString(3, source);
pstat.setString(4, keyword);
pstat.setString(5, intro);
pstat.setString(6, type);
pstat.setString(7, author);
pstat.setString(8, recommend);
pstat.setString(9, headline);
pstat.setString(10, leaveNumber);
pstat.setString(11, clickNumber);
pstat.setString(12, userid);
pstat.setDate(13, new java.sql.Date(new java.util.Date().getTime()));
pstat.setDate(14, new java.sql.Date(new java.util.Date().getTime()));
pstat.setDate(15, new java.sql.Date(new java.util.Date().getTime()));
return pstat;
}
}, keyHolder);
System.out.println("PK: " + keyHolder.getKey().intValue());
/*String sqls = "insert into channel_article (articleid, channelid) values (?, ?)";
jdbcTemplate.update(sqls, articleid, channelid);*/
status.releaseSavepoint(spt);
return 0;
} catch (Exception e) {
status.rollbackToSavepoint(spt);
return -1;
}
}
}));
response.getWriter().write(obj.toString());
jdbcTemplate获得数据库生成的主键值
最新推荐文章于 2023-05-30 15:49:35 发布