nuts插入数据库的方式有:
dao.insert();
dao.excute(sql);
等方式。但都不能返回插入后的ID。
下列方法可以实现:
/**t_plan_keyword表ID*/
private static long keywordId = -1;
/**
* 根据keyword插入数据库,并返回插入后库表的ID
* @param dao
* @param keyword 关键字
* @return
*/
public static long insertKeyword(Dao dao,final String keyword) {
dao.run(new ConnCallback() {
@Override
public void invoke(Connection conn) throws Exception {
String sqlString = "INSERT INTO t_plan_keyword(keyword) VALUES( '"+keyword+"' )";
Statement stmt = conn.createStatement();
stmt.executeUpdate(sqlString, Statement.RETURN_GENERATED_KEYS);
ResultSet rs = stmt.getGeneratedKeys();
if( rs.next()) keywordId = rs.getLong(1);
if( rs != null ) rs.close();
if( stmt != null ) stmt.close();
}
});
return keywordId;
}