JDBC--curd

user

public class User {
private String name;
private String password;
public String getName() {
	return name;
}
public void setName(String name) {
	this.name = name;
}
public String getPassword() {
	return password;
}
public void setPassword(String password) {
	this.password = password;
}
public User() {
	super();
}
public User(String name, String password) {
	super();
	this.name = name;
	this.password = password;
}
@Override
public String toString() {
	return "User [name=" + name + ", password=" + password + "]";
}

}

utils

public class DBUtils {
	private static String driverClass;
	private static String url;
	private static String user;
	private static String password;
	
	static{
		//加载配置文件
		ResourceBundle rb=ResourceBundle.getBundle("info"); //info src下配 +置文件   在同一文件夹下
		driverClass = rb.getString("driverClass");
		url = rb.getString("url");
		user=rb.getString("user");
		password=rb.getString("password");
		try {
			Class.forName(driverClass);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
	}
	//获取连接       Connection  导包  java.sql.Connection
	public static Connection getConnection() throws SQLException{
	
			return DriverManager.getConnection(url,user,password);
		
	}
		//释放资源  
	public static void closeAll(ResultSet rs,Statement stmt,Connection conn){
		if(rs!=null){
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
			rs=null;
		}
		
		if(stmt!=null){
			try {
				stmt.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
			stmt=null;
		}
		
		if(conn!=null){
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
			stmt=null;
		}
				
	}
	
}

curd测试

public class TestCurd {
	
	public static void main(String[] args){
		Scanner sc=new Scanner(System.in);
		TestCurd tc = new TestCurd();
		
		System.out.println("请输入:1.查询,2.添加,3.修改,4.删除");
		while(true){
		
			int in=sc.nextInt();	
		switch(in){
		case 1 :
			System.out.println("查询全部数据");
			tc.testSelevt();
			continue;
			
		case 2 :
			
			System.out.println("请输入要添加的姓名 密码");
			String s1=sc.next();
			String [] arr=s1.split(",");
			User u=new User(arr[0],arr[1]);
			
			tc.testInsert(u);
			continue;
		case 3 :
			System.out.println("请输入要修改的姓名和修改后的密码");
			String s2=sc.next();
			//按姓名修改
			String[] arr1 = s2.split(",");
			User u1=new User(arr1[0],arr1[1]);
			
			tc.testUpdate(u1);
			
			continue;
		case 4:
			System.out.println("输入要删除的姓名");
			String s3=sc.next();
			User u2=new User();
			u2.setName(s3);
			tc.testDelete(u2);
			continue;
		default :
			System.out.println("输入有误");
		}
		}
	}
public void testSelevt() {
		//加载驱动  获取连接
		Connection conn = null;
		//获取预编译sql的执行对象
		PreparedStatement ps = null;
		//执行sql语句
		ResultSet rs = null;
		try {
			conn = DBUtils.getConnection();
			String sql="select*from user";
			/*System.out.println(sql);*/
			ps = conn.prepareStatement(sql);
			rs = ps.executeQuery();
			while(rs.next()){
				System.out.print(rs.getString("name"));
				System.out.print(rs.getString("password"));
				System.out.println();
			}
		} catch (SQLException e) {
		
			e.printStackTrace();
		}finally{
		DBUtils.closeAll(rs, ps, conn);
		}
	}	
	
	//update  增 添加
public void testInsert(User u) {
	Connection conn = null;
	//获取执行sql语句对象
	PreparedStatement ps = null;
	try {
		conn = DBUtils.getConnection();
		ps = conn.prepareStatement("INSERT INTO USER (NAME,PASSWORD)VALUES(?,?)");	
		ps.setString(1, u.getName());
		ps.setString(2,u.getPassword());
		
		//执行sql语句    result
		int result = ps.executeUpdate();
		
		if(result>0){
			System.out.println("添加成功"+result);
		}else{
			System.out.println("失败");
		}
	} catch (SQLException e) {
		e.printStackTrace();
	}finally {
		//关闭资源
		DBUtils.closeAll(null,ps,conn);
	}
	}
	//修改
public void testUpdate(User u) {
	Connection conn=null;
	PreparedStatement ps=null;
	try {
		 conn=DBUtils.getConnection();
		String sql="update user set password=? where name=?";
		
		 ps=conn.prepareStatement(sql);
		ps.setString(1,u.getPassword());
		ps.setString(2, u.getName());
		int jieguo = ps.executeUpdate();
		if(jieguo>0){
			System.out.println("修改成功"+jieguo);
		}else{
			System.out.println("修好失败");
		}
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}finally{	
		DBUtils.closeAll(null, ps, conn);
	}
}
public void testDelete(User u) {
	Connection conn = null;
	PreparedStatement ps = null;
	try {
		conn = DBUtils.getConnection();
		String sql="delete from User where name=?";
		ps = conn.prepareStatement(sql);
		ps.setString(1, u.getName());
		int result = ps.executeUpdate();
		if(result>0){
			System.out.println("删除成功");
		}else{
			System.out.println("删除失败");
			}
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	DBUtils.closeAll(null, ps, conn);
	}
}

猜你喜欢

转载自blog.csdn.net/qq_42435514/article/details/83376938