1.创建测试类Test
2.在测试类中实现增删改查方法
主要实现类:
executeQuery() 实现增删改操作
executeUpdate() 实现查询操作
@Test
Class Test{
public void testInsert(){
}
public void testIDelete(){
}
public void testUpdate(){
}
public void testSelect(){
}
}
3.具体实现
3.1增加,删除,修改通用
public void testInsert() throws ClassNotFoundException, SQLException {
/**
* 1.注册驱动
* 2.建立连接
* 3.编写sql语句,创建prepareStatement对象
* 4.进行插入操作
* 5.判断是否插入成功
*/
Class.forName("com.mysql.cj.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/atguigu","root","123456");
String sql = "insert into t_user(account,password,nickname) values(?,?,?);";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
preparedStatement.setObject(1,"李华");
preparedStatement.setObject(2,"23421");
preparedStatement.setObject(3,"二狗子");
int rows = preparedStatement.executeUpdate();
if(rows > 0){
System.out.println("添加成功");
}else{
System.out.println("添加失败");
}
preparedStatement.close();
connection.close();
}
3.2查询(静态查询,不推荐)
public void testSelect() throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql:///atguigu", "root", "123456");
String sql = "select * from t_user;";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
ResultSet resultSet = preparedStatement.executeQuery();
ArrayList<Map> list = new ArrayList<>();
while(resultSet.next()){
Map map = new HashMap<>();
map.put("id",resultSet.getInt("id"));
map.put("account",resultSet.getString("account"));
map.put("password",resultSet.getString("password"));
map.put("nickname",resultSet.getString("nickname"));
list.add(map);
}
System.out.println("list"+list);
resultSet.close();
preparedStatement.close();
}
3.3动态查询(推荐)
public void testSelect2() throws ClassNotFoundException, SQLException {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql:///atguigu", "root", "123456");
String sql = "select * from t_user;";
PreparedStatement preparedStatement = connection.prepareStatement(sql);
ResultSet resultSet = preparedStatement.executeQuery();
ResultSetMetaData metaData = resultSet.getMetaData();
int columnCount = metaData.getColumnCount();
ArrayList<Map> list = new ArrayList<>();
while(resultSet.next()){
Map map = new HashMap<>();
for (int i = 1; i <=columnCount ; i++) {
String key = metaData.getColumnLabel(i);
String value = resultSet.getString(i);
map.put(key,value);
}
list.add(map);
}
System.out.println("list="+list);
}