关于简单的jdbc增删改查代码的一些优化

https://mp.csdn.net/mdeditor/93762310#
此篇主要是在上一篇的基础上,对于之前写的jdbc实现增删改查的代码的一些优化。

在上一篇中先写了DBUtil的类将加载驱动和数据库的连接和关闭的相关代码整理到了一起。

然后继续新建一个名为user的类实现封装,去创造用户实体,其中包括:
1、相关属性的定义。
2、构造方法。
3、getter和setter的方法。
4、toString()输出相关信息。
Constructor、Getter、Setter和toString()均可用快捷方式建立,即单击右键选择“Generate”,选择相应的方法。
相关代码如下:

package com;

public class user {
//构造方法
    public user(String userpassword, String username) {
        this.userpassword = userpassword;
        this.username = username;
    }

    private int userID;
    private  String userpassword;
    private  String username;

    public int getUserID() {
        return userID;
    }

    public void setUserID(int userID) {
        this.userID = userID;
    }

    public String getUserpassword() {
        return userpassword;
    }

    public void setUserpassword(String userpassword) {
        this.userpassword = userpassword;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    @Override
    public String toString() {
        return "user{" +
                "userID=" + userID +
                ", userpassword='" + userpassword + '\'' +
                ", username='" + username + '\'' +
                '}';
    }
}

然后建立一个名为userInfoDao的类将查询、删除、增加、修改的函数全部整合到其中,当以后进行相关操作可直接从里面调用。另外在进行查询操作时,可将用户的信息放入ArrayList中。
相关代码如下:

package com;

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

public class userInfoDao {
    public List<user> check(){
        ResultSet resultSet=null;
        PreparedStatement statement=null;
        Connection connection=null;
        List<user> UserInfo=new ArrayList<>();

        try {
            connection= DBUtil.getConnection();
            String sql = "select * from users";
            statement=connection.prepareStatement(sql);
            resultSet=statement.executeQuery();

            while(resultSet.next()){
                String username=resultSet.getString(1);
                String userpassword=resultSet.getString(2);
                int userID=resultSet.getInt(3);
                user users=new user(userpassword,username);
                users.setUserID(userID);
                UserInfo.add(users);
            }
            System.out.print(UserInfo);
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            DBUtil.close(resultSet,statement,connection);
        }
        return UserInfo;
    }
    public void Insert(user users){
        Connection connection=null;
        PreparedStatement statement=null;
        try {
        
            connection=DBUtil.getConnection();
            String sql="Insert into users(username,userpassword,userID) values(?,?,?)";
            statement=connection.prepareStatement(sql);
            statement.setString(1,users.getUsername());
            statement.setString(2,users.getUserpassword());
            statement.setInt(3,users.getUserID());
            statement.executeUpdate();

        } catch (Exception e) {
            e.printStackTrace();
        }finally{
           DBUtil.close(null,statement,connection);
        }
    }

    public void delete(user users){

        Connection connection=null;
        PreparedStatement statement=null;
        try {
            connection=DBUtil.getConnection();
            String sql="delete from users where username='小明'";
            statement=connection.prepareStatement(sql);
            statement.executeUpdate();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            DBUtil.close(null,statement,connection);
        }

    }
    public void update(user users){
        Connection connection=null;
        PreparedStatement statement=null;
        try{
            connection=DBUtil.getConnection();
            String sql="update users set username='小吴'where userID='1'";
            statement=connection.prepareStatement(sql);
            statement.executeUpdate();
        }catch (Exception e)
        {
            e.printStackTrace();
        }finally {
          DBUtil.close(null,statement,connection);
        }
    }
}

其他代码:
check类:

package com;

    public class check {
        public static void main(String[] args) {
            userInfoDao userInfoDao=new userInfoDao();
            userInfoDao.check();
        }
    }

delete类:

package com;

public class delete {
    public static void main(String[] args) {
        userInfoDao userInfoDao=new userInfoDao();
        userInfoDao.delete("小丽");
        }
    }

insert类:

package com;

import com.mysql.jdbc.ConnectionImpl;
public class insert {
    private static ConnectionImpl connection;

    public static void main(String[] args) {
            userInfoDao userInfoDao=new userInfoDao();
            user users=new user("123","小丽",3);
            userInfoDao.Insert(users);
    }
}

update类:

package com;

    public class update {
        public static void main(String[] args){
          userInfoDao userInfoDao=new userInfoDao();
          user users=new user("","小明",1);
          userInfoDao.update(users);
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值