用 hibernate annotation 设定如下信息:
[code="java"]
@Entity
@Table(name = "tb_test")
public class TestEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ID_")
private Long id;
@Column(name = "name", length = 50)
private String name;
/***get set**/
}
[/code]
[color=red]但是没有生成数据库表,并且在执行一个操作或者查询的时候报:Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 'compositesys.tb_test' 无效。(compositesys是我的数据库名)
是不是可以在sql server中设置解决这个问题呢?
[/color]
[color=blue]在用xml文件配置的时候只要这样配置就能够解决这个问题(增加了schema="dbo",因为sql server里面登录的用户不一定有操作表的权限,默认是dbo):
[/color]
[code="xml"]
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
[/code]