java.sql.Connection接口提供了三个在执行插入语句后可取的自动生成的主键的方法。
2 |
PreparedStatement prepareStatement(String sql, int autoGeneratedKeys) throws SQLException;
|
3 |
其中autoGenerateKeys 有两个可选值:Statement.RETURN_GENERATED_KEYS、Statement.NO_GENERATED_KEYS |
5 |
PreparedStatement prepareStatement(String sql, int [] columnIndexes) throws SQLException;
|
7 |
PreparedStatement prepareStatement(String sql, String[] columnNames) throws SQLEception;
|
02 |
public int [] insert(List<Person> persons) throws SQLException{
|
03 |
String sql = "insert into test_table(name) values(?)" ;
|
05 |
int rowCount = persons.size() ;
|
06 |
int [] keys = new int [rowCount] ;
|
07 |
DataSource ds = SimpleDBSource.getDB() ;
|
08 |
Connection conn = ds.getConnection() ;
|
10 |
String[] columnNames= { "id" } ;
|
11 |
PreparedStatement pstmt = conn.prepareStatement(sql, columnNames) ;
|
13 |
for (i = 0 ; i < rowCount ; i++){
|
15 |
pstmt.setString( 1 , p.getName()) ;
|
18 |
pstmt.executeBatch() ;
|
20 |
ResultSet rs = pstmt.getGeneratedKeys() ;
|
21 |
while (rs.next() && i < rowCount){
|
22 |
keys[i] = rs.getInt( 1 ) ;
|
分享到:
相关推荐
java 利用 jdbc 向 mysql 数据库插入记录并返回插入记录生成的主键值
hibernate不在自动生成主键值,需要你在插入时自己指明 3.hilo:高低值算法,由数据库表提供高值,程序提供低值 value = hi*(max_lo+1)+lo 4.sequences Cat: cid name color weight age ------------------------...
rapid-framework是一个以spring为核心的项目脚手架(或者称为胶水框架),框架将各个零散的框架(struts,strust2,springmvc,hibernate,ibatis,spring_jdbc,flex)搭建好,并内置一个代码生成器,辅助项目开发,可以生成...
7.6.2 使用具有JDBC的SELECT来返回RecordSet 7.7 基于Swing的SQL查询面板 7.7.1 View菜单 7.7.2 TableQueryFrame 7.8 JDBC代码 7.9 小结 第8章 组织查询结果和使用索引 8.1 使用ORDER BY对查询结果进行...
7.6.2 使用具有JDBC的SELECT来返回RecordSet 7.7 基于Swing的SQL查询面板 7.7.1 View菜单 7.7.2 TableQueryFrame 7.8 JDBC代码 7.9 小结 第8章 组织查询结果和使用索引 8.1 使用ORDER BY对查询结果进行...
7.6.2 使用具有JDBC的SELECT来返回RecordSet 7.7 基于Swing的SQL查询面板 7.7.1 View菜单 7.7.2 TableQueryFrame 7.8 JDBC代码 7.9 小结 第8章 组织查询结果和使用索引 8.1 使用ORDER BY对查询结果进行...
7.6.2 使用具有JDBC的SELECT来返回RecordSet 7.7 基于Swing的SQL查询面板 7.7.1 View菜单 7.7.2 TableQueryFrame 7.8 JDBC代码 7.9 小结 第8章 组织查询结果和使用索引 8.1 使用ORDER BY对查询结果进行...
3.3.1版本后ExecutorType为简单,重复使用批量插入可以正确返回生成主键 密钥生成器 useGeneratedKeys为true使用Jdbc3KeyGenerator selectKey节点使用SelectKeyGenerator 拦截器 拦截器pluginAll作用于Executor,...
* 6.select 使用触发器生成主键(主要用于早期的数据库主键生成机制,少用) * 例:@GeneratedValue(generator = "paymentableGenerator") * @GenericGenerator(name = "paymentableGenerator", strategy = "select...
mybatis实战教程mybatis in action之九mybatis 代码生成工具的使用 mybatis SqlSessionDaoSupport的使用附代码下载 转自:http://www.yihaomen.com/article/java/302.htm (读者注:其实这个应该叫做很基础的入门...
swing开发的数据库管理...改,查的sql语句,还可以生成对表操作的代码,支持批量表的数据导入和导出(支持blob/clob),写sql有自动提示功能,像pl/sql developer一样,还有其他功能不再多描述,是开发mis系统的好帮手.
主键,索引,视图,触发器,存储过程等,可以生成对表增,删,改,查的sql语句,还可以生成对表操作的代码,支持批量表的数据导入和导出(支持blob/clob),支持excel,txt文件导入导出数据库,不同数据库的表之间进行数据交换...
这是最新的,这边附件不好...改,查的sql语句,还可以生成对表操作的代码,支持批量表的数据导入和导出(支持blob/clob),写sql有自动提示功能,像pl/sql developer一样,还有其他功能不再多描述,是开发mis系统的好帮手.
11.5.2. 使用SimpleJdbcInsert来获取自动生成的主键 11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall...
11.5.2. 使用SimpleJdbcInsert来获取自动生成的主键 11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall...
13.1. 批量插入(Batch inserts) 13.2. 批量更新(Batch updates) 13.3. 大批量更新/删除(Bulk update/delete) 14. HQL: Hibernate查询语言 14.1. 大小写敏感性问题 14.2. from子句 14.3. 关联(Association)与...
批量插入相同类型的多个实体并返回生成的密钥 更新单个现有实体-一次更新实体的所有字段 获取多对一关系(部门公司) 获取一对多关系(公司部门) 更新实体一对多关系(公司部门)-添加两项,更新两项并删除一项-...
第二部分详细讲解了jsf ri、jta、jndi、rmi、jms、javamail、ejb 3的session bean、message driven bean、jpa、jax-ws 2、jaas等java ee知识,这部分知识以jsf+ejb 3+jpa整合开发为重点,通过使用netbeans ide工具...
13.1. 批量插入(Batch inserts) 13.2. 批量更新(Batch updates) 13.3. 大批量更新/删除(Bulk update/delete) 14. HQL: Hibernate查询语言 14.1. 大小写敏感性问题 14.2. from子句 14.3. 关联(Association)与...