MySQL 8.0.19详细安装教程以及简单数据库链接demo

news/2024/5/18 21:49:15 标签: mysql, 数据库, jdbc
  • MySQL8.0.19安装教程:
    -https://blog.csdn.net/qq_37350706/article/details/81707862
  • MySQL驱动jar包下载路径:
    https://dev.mysql.com/downloads/connector/j/

- A:DML(增删改)语句的简单Demo

        Statement statement = null;
        Connection conn = null;
        try {
            //1 导入驱动jar包
            //2 注册驱动
            Class.forName("com.mysql.jdbc.Driver");
            //3 获取数据库连接对象
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/bocai", "root","root");
            //4 定义sql语句
            String sql = "update user set username = '菠菜饭团' where id = 3";
            //获取执行sql的对象
            statement = conn.createStatement();
            int i = statement.executeUpdate(sql);     
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
           //释放资源
            if(statement!=null){
                try {
                    statement.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
            if(conn!=null){
                try {
                    conn.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
        }
  • 数据库对象
  • 1.DriverManager:管理 JDBC 驱动程序的服务对象。
  • 2.Connection数据库连接对象
  • 3.Statement: 执行静态SQL 语句对象,会导致SQL注入
    • int executeUpdate(String sql): 执行DML语句(增删改),DDL语句(与数据库和表相关,不常用),返回值为该条sql语句执行后影响的行数
      
    • ResultSet executeQuery(String sql)  : 执行DQL语句(查询语句),返回值为一个结果集对象
      
  • 4.ResultSet数据库结果集对象(数据表),具有一个当前数据行的光标,可
  • 5.PreparedStatement:预编译的 SQL 语句对象(动态

Class.forName("com.mysql.jdbc.Driver")中是通过静态代码块注册驱动的,源代码如下:

public class Driver extends NonRegisteringDriver implements java.sql.Driver {
    public Driver() throws SQLException {
    }
    //静态代码块在类加载时调用,并且只调用一次。
    static {
        try {
            DriverManager.registerDriver(new Driver());
        } catch (SQLException var1) {
            throw new RuntimeException("Can't register driver!");
        }
    }
}

- B:DQL(查询)语句的简单Demo

{
        Statement statement = null;
        Connection conn = null;
        ResultSet rs = null;
        try {
            //1 导入驱动jar包
            //2 注册驱动
            Class.forName("com.mysql.jdbc.Driver");
            //3 获取数据库连接对象
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/bocai", "root","root");
            //4 定义sql语句
            String sql = "select * from user";
            //获取执行sql的对象
            statement = conn.createStatement();
            rs = statement.executeQuery(sql);
            //判断结果集是否有数据
            while(rs.next()){
               int id =  rs.getInt("id");
               String username =  rs.getString("username");
               String password =  rs.getString("password");
               System.out.println(id+"---"+username+"---"+password);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            //释放资源
            if(rs!=null){
                try {
                    rs.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
            if(statement!=null){
                try {
                    statement.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
            if(conn!=null){
                try {
                    conn.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
        }
    }

查询结果如下
在这里插入图片描述


http://www.niftyadmin.cn/n/902215.html

相关文章

如何解析JSON对象

情景: 解析同盾返回参数 //获取同盾返回对象JSONObject jsonObject tdService.invokeQueryReport(map2);//解析json对象中key为result的对象参数JSONObject jsonObject_a jsonObject.getJSONObject("result");//再解析jsonObject_a 中key为report的对象…

IDEA中常用快捷键【备忘录】

功能快捷键撤销Ctrl Z反撤销Ctrl Shift Z后缩进TAB前缩进Shift TAB重写父类方法CtrlO查看类结构CtrlH

java后端实现Excel数据的导出、解决导出数据会在火狐浏览器乱码的问题

RestController public class ExcelDownLoadController {Resourceprivate AddCustomerService addCustomerService;ApiOperation(value "新增客户数据", notes "导出时间范围内新增客户数据")ApiImplicitParams({ApiImplicitParam(name "startTime…

使用properties配置文件来获取数据库连接

一个简单的JDBC工具类(目前还没有学到PreparedStatement) jdbc.properties需配置在src目录下。 import java.io.FileReader; import java.io.IOException; import java.net.URL; import java.sql.*; import java.util.Properties; /**3. author 菠菜饭团…

JsonObject 和 List之间相互的转换

比如说List List转Json List students new ArrayList(); String str JSON.toJSONString(students); // List转json Json 转List 方法一 String json “”; //获取的Json数据 List students JSON.parseObject(json,new TypeReference<List>(){}); // Json 转List J…

【IDEA】 实用的快捷键

功能快捷键查找方法引用Alt F7反撤销Ctrl Shift Z反缩进Shift TAB重写方法CtrlO查看类结构CtrlH&#xff08;父子关系&#xff09;跳转行号Ctrl G代码包裹Ctrl Alt T查看类属性Ctrl F12类名自动完成Ctrl Alt Space大小写转换Ctrl Shift U自动生成单元测试Ctrl Shif…

java后端不使用mybatis插件的手工分页

使用情景 &#xff1a;从现有运营商报告中返回的值&#xff0c;将其中的一个列表进行分页。 ApiOperation(value "通话详单分页列表", notes "通话详单分页列表&#xff08;运营商&#xff09;")RequestMapping(value "/queryCallDetailsList"…

数据库JDBC——PreparedStatement和Statement的区别和使用

文章目录PreparedStatement和Statement的区别一、PreparedStatement的批量操作二、Statement的SQL注入演示1.登录界面2.后台代码示例总结注PreparedStatement和Statement的区别 PreparedStatement对象&#xff1a; 预编译的 SQL 语句对象,只编译一次&#xff0c;支持批量处理&…