秋雨 De Blog

一个技术小白的个人博客

有关java web 链接 MySql8.0

这段时间学了javaweb 通过java连接数据库连接8.0的时候发现会报空指针的错误

《有关java web 链接 MySql8.0》

连接MySql5.4并不会。后来通过问度娘,谷歌。发现了问题所在,原因是 mysql-connector-java.jar 的包与版本不匹配的原因,需要 mysql-connector-java-8.0.17的一个包还要更改Context.xml里面的配置

<!--MYsql5.4配置 -->
<Resource name="jdbc/databasepool"
		auth="Container"
		type="javax.sql.DataSource"
		driverClassName="com.mysql.jdbc.Driver"
		url="jdbc:mysql://localhost/java?useUnicode=true&characterEncoding=utf-8"
		username="username"
		password="password"
		maxTotal="20"
		maxIdle="30"
		maxWaitMillis="5000"
		/>
<!--MySql8.0配置-->
<Resource
    name="jdbc/databasepool"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="com.mysql.cj.jdbc.Driver"
    url="jdbc:mysql://localhost:3306/java?
 useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false"
    username="username"
    password="password"
    maxTotal="20"
    maxIdle="30"
    maxWaitMillis="5000"
/>

具体区别

    <!--Mysql5.0-->
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://localhost/java?useUnicode=true&characterEncoding=utf-8"
   <!--Mysql8.0-->
    driverClassName="com.mysql.cj.jdbc.Driver"<!--由于驱动更换所以这里需要更改-->
    url="jdbc:mysql://localhost:3306/java?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false"
<!--由于8.0是不需要建立ssl连接的,你需要显示关闭useSSL=false。最后你需要设置时区为亚洲serverTimezone=Asia/Shanghai-->

此外还需要将 WebContent > WEB-INF > lib 文件夹下的MySql驱动
mysql-connector-java-8.0.17 Add to build Path 添加生成路径

至此MySql8.0的配置已完成
下载地址 下载解压获取 mysql-connector-java-8.0.17 即可

补充知识:

MySql有两种版本的jar驱动包 即mysql-connector-java-5.1.18-bin.jar与
mysql-connector-java-8.0.17

  • mysql-connector-java-5.1.18 是Type 4纯Java JDBC驱动程序,符合JDBC 3.0、4.0、4.1和4.2规范。它提供与MySQL的所有功能(包括5.6和5.7)的兼容性。Connector / J 5.1提供了易于开发的功能,包括使用驱动程序管理器自动注册,标准化的有效性检查,分类的SQLException,对大量更新计数的支持,对java.time程序包中本地和偏移日期时间变体的 支持,对JDBC-4的支持。 .X XML处理,每个连接的客户端信息,并且支持支持 NCHAR, NVARCHAR和 NCLOB数据类型。
  • mysql-connector-java-8.0.17 是用于Java 8平台的Type 4纯Java JDBC 4.2驱动程序。它提供与MySQL 5.6、5.7和8.0的所有功能的兼容性。有关详细信息,请参见《 MySQL Connector / J 8.0开发人员指南

下表总结了可用的Connector / J版本,以及它们的JDBC驱动程序类型,它们所支持的JDBC API版本,所使用的MySQL Server版本以及它们当前的开发状态等详细信息:

《有关java web 链接 MySql8.0》
点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注