当前位置:首页 > 开发 > 数据库 > 正文

jdbc insert数据后获取ID

发表于: 2012-09-20   作者:blackproof   来源:转载   浏览次数:
摘要: 有时insert数据,数据ID为自动生成,需要获取ID。   以下就是获取ID的方法: public static String insertByID(String sql,IDataBaseBean bean,ArrayList<Object> keyvalueList,ArrayList<Class<?>> classtypeList,Sin

有时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 "";
}

 

 

 

 

 

jdbc insert数据后获取ID

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
经常需要从开发库中提交生成数据的sql到测试库中。之前采用的方式: 1、自己写sql,将sql保存起来,
经常需要从开发库中提交生成数据的sql到测试库中。之前采用的方式: 1、自己写sql,将sql保存起来,
JDBC批量Insert深度优化(没事务) 最近在做一个数据同步分发工具,高并发,高效率,异步非实时是主
最近在做一个数据同步分发工具,高并发,高效率,异步非实时是主要特点。 为此,选择的方案是JDBC、
最近在做一个数据同步分发工具,高并发,高效率,异步非实时是主要特点。 为此,选择的方案是JDBC、
JDBC批量Insert深度优化(有事务) 环境: MySQL 5.1 RedHat Linux AS 5 JavaSE 1.5 DbConnectionBr
环境: MySQL 5.1 RedHat Linux AS 5 JavaSE 1.5 DbConnectionBroker 微型数据库连接池 测试的方案
环境: MySQL 5.1 RedHat Linux AS 5 JavaSE 1.5 DbConnectionBroker 微型数据库连接池 测试的方案
从数据库中批量(step个)拿出Id,然后使用,待消耗完后再批量拿出Id key1 = genKey+"##"+subKey; 三
<tr> <td height="20"> <input type="hidden" class="row_id" value="${row[10]}" /
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号