package com.aaa.test; /** * * 应用场景 用户信息填写采用分布式的 一条用户的数据填入 通过几页来实现。 * 首先是通过 insert 添加用户部分信息 之后需要获取主键 ,通过主键id update set 添加用户信息。 * *语法? *1.在insert SQL语句之后, ,statement.return_generated_keys * *2.ps.getGeneratedKeys();获得一个set集合 通过 while循环 取数据 * rs.getint(); int 对应主键id的数据类型! * */ import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import org.junit.Test; import com.mysql.jdbc.Statement; public class GetKeyDemo { @Test public void KeyDemo() throws Exception { Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnection("jdbc:mysql:///qy66?characterEncoding=utf-8", "root","root"); PreparedStatement ps = con.prepareStatement( //通过 statement. return generated keys "insert into bank (name) values ('哈哈')",Statement.RETURN_GENERATED_KEYS ); int i = ps.executeUpdate(); // ps.getGenerateKeys();获取主键 返回一个 set集合。 ResultSet rs = ps.getGeneratedKeys(); while (rs.next()) { int j = rs.getInt(1); System.out.println(j); } ps=con.prepareStatement("update bank set money=66666 where id=3"); ps.executeUpdate(); ps=con.prepareStatement("update bank set money=88888 where id=4"); ps.executeUpdate(); ps=con.prepareStatement("update bank set money=99999 where id=5"); ps.executeUpdate(); rs.close(); ps.close(); con.close(); } }