jdbc insert数据后获取ID

有时insert数据,数据ID为自动生成,需要获取ID。

以下就是获取ID的方法:

public static String insertByID(String sql,IDataBaseBean bean,ArrayList<Object> keyvalueList,ArrayList<Class<?>> classtypeList,SingleDataSource datasource) throws SQLException{
	Connection conn = null;
	try {
		conn = datasource.getConnection();
                //这里设置返回值
		PreparedStatement ps = conn.prepareStatement(sql,new String[]{"ID"});
		setPreparedValue(ps, keyvalueList, classtypeList);//设置preparedStatement值
		ps.executeQuery();
		ResultSet rs = ps.getGeneratedKeys(); 
		if(rs!=null && rs.next())
		{
			return String.valueOf(rs.getInt(1));//返回主键值
		}
	} finally {
		if(conn!=null)
			conn.close();
	}
	return "";
}

猜你喜欢

转载自blackproof.iteye.com/blog/1682432
今日推荐