java - com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure ,关于mybatis
问题描述
我用的是java的mybatis,实现了接口IBaseBusinessQuery,映射文件设置方法->T findOne(K var1)。
我怀疑变量名的原因,所以,我重写了这个方法-> @Override T_Permission findOne(String key);,但是,结果是这样的。
实现的接口
public interface IBaseBusinessQuery<T, K> {
T findOne(K var1);
List<T> findAll();
}
道层
@Repository("permissionDao")
public interface PermissionDao extends IBaseDao<T_Permission, String>, IBaseBusinessQuery<T_Permission,String> {
}
dao层修改后
@Repository("permissionDao")
public interface PermissionDao extends IBaseDao<T_Permission, String>, IBaseBusinessQuery<T_Permission,String> {
@Override
T_Permission findOne(String key);
}
mybatis 映射文件
<select id="findOne" resultType="T_Permission">
select * from t_permission where `ps_id` = #{key}
</select>
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 从服务器成功接收到的最后一个数据包是 6,464 毫秒前。最后一个成功发送到服务器的数据包是在 22 毫秒前。
解决方案
数据库版本可能有影响。对我来说,当 mysql 版本是 5.1.14 时,错误就像你的一样。但是我把mysql版本改成8.0.17,所有问题都解决了!
推荐阅读
- c++ - 通过引用传递参数时模板的显式实例化
- aws-step-functions - 在 SAM 模板中定义的本地运行 Step Function
- python-3.x - 在时间序列线性回归中获取第二天的预测值
- javascript - 如何更新第二个轴的数据 plotly javascript?
- python - ValueError:发现样本数量不一致的输入变量:[6, 1]
- javascript - How to use directive for external link in angular?
- python - Pandas 从 CSV 日期时间读取 - 日期和时间格式问题
- php - 将windows的xampp数据库文件传输到linux的lampp时出错
- php - Docker 映像不会连接到 MySQL Workbench
- oracle - 嵌套表在 Oracle 中提供了意外的表