@Table(name="problem",schema = "root") 的schema属性

用idea的hibernate 插件生成的实体类会的@Table注解会有schema属性,后来我自己又写了一个实体类,发现hibernate不能帮我自动建表,于是自己又建了表。这时查询的时候就出问题了,查出来的对象都是空的。但是可以打印出查询语句并且可以在数据库手动可以查出数据。后来注意到自己建的实体类和工具生成的相比,没有schema属性。

网上查到:schema属性是指查询的用户,即使连接数据库的用户名不是schema指定的用户,还是会用schema用户查询。

相关文章:
http://blog.csdn.net/z69183787/article/details/23521407

看来schema属性, 是用来解决命名冲突的,在mysql中指的是数据库名,在进行数据库的查询时,所有的查询都会翻译成schema.tablename。

你可能感兴趣的:(数据库,hibernate)