MySQL数据库学习

数据库的优点

1、实现数据持久化

2、使用完整的管理系统统一管理,易于查询

数据库的相关概念

DB

数据库database():存储数据的仓库,它保存了一系列有组织的数据。

DBMS

数据库管理系统(Database Management System)。数据库是通过DBMD创建和操作的容器。

SQL

结构化查询语言(Structure Query Language):专门用来与数据库通信的语言。

优点:

1、不是某个数据库供应商专有的语言,几乎所有DBMS都支持SQL

2、是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作

启动MySQL

方法

以管理员身份启动命令指示符

Windows+R 再用Ctrl+shift+enter 代替enter进入cmd

使用Navicat软件

连接(连接名随便取一个)

 双击这个海豚在右键海豚->新建数据库->双击你新建数据库,下拉菜单里有表,新建表

可视化操作制作很方便

 JDBC(Java Database Connectivity)

1、导入jar包

从mysql官网下载jar包

在idea中导入,导入方法

 再找到自己的jar包在哪,ok

加载驱动

package JDBC;

public class jdbc {

    public static void main(String[] args) {

        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            //测试
            System.out.println("驱动加载成功");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        
    }

}

Class.forName是把这个类加载到JVM中,加载的时候,就会执行其中的静态初始化块,完成驱动的初始化的相关工作

数据库连接

Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql", "root","");

 格式

url:jdbc:mysql://主机:端口/数据库名(不是连接名!)

user:用户名

password:密码(新建连接的时候你自个设置的)

数据库查询

        try {
            //加载MySQL驱动
            Class.forName("com.mysql.cj.jdbc.Driver");
            //连接数据库,获得连接对象
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/usersinfo", "root","");
            //创造执行环境
            Statement statement = conn.createStatement();
            //执行sql语句 得到结果集
            ResultSet result = statement.executeQuery("select * from user");
            while(result.next()){
                System.out.print(result.getString("id")+" ");
                System.out.print(result.getInt("acountnum")+" ");
                System.out.println(result.getInt("password"));
            }
        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        }

输出的就是数据库内容

JDBCUtils

JDBCUtils的作用:连接数据库的四大参数是:驱动类、URL、用户名、密码,这些参数都是与特定数据库关联,如果将来想要更改数据库,那么就要去修改这四大参数,那么为了不去修改代码,我们需要写一个JDBCUtils类,让它从配置文件中读取到配置参数,然后创建连接对象

jdbcUtils.class获得对象
getClassLoader()类加载器
getResourceAsSteam("db.properties")加载资源文件放到输入流中
static{
        
        InputStream is = jdbcUtils.class.getClassLoader().getResourceAsStream("db.properties");
        Properties p = new Properties();
        try {
            p.load(is);
            driver = p.getProperty("driver");
            url = p.getProperty("url");
            username = p.getProperty("username");
            password = p.getProperty("password");
            //加载MySQL驱动
            Class.forName(driver);
        } catch (IOException | ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

获得连接对象的方法

DriverManager.getConnection(url,username,password);

还需要写一个关闭类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值