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; }