我有一个基于Spring MVC + Security + Hibernate构建的项目。Hibernate和jdbc版本是:
<!-- Hibernate -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.3.7.Final</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.3-1102-jdbc41</version>
</dependency>
当我尝试通过 Spring 安全表单登录时,我收到这个众所周知的错误。
jan 13, 2015 12:51:05 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: operator does not exist: character varying = bytea
我已经读到由于PostgreSQL和驱动程序版本的差异而可能发生,但对我来说似乎没问题。
外键错误。使用 Hibernate/JPA 时,外键应始终指向另一个表的 id(主键)。您的外键引用username
但它应该引用id
。或者,您可以在表中username
主键users
并相应地更改实体注释。