JAVA连接MYSQL数据库

本文介绍了如何使用Java连接MySQL数据库,包括加载驱动、获取连接、执行SQL语句等步骤,并强调了SQL注入问题及解决方案,提倡使用PreparedStatement。同时,讨论了将查询结果封装到实体类中,对每个表的操作进行单独封装到DAO类,以及异常处理和公共DAO父类的设计思路。
摘要由CSDN通过智能技术生成

1.java连接mysql数据库

  1. 创建一个java工程。

  2. 在工程下创建一个目录library---->放jar的。

  3. mysql-connector-java-8.0.20.jar

  4. 把该jar进行解压--->一定要在程序中完成。

写程序:

public class Test01 {
    public static void main(String[] args)throws Exception {
        //1.加载驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
        //2.获取连接对象
        //String url: 数据库的路径 
        //协议:数据的种类://ip:端口号/数据库名?serverTimezone=Asia/Shanghai
        //String user,账号
        //String password 密码
        String url="jdbc:mysql://localhost:3306/mydb?serverTimezone=Asia/Shanghai";
        String user="root";
        String password="root";
        Connection connection= DriverManager.getConnection(url,user,password);

        //3.获取执行sql语句的对象。
        Statement statement=connection.createStatement();

        //4.执行sql语句。增删改
        String sql="delete from t_student where id=1";
        statement.executeUpdate(sql);
    }
}

总结:

1. 加载驱动 Class.forName("com.mysql.cj.jdbc.Driver");
2. 获取连接对象 Connection connection=DriverManager.getConnection(url,u,pass);
3. 获取执行sql语句的对象. Statement statement=connection.createStatement();
4. 执行sql语句: statement.executeUpdate(sql);

 测试---往数据库中增删改

public class demo1 {
    @Test
    public void TestDelete() throws Exception {
        //加载驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
        //获取连接对象
        String url="jdbc:mysql://localhost:3306/mydb?serverTimezone=Asia/Shanghai";
        String user="root";
        String password="001024";
        Connection connection=DriverManager.getConnection(url,user,password);
        //获取sql语句对象
        Statement statement = connection.createStatement();
        //执行sql语句删
        String sql="delete from student where id=15";
        statement.executeUpdate(sql);
    }
    @Test
    public void TestInsert() throws Exception {
        //加载驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
        //获取连接对象
        String url = "jdbc:mysql://localhost:3306/mydb?serverTimezone=Asia/Shanghai";
        String user = "root";
        String password = "001024";
        Connection connection = DriverManager.getConnection(url,user,password);
        //获取sql语句对象
        Statement statement = connection.createStatement();
        String sql = "insert into student values(null,'小明',18,'郑州')";
        statement.executeUpdate(sql);
    }
    @Test
    public void TestUpdate() throws Exception {
        //加载驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
        //获取连接对象
        String url = "jdbc:mysql://localhost:3306/mydb?serverTimezone=Asia/Shanghai";
        String user = "root";
        String password = "001024";
        Connection connection = DriverManager.getConnection(url,user,password);
        //获取sql语句对象
        Statement statement  = connection.createStatement();
        String sql = "update student set name='小红',age=22,address='周口' where id=16";
        statement.executeUpdate(sql);
    }
}

 

出现的错误有哪些?

1.驱动类找不到:

原因: (1)类写错了 (2)没有把驱动jar包放入工程中并解压。

2.没有写时区或者写错了。?serverTimezones=Asia/Shanghai

3.数据库的账号或密码错误。

4.sql语句有错。 应该把sql放到数据库中执行一下

2. 查询数据库表中记录。

2.1查询所有

 public void testQuery() throws Exception { //抛出异常只是为了操作方便。真正在开发时应该try--catch
        Class.forName("com.mysql.cj.jdbc.Driver");
        Connection conn = DriverManager.getConnection
                ("jdbc:mysql://localhost:3306/mydb?serverTimezone=Asia/Shanghai", "root", "root");

        Statement statement = conn
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值