Hibernate MySQL 数据库 使用别名 报 Column * Not Found

时间:2023-09-04 22:21:30
Hibernate MySQL 数据库 使用别名 报 Column * Not Found

使用Hibernate 查询MySQL数据表的时候报 Column Not Found ,原因是MySQL的驱动不支持别名, 解决方案如下,在连接参数中加上 useOldAliasMetadataBehavior=true 属性

jdbc.url=jdbc:mysql://127.0.0.1:3306/db?useUnicode=true&characterEncoding=utf8&useOldAliasMetadataBehavior=true

下面列出MySQL连接时几个较为重要的参数:

  • user 数据库用户名(用于连接数据库)
  • password 用户密码(用于连接数据库)
  • useUnicode 是否使用Unicode字符集
  • characterEncoding 当useUnicode设置为true时,指定字符编码
  • autoReconnect 当数据库连接异常中断时,是否自动重新连接
  • autoReconnectForPools 是否使用针对数据库连接池的重连策略
  • failOverReadOnly 自动重连成功后,连接是否设置为只读
  • maxReconnects autoReconnect设置为true时,重试连接的次数
  • initialTimeout autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒
  • connectTimeout 和数据库服务器建立socket连接时的超时,单位:毫秒,0表示永不超时,适用于JDK 1.4及更高版本
  • socketTimeout socket操作(读写)超时,单位:毫秒。 0表示永不超时 0 3.0.1