これが私の構成です。
そのようなメソッドは見つかりませんでしたが、Java ドキュメントと Util ファイルの両方に存在します。hibernate 3 と 4 でクロス構成されていることをどこかで読みました。これはわかりません…</p>
<!DOCTYPE hibernate-configuration SYSTEM
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/datacenter</property>
<property name="connection.username">root</property>
<property name="connection.password">admin</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="current_session_context_class">thread</property>
<property name="show_MySql">TRUE</property>
<property name="format_sql">TRUE</property>
<property name="jboss.as.jpa.providerModule">hibernate3-bundled</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property>
<!-- List of annotated classes-->
<!-- Associations -->
<!-- One to one -->
<mapping class="Emp_Timecard" />
<mapping class="maindoor" />
<mapping class="serverroom" />
<mapping class="timesheet" />
<mapping class="hibernatepojos.Resource_list"/>
</session-factory>
</hibernate-configuration>
これは私のUtilファイルです:
package hibernatedata;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
public class HibernateUtil {
private static SessionFactory sessionFactory;
private static AnnotationConfiguration config1;
static {
config1 = (AnnotationConfiguration) new AnnotationConfiguration()
.configure("hibernate.cfg.xml");
}
public static SessionFactory getSessionFactory() {
if (sessionFactory == null) {
createSessionfactory();
}
return sessionFactory;
}
private static void createSessionfactory() {
sessionFactory = config1.buildSessionFactory();
}
public static Session openSession() {
return getSessionFactory().getCurrentSession();
}
public static void closeSessionFactory() {
// getSessionFactory().close();
}
public static void save(Object o) {
Session s = openSession();
System.out.println("kejrkvg");
s.beginTransaction();
s.save(o);
s.getTransaction().commit();
// s.close();
// s.clear();
if (s.isOpen()) {
s.close();
}
closeSessionFactory();
}
public static void delete(Object o) {
Session s = openSession();
s.beginTransaction();
s.delete(o);
s.getTransaction().commit();
// s.close();
}
public static <T> T load(Class<T> clazz, int id) {
Session s = openSession();
s.beginTransaction();
T t = clazz.cast(s.load(clazz, id));
// s.getTransaction().commit();
return t;
}
public static void update1(Object o) {
Session s = openSession();
s.beginTransaction();
s.update(o);
s.getTransaction().commit();
// s.close();
}
}