JAVA的增删改查⽅法
⾸先导包,然后链接数据库
在lib⾥⾯放你导⼊的包
在创建⼀个DBHerlper⾥⾯写⼊这些:
public class DBHelper {
//定义三个常量,1.数据库的连接字符串 2.数据库账号 3.数据库密码
public static final String url="jdbc:mysql://localhost:3306/";
public static final String name="root";
public static final String pwd="root";
//定义⼀个数据库链接对象。
private static Connection conn;
public static Connection getConn(){
//1.加载驱动
try {
Class.forName("sql.jdbc.Driver");
//2.通过驱动管理器⾥⾯的getConnection的⽅法,得到⼀个数据库链接对象
try {
conn= Connection(url,name,pwd);//返回的是⼀个数据库链接对象Connection,⽤上⾯定义的数据库链接对象conn来接受这个返回值对象
} catch (SQLException throwables) {
throwables.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
//判断conn是否为空,如果有值则链接成功,如果没有值则链接失败
return conn;
}
//关闭数据库
深度为4的完全二叉树的遍历public void realease(Connection conn){
//如果conn等于空,那么就关闭数据库。
if(conn!=null){
try {
conn.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
//测试是否链接到了数据库
public static void main(String[] args) {
System.out.Conn()
);
}
}
在定义⼀个构造⽅法:
public class Userinfo {
private int id;
private String name;
private String pwd;
private String nyr;
private String lestnyr;
private String cadress;
private String email;
private String phone;
public Userinfo(){
super();
super();
}
//做添加的时候因为id⾃增所以调⽤这个构造⽅法
public Userinfo(String name, String pwd, String nyr, String lestnyr, String cadress, String email, String phone) {
this.name = name;
this.pwd = pwd;
< = nyr;
this.lestnyr = lestnyr;
this.cadress = cadress;
this.phone = phone;
}
public Userinfo(int id, String name, String pwd, String nyr, String lestnyr, String cadress, String email, String phone) { this.id = id;
this.name = name;
this.pwd = pwd;
< = nyr;
this.lestnyr = lestnyr;
this.cadress = cadress;
this.phone = phone;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getNyr() {
return nyr;
}
public void setNyr(String nyr) {
< = nyr;
}
public String getLestnyr() {
return lestnyr;
}
public void setLestnyr(String lestnyr) {
this.lestnyr = lestnyr;
}
public String getCadress() {
return cadress;
return cadress;
}
public void setCadress(String cadress) {
this.cadress = cadress;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
}
然后定义⼀个抽象类:
public interface UserinfoDao {
//查询所有⽤户,把查询的⽤户存储在list集合⾥⾯
public List<Userinfo> findAll();
//根据⽤户的id查某个⽤户
public Userinfo findUserById(int id);
//删除
public int deleteUserById(int id);
//添加,添加是⼀个⽤户对象所以是⼀个Userinfo
public int addUser(Userinfo ui);
//修改,
public int updateUser(Userinfo ui);
}
然后写详细的增删改查的代码:
public class Daoimpl implements UserinfoDao {
//实现接⼝⾥⾯的⽅法
public List<Userinfo> findAll() {
//1,获取数据库连接对象
Connection conn = Conn();
//定义⼀个集合
List<Userinfo> lists = new ArrayList<Userinfo>();
//2.书写sql语句
String sql = "select*from customer";
//3.预编译sql语句得到perpstatement对象
try {
keepalived日志PreparedStatement ps = conn.prepareStatement(sql);
//4.执⾏命令,查询之后的到结果集
/
/查询的结果都在这个结果集⾥⾯。
ResultSet rs = ps.executeQuery();
//5,从结果集中读取数据
while (rs.next()) {
//通过有参的构造⽅法来完成对对象属性的赋值,值从结果集中读取出来
Userinfo ui = new Int(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6), rs.getString(7), rs.getString(8));
//把读取出来的⽤户添加到集合中
lists.add(ui);
}
车子上clock是什么意思} catch (SQLException throwables) {
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return lists;
}
@Override
//查某个⽤户
public Userinfo findUserById(int id) {
//1,获取数据库连接对象
Connection conn = Conn();
//声明⼀个UserInfo为空。
Userinfo ui = null;
/
/2.书写sql语句
String sql = "select*from customer where cid=?";
//3.预编译sql语句得到perpstatement对象
try {
PreparedStatement ps = conn.prepareStatement(sql);
//4.给占位符赋值
ps.setInt(1, id);
//5.执⾏命令,查询之后的到结果集
//查询的结果都在这个结果集⾥⾯。
ResultSet rs = ps.executeQuery();
//6,从结果集中读取数据
if (rs.next()) {//当next为true,意味着从结果集中有数据。到了
//通过有参的构造⽅法来完成对对象属性的赋值,值从结果集中读取出来
ui = new Int(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6), rs.getString(7), rs.getString(8)); //把读取出来的⽤户添加到集合中
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return ui;
}
@Override
//删除⽤户
public int deleteUserById(int id) {
int result = 0;
//获取数据库链接对象
Connection conn = Conn();
String sql = "delet*from userinfo where cid=?";
try {
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, id);
result = ps.executeUpdate();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return result;
}
//添加对象
public int addUser(Userinfo ui) {
int result = 0;
//获取数据库链接对象
Connection conn = Conn();
//如果id⾥⾯有⾃增则给id赋值,也就是多打⼀个问号
String sql = "insert into customer values(?,?,?,?,?,?,?,?)";
try {
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, ui.getId());
ps.setString(1, ui.getName());
ps.setString(2, ui.getPwd());
ps.setString(3, ui.getNyr());
ps.setString(3, ui.getNyr());
ps.setString(4, ui.getNyr());
mysql面试题 增删改查ps.setString(5, ui.getCadress());
ps.setString(6, ui.getEmail());
ps.setString(7, ui.getPhone());
result = ps.executeUpdate();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return result;
}
//修改
public int updateUser(Userinfo ui) {
int result = 0;
//获取数据库链接对象
Connection conn = Conn();
//如果id⾥⾯有⾃增则给id赋值,也就是多打⼀个问号
String sql = "update customer set name=?,pwd=?,nyr=?,listnyr=?,cadress=?,email=?,phone=?where id=?"; try {
PreparedStatement ps = conn.prepareStatement(sql);
谈谈对web前端的认识ps.setString(1, ui.getName());
ps.setString(2, ui.getPwd());
编程培训哪个机构好ps.setString(3, ui.getNyr());
ps.setString(4, ui.getLestnyr());
ps.setString(5, ui.getCadress());
ps.setString(6, ui.getEmail());
ps.setString(7, ui.getPhone());
ps.setInt(8, ui.getId());
result = ps.executeUpdate();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
return result;
}
}
最后定义⼀个测试类来实现:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论