JDBC快速创建

JDBC快速创建

这里以一个student的数据库做增删改查操作话不多说直接上代码

  1. 下载mysql驱动jar包
    我用阿里云盘分享了「mysql-connector-java-8.0.11.jar」,你可以不限速下载🚀
    https://www.aliyundrive.com/s/AP9LR7jSZyy
    2.创建数据库(student)
    3.创建表
//user表字段
int user_id;
varchar user_name;
int user_age;
int user_state;

4.封装user对象

public class User {
	private Integer id;
	private String name;
	private Integer age;
	private Integer state;
	
	public User() {
		super();
		// TODO Auto-generated constructor stub
	}
	public User(Integer id, String name, Integer age, Integer state) {
		super();
		this.id = id;
		this.name = name;
		this.age = age;
		this.state = state;
	}
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getAge() {
		return age;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
	public Integer getState() {
		return state;
	}
	public void setState(Integer state) {
		this.state = state;
	}
	@Override
	public String toString() {
		return "User [id=" + id + ", name=" + name + ", age=" + age + ", state=" + state + "]";
	}
	
	

}

增加数据

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;

import java.sql.SQLException;


public class Add {
	private Connection conn=null;
	private PreparedStatement pst=null;
	
	static{
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		
		}
	}
	public int addUser(String name,int age) {
		int result=0;
		try {
			conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/student?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false", "root","数据库密码");
			String sql="Insert into user(user_id,user_name,user_age,user_state)values(0,?,?,1)";
			pst=conn.prepareStatement(sql);
			pst.setString(1,name);
			pst.setInt(2, age);
			result=pst.executeUpdate();
		}catch(SQLException e) {
			e.printStackTrace();
		}finally {
			try {
			
				pst.close();
				conn.close();
			} catch (SQLException e) {
				
				e.printStackTrace();
			}			
		}
		return result;
	}
	
	public static void main(String[] args) {
		Add a=new Add();
		int result=a.addUser("大名", 12);
		System.out.println(result);
	}
}

删除数据

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class DeleteUser {
	private Connection conn=null;
	private PreparedStatement pst=null;
	static{
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		
		}
	}
	public int deleteUser(int id) {
		int result=0;
		
		try {
			conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/student?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false", "root","数据库密码");
			String sql="delete from user where user_id=?";
			pst=conn.prepareStatement(sql);
			pst.setInt(1, id);
			result=pst.executeUpdate();
			
		}catch(SQLException e) {
			e.printStackTrace();
		}finally {
			try {
				
				pst.close();
				conn.close();
			} catch (SQLException e) {
				
				e.printStackTrace();
			}			
		}
		return result;
	}
	
	public static void main(String[] args) {
		DeleteUser d=new DeleteUser();
		System.out.println(d.deleteUser(4));
	}


}

修改数据

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;


public class UpdateUser {
	private Connection conn=null;
	private PreparedStatement pst=null;
	
	static{
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		
		}
	}
	public int updateUser(int id,String name,int age) {
		int result=0;
		
		try {
			conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/student?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false", "root","数据库密码");
			String sql="update user set user_name=\""+name+"\",user_age="+age+" where user_id=?";
			System.out.println(sql);
			pst=conn.prepareStatement(sql);
			pst.setInt(1, id);
			result=pst.executeUpdate();
		}catch(SQLException e) {
			e.printStackTrace();
		}finally {
			try {
				pst.close();
				conn.close();
			} catch (SQLException e) {
				
				e.printStackTrace();
			}			
		}
		return result;
	}
	public static void main(String[] args) {
		UpdateUser u=new UpdateUser();
		System.out.println(u.updateUser(2, "小明", 12));
	}


}

查询数据

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class Select {
	private Connection conn=null;
	private PreparedStatement pst=null;
	private ResultSet rs=null;
	static{
		try {
			Class.forName("com.mysql.cj.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		
		}
	}
	public List<User> findUser(int id) {
		List<User> list=new ArrayList<User>();
		
		try {
			conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/student?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false", "root","数据库密码");
			String sql="SELECT * FROM user";
			pst=conn.prepareStatement(sql);
			rs=pst.executeQuery();
			while(rs.next()) {
				User u=new User();
				u.setId(rs.getInt("user_id"));
				u.setName(rs.getString("user_name"));
				u.setAge(rs.getInt("user_age"));
				u.setState(rs.getInt("user_state"));
				list.add(u);
			}
		}catch(SQLException e) {
			e.printStackTrace();
		}finally {
			try {
				rs.close();
				pst.close();
				conn.close();
			} catch (SQLException e) {
				
				e.printStackTrace();
			}			
		}
		return list;
	}
	
	public static void main(String[] args) {
		Select j=new Select();
		List<User> list=j.findUser(1);
		for(User user:list) {
			System.out.println(user.toString());
		}
	}

}

重要声明:该文章仅供初学者体验jdbc过程使用,文件的下载也是免费的,如有侵权请联系删除。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值