使用简单的java项目实现jdbc连接数据库完成增删改查

//使用简单的java项目实现jdbc连接数据库完成增删改查

//1.建立一个简单的java项目   

2.导入jar包

在web/WEB-INF下创建一个lib包 在lib包中导入连接数据库的jar包

3.右击lib包点击 Add as Library   给导入的jar包编译

4.jdbc 连接数据库

package com.dhx.util;

import java.sql.*;

/**
 * @author dhx
 * @version 1.0.0
 * @ClassName BaseUtil.java
 * @Description TODO
 * @createTime 2022年04月26日 22:27:00
 */
public class BaseUtil {
    static {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            //Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    public static Connection getConn() throws SQLException {
        Connection conn = DriverManager.getConnection("jdbc:mysql:///e?useSSL=false&useUnicode=true&characterEncoding=utf8", "root", "root");
        return conn;
    }
    public static void guan(ResultSet rs, PreparedStatement ps,Connection conn) throws SQLException {
        if (rs!=null){
            rs.close();
        }
        if (ps!=null){
            ps.close();
        }
        if (conn!=null){
            conn.close();
        }
    }
}

 

5.添加entity实体类 用于映射表中字段

package com.dhx.entity;
//数据库的实体类映射
public class Emp {
    private  int id;
    private String name;
    private String pwd;
    private int age;

    @Override
    public String toString() {
        return "Emp{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", pwd='" + pwd + '\'' +
                ", age=" + age +
                '}';
    }

    public void setId(int id) {
        this.id = id;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public int getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public String getPwd() {
        return pwd;
    }

    public int getAge() {
        return age;
    }

    public Emp(int id, String name, String pwd, int age) {
        this.id = id;
        this.name = name;
        this.pwd = pwd;
        this.age = age;
    }

    public Emp() {
    }
}

  

6.连接数据库后使用jdbc写增删改查语句

package com.dhx.dao;

import com.dhx.entity.Emp;
import com.dhx.util.BaseUtil;

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

public class EmpDao {
    //jdbc 查询方法
    public static List<Emp> select() {
        ArrayList<Emp> list = new ArrayList<>();
        try {
            Connection conn = BaseUtil.getConn();
            PreparedStatement ps = conn.prepareStatement("select * from t_emp");
            ResultSet rs = ps.executeQuery();
            while (rs.next()) {
                Emp emp = new Emp(rs.getInt(1), rs.getString(2), rs.getString(3), rs.getInt(4));
                list.add(emp);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }

        return list;
    }

    //jdbc添加方法
    public static int insert(String name, String pwd, String age) {
        try {
            Connection conn = BaseUtil.getConn();
            PreparedStatement ps = conn.prepareStatement("insert  into t_emp values (null ,?,?,?)");

            ps.setString(1, name);
            ps.setString(2, pwd);
            ps.setString(3, age);
            int i = ps.executeUpdate();
            if (i > 0) return 1;

        } catch (SQLException e) {
            e.printStackTrace();
        }
        return -1;
    }

    //jdbc修改方法
    public static int update(String id, String name, String pwd, String age) {
        try {
            Connection conn = BaseUtil.getConn();
            PreparedStatement ps = conn.prepareStatement("update t_emp set  name=?,pwd=?,age=? where id=?");

            ps.setString(1, name);
            ps.setString(2, pwd);
            ps.setString(3, age);
            ps.setString(4, id);

            int i = ps.executeUpdate();
            if (i > 0) return 1;


        } catch (SQLException e) {
            e.printStackTrace();
        }
        return -1;
    }

    //jdbc修改方法
    public static int delete(String id) {
        try {
            Connection conn = BaseUtil.getConn();
            PreparedStatement ps = conn.prepareStatement("delete  from t_emp  where id=?");
            ps.setString(1, id);

            int i = ps.executeUpdate();
            if (i > 0) return 1;


        } catch (SQLException e) {
            e.printStackTrace();
        }
        return -1;
    }


}

  

7. 编写增删改查的测试

7.1 添加测试

package com.dhx.test;

import com.dhx.dao.EmpDao;
public class InsertTest {
    //测试添加方法
    public static void main(String[] args) {
        int insert = EmpDao.insert("张一","111","23");
        if(insert==1){
            System.out.println("添加成功");
        }else if(insert==-1){
            System.out.println("添加失败");
        }

    }
}

7.2 删除测试

package com.dhx.test;

import com.dhx.dao.EmpDao;

public class DeleteTest {

    //测试删除方法
    public static void main(String[] args) {
        int delete = EmpDao.delete("8");
        if (delete == 1) {
            System.out.println("删除成功");
        } else {
            System.out.println("删除失败");
        }
    }
}

7.3  修改测试

package com.dhx.test;

import com.dhx.dao.EmpDao;


public class UpdateTest {
//测试修改方法
    public static void main(String[] args) {
        int update = EmpDao.update("5","dde","1","1");
        if(update==1){
            System.out.println("修改成功");
        }else{
            System.out.println("修改失败");
        }
    }
}

7.4 查询测试

package com.dhx.test;

import com.dhx.dao.EmpDao;
import com.dhx.entity.Emp;

import java.util.List;

public class SelectTest {
    //测试查询方法
    public static void main(String[] args) {
        List<Emp> select = EmpDao.select();
        System.out.println(select);
    }
}

  

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MVC(Model-View-Controller)是一种软件架构模式,常用于构建用户界面并处理用户交互的程序。在使用MVC访问MySQL数据库完成增删改查操作时,我们可以遵循以下步骤: 1. 模型(Model)层:模型负责与数据库进行交互,包括建立数据库连接、执行SQL语句以及处理数据库返回的结果。我们可以使用MySQL提供的官方驱动程序或者一些开源框架(如Hibernate、MyBatis)来简化数据库操作。 2. 视图(View)层:视图负责展示数据和接收用户的输入,对于数据库操作的结果,可以通过视图将其展示给用户。在MVC中,视图通常被定义为一些用户界面组件,如网页、移动应用程序的界面等。 3. 控制器(Controller)层:控制器负责接收来自视图层的用户输入,并将其转发给模型层进行相应的数据库操作。控制器还可以对模型层返回的数据进行处理,再将处理后的结果返回给视图层展示给用户。在MVC中,控制器可以看作是模型和视图之间的桥梁。 通过按照上述步骤使用MVC访问MySQL数据库进行增删改查操作,我们可以实现以下功能: - 增加数据:用户在视图层中输入数据,控制器将其传递给模型层对数据库进行增加操作。 - 删除数据:用户在视图层中选择要删除的数据,控制器将其传递给模型层对数据库进行删除操作。 - 修改数据:用户在视图层中选择要修改的数据并输入修改后的内容,控制器将其传递给模型层对数据库进行修改操作。 - 查询数据:用户在视图层中选择相应的查询条件,控制器将其传递给模型层对数据库进行查询操作,并将查询结果返回给视图层展示给用户。 通过使用MVC访问MySQL数据库完成增删改查操作,可以使代码结构更加清晰、可维护性更高,同时也能更好地分离数据层和用户界面层之间的耦合度,提供更好的用户体验。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值