JPA生成表问题

mazhengning188 2012-05-23 06:09:26

在@Table那一行出现The table TestUser cannot be found on the database这个错误,我是要让其在代码运行时产生表
package com.testjpa;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@ Entity
@Table(name="TestUser",schema="SCOTT" )
public class TestUser implements java.io.Serializable{

private String username;
private String pwd;
private String usermail;

// Constructors

/** default constructor */
public TestUser() {
}

/** minimal constructor */
public TestUser(String username) {
this.username = username;
}

/** full constructor */
public TestUser(String username, String pwd, String usermail) {
this.username = username;
this.pwd = pwd;
this.usermail = usermail;
}

// Property accessors
@Id
@Column(name = "USERNAME", unique = true, nullable = false, length = 30)
public String getUsername() {
return this.username;
}

public void setUsername(String username) {
this.username = username;
}

@Column(name = "PWD", length = 30)
public String getPwd() {
return this.pwd;
}

public void setPwd(String pwd) {
this.pwd = pwd;
}

@Column(name = "USERMAIL", length = 30)
public String getUsermail() {
return this.usermail;
}

public void setUsermail(String usermail) {
this.usermail = usermail;
}
}
配置文件、
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">

<persistence-unit name="TestJPAPU" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>com.testjpa.TestUser</class>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update" />
<property name="hibernate.hbm2ddl.auto" value="create"/>
<property name = "hibernate.connection.driver_class" value = "oracle.jdbc.OracleDriver"/>
<property name = "hibernate.connection.url" value = "jdbc:oracle:thin:@127.0.0.1:1521:ORCL"/>
<property name = "hibernate.connection.username" value = "scott"/>
<property name = "hibernate.connection.password" value = "123"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle9Dialect"/>
<property name="hibernate.show_sql" value="true"/>
</properties>
</persistence-unit>

</persistence>
测试代码
package com.testjpa;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

import org.junit.BeforeClass;
import org.junit.Test;

public class JunitTest {
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}

//测试
@Test public void save()
{
EntityManagerFactory emf = Persistence.createEntityManagerFactory("TestJPAPU");
emf.close();
}


}
...全文
105 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zuxianghuang 2012-05-23
  • 打赏
  • 举报
回复
应该没问题,
你看一下生成表没,
报那个不一定就是出错了
<property name="hibernate.hbm2ddl.auto" value="update" />
<property name="hibernate.hbm2ddl.auto" value="create"/>
这个一个就好了吧

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧