zoukankan      html  css  js  c++  java
  • 简单JDBC数据库配置(Eclipse)

    1.确保mysql已安装完且可连接,我个人用的是Homebrew下的8.0.18

    2.加入连接mysql的依赖包

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.16</version>
    </dependency>

    同样是mvnrepository里下的第一个/J

    3.配置登陆需要的服务器地址以及用户名密码

    String driverClass = "com.mysql.cj.jdbc.Driver";
    String databaseName = "flight";
    String serverIP = "localhost";
    String usernameString = "root";
    String password = "Shirase-1423l";
    String jdbcUrl = "jdbc:mysql://" + serverIP + ":3306/" + databaseName
                + "?serverTimezone=Asia/Shanghai&useSSL=true";

    这里serverTimezone和useSSL的参数设成别的还没有试结果

    4.驱动+登陆

    //加载Driver类
    
    Class.forName("driverClass");
    
    //登陆mysql
    
    Connection connect = DriverManager.getConnection(jdbcUrl, usernameString, password);

    根据菜鸟教程给出的DBUtil类,简单分析一下里面的一些我觉得关键的点:

    public class DBUtil {
        public static final String driverClass = "com.mysql.cj.jdbc.Driver";
        public static final String databaseName = "flight";
        public static final String serverIp = "localhost";
        public static final String usernameString = "root";
        public static final String password = "Shirase-1423l";
        public static final String jdbcUrl = "jdbc:mysql://" + serverIp + ":3306/" + databaseName
                + "?serverTimezone=Asia/Shanghai&useSSL=true";
        private static Connection connect = null;
        static {
            try {
                Class.forName(driverClass);
                connect = DriverManager.getConnection(jdbcUrl);
            } catch (SQLException | ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }            
        }
        public static Connection getConnection() {
            return connect;
        }
    }

    关键点:

    1.Connection私有变量记录连接情况

    2.static代码块中放置初始化以及连接功能代码,由于static代码块在类加载时运行且只运行一次。这样处理简单项目很优雅同时节省显式调用的语句。

    3.在之后的每一次增删改查时,我们都要先获取connect,获取到连接信息,再进行数据操作,增删改查之类的。

  • 相关阅读:
    iOS7 自己定义动画跳转
    Android开发之用双缓冲技术绘图
    postgres 使用存储过程批量插入数据
    渗透过程
    python pytesseract使用
    排序算法比较
    python算法
    python中PIL模块
    数字电路复习
    windows服务参考
  • 原文地址:https://www.cnblogs.com/exigeslover/p/12003223.html
Copyright © 2011-2022 走看看