现在的位置: 首页 > 综合 > 正文

nutz执行插入操作后,返回插入后的Id

2013年10月06日 ⁄ 综合 ⁄ 共 644字 ⁄ 字号 评论关闭

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

抱歉!评论已关闭.