服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|JavaScript|易语言|

服务器之家 - 编程语言 - Java教程 - mybatis连接MySQL8出现的问题解决方法

mybatis连接MySQL8出现的问题解决方法

2021-06-03 11:38pp153 Java教程

这篇文章主要介绍了mybatis连接MySQL8出现的问题解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

使用mysql8,在整合ssm框架,用mybatis逆向工程生成的代码测试时,执行到数据库查询前均正常,但进行查询时,便卡主没有反应了,设置了日志、try catch等也不报错,页面就在那一直转,之前mybatis自动生成代码都是正常的,然后在测试类中,使用connection进行连接测试并查询数据库,也是能够正常查询到数据的:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
connection conn = null;
try {
  string username = "root";
  string password = "111@test";
  string jdbcurl = "jdbc:mysql://localhost:3306/test?useunicode=true&usessl=false&autoreconnect=true&characterencoding=utf-8";
  class.forname("com.mysql.jdbc.driver").newinstance();
  conn = drivermanager.getconnection(jdbcurl, username, password);
  string sql = "select * from tb_user";
  preparedstatement pstmt = conn.preparestatement(sql);
  resultset rs = pstmt.executequery();
  string result = "";
  while (rs.next()) {
    int id = rs.getint("id");
    string name = rs.getstring("username");
    string status = rs.getstring("phone");
    result += id + "\t" + name + "\t" + status + "\n";
  }
  system.out.println(result);

而逆向工程的却不行:

?
1
2
3
4
userexample example = new userexample();
userexample.criteria criteria = example.createcriteria();
criteria.andidequalto(userid);
list<user> list = usermapper.selectbyexample(example);//这一步进去后就出不来了。。。

经过确认ssm其他配置文件都没有发现有问题,然后就想是不是自己用的mysql8版本的问题,毕竟之前使用navicat连接mysql8也是出了好几个问题,于是便将mysql-connect-java版本由5.1.6升级为8.0.11,并修改了db.properties文件:

?
1
2
3
4
5
#数据库连接 注意 文件内不要留有空格
jdbc.driver=com.mysql.cj.jdbc.driver
jdbc.url=jdbc:mysql://localhost:3306/test?usessl=false&useunicode=true&characterencoding=utf8&servertimezone=gmt
jdbc.username=root
jdbc.password=111@test

重启项目后,一切终于正常了。。。。。。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://www.cnblogs.com/pp153/p/9220356.html

延伸 · 阅读

精彩推荐