hibernate配置文件和SessionFactory
hibernate configuration file and SessionFactory
我现在正在努力找出为什么会收到此错误消息。
我是第一次使用休眠,所以我可能配置了错误。
IMO 这可能是这 3 个问题之一。
- 我的 hibernate.cfg.xml 文件在错误的地方 "place" 但我没有更改类路径并且 hibernet 文件在 src 文件夹中。
我在创建新 SessionFactory 的行收到警告 SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
我可以从 buildSessionFactory()
取回 2 种类型
- 会话工厂
- 配置
我当然选择了 SessionFactory,但也许我忽略了一些东西。
package hibernate;
import java.util.Date;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import persistencelayer.*;
public class HibernateTest {
public static void main(String[] args) {
TestUserDetails user2 = new TestUserDetails();
user2.setUserId(1);
user2.setUserName("First User");
user2.setAddress("First User's address");
user2.setJoinedDate(new Date());
user2.setDescription("Description of the user goes here");
try {
//SessionFactory wird erzeugt, mit der Konfiguration von Hibernate
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
Session session = sessionFactory.openSession();
session.beginTransaction();
// session.save(user);
session.save(user2);
session.getTransaction().commit();
} catch (Exception e) {
System.out.println("Fehler beim erstellen der SessionFactory");
}
}
}
`
- 也可能是我的 hibernate.cfg.xml 文件配置错误。出于安全原因,我正在删除用户名、密码和主机。
自 google 以来,我一直在努力寻找解决方案,但它根本不起作用。
顺便说一句,我正在使用 Oracle 作为数据库。
建议将不胜感激。在此先感谢您,很抱歉 post :).
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@host:port:ssid:</property>
<property name="hibernate.connection.username">name</property>
<property name="hibernate.connection.password">password</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="hibernate.connection.pool_size">1</property>
<!-- SQL dialect -->
<property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
<!-- Disable the second-level cache -->
<property name="hibernate.cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property>
<!-- Echo all executed SQL to stdout -->
<property name="hibernate.show_sql">true</property>
<!-- Drop and re-create the database schema on startup -->
<property name="hibernate.hbm2ddl.auto">create</property>
<!-- Names the annotated entity class -->
<mapping class="persistencelayer.Project"/>
<mapping class="persistencelayer.User"/>
<!-- <mapping class="persistencelayer.Employer"/>
<mapping class="persistencelayer.IndividualTest"/>
<mapping class="persistencelayer.ObjectType"/>
<mapping class="persistencelayer.TestChamber"/>
<mapping class="persistencelayer.TestMethod"/>
<mapping class="persistencelayer.TestUserDetails"/> -->
</session-factory>
我发现问题出在 hibernate.cfg.xml 文件中。
我从官方休眠 4.3.9 文件中复制了它。
这一段错了。
<property name="hibernate.connection.password" />password</property>
密码左侧不应有“/”。
我现在正在努力找出为什么会收到此错误消息。 我是第一次使用休眠,所以我可能配置了错误。
IMO 这可能是这 3 个问题之一。
- 我的 hibernate.cfg.xml 文件在错误的地方 "place" 但我没有更改类路径并且 hibernet 文件在 src 文件夹中。
我在创建新 SessionFactory 的行收到警告
取回 2 种类型SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
我可以从buildSessionFactory()
- 会话工厂
- 配置
我当然选择了 SessionFactory,但也许我忽略了一些东西。
package hibernate;
import java.util.Date;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import persistencelayer.*;
public class HibernateTest {
public static void main(String[] args) {
TestUserDetails user2 = new TestUserDetails();
user2.setUserId(1);
user2.setUserName("First User");
user2.setAddress("First User's address");
user2.setJoinedDate(new Date());
user2.setDescription("Description of the user goes here");
try {
//SessionFactory wird erzeugt, mit der Konfiguration von Hibernate
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
Session session = sessionFactory.openSession();
session.beginTransaction();
// session.save(user);
session.save(user2);
session.getTransaction().commit();
} catch (Exception e) {
System.out.println("Fehler beim erstellen der SessionFactory");
}
}
}
`
- 也可能是我的 hibernate.cfg.xml 文件配置错误。出于安全原因,我正在删除用户名、密码和主机。
自 google 以来,我一直在努力寻找解决方案,但它根本不起作用。 顺便说一句,我正在使用 Oracle 作为数据库。
建议将不胜感激。在此先感谢您,很抱歉 post :).
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@host:port:ssid:</property>
<property name="hibernate.connection.username">name</property>
<property name="hibernate.connection.password">password</property>
<!-- JDBC connection pool (use the built-in) -->
<property name="hibernate.connection.pool_size">1</property>
<!-- SQL dialect -->
<property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
<!-- Disable the second-level cache -->
<property name="hibernate.cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property>
<!-- Echo all executed SQL to stdout -->
<property name="hibernate.show_sql">true</property>
<!-- Drop and re-create the database schema on startup -->
<property name="hibernate.hbm2ddl.auto">create</property>
<!-- Names the annotated entity class -->
<mapping class="persistencelayer.Project"/>
<mapping class="persistencelayer.User"/>
<!-- <mapping class="persistencelayer.Employer"/>
<mapping class="persistencelayer.IndividualTest"/>
<mapping class="persistencelayer.ObjectType"/>
<mapping class="persistencelayer.TestChamber"/>
<mapping class="persistencelayer.TestMethod"/>
<mapping class="persistencelayer.TestUserDetails"/> -->
</session-factory>
我发现问题出在 hibernate.cfg.xml 文件中。
我从官方休眠 4.3.9 文件中复制了它。 这一段错了。
<property name="hibernate.connection.password" />password</property>
密码左侧不应有“/”。