好的我现在花了2天多时间寻找有关创建hibernate项目的教程和指南,但是我无法让它工作,
所以我有两个主要问题
我对如何使用hibernate框架的假设是正确的吗?
如果是,我该如何继续每一步?
以下是我的假设
1a上。我完成了数据建模步骤,并准备好在应用程序中使用的模式。 (完成)
1b中。然后,我创建对象关系映射,意味着创建要与每个关系映射的物理类。 (我使用NetBeans创建了这些类:New->来自数据库的实体类。这是否可行或者我需要以某种方式使用hibernate来创建这些类?)
1c上。我需要在我的应用程序的类路径和一些配置/设置文件
中使用hibernate jar1D。我加载这些配置/设置文件
1E。开始使用休眠
现在我看到的所有教程都没有详细说明如何执行这些步骤,我有很多表,我不能手动创建所有类。任何人都可以给出一个简洁的解决方案吗?类似的东西:
for 1b使用此命令创建对象类: hibernate-object.jar -db -classes
1c创建设置/配置文件使用so / so命令/ plugin
1d这就是你在代码中加载这些文件的方式
答案 0 :(得分:0)
有几种方法可以开始使用hibernate,你的方式(首先创建数据库表和关系)是一种可行的方法。
我首选的是首先使用注释创建Java类,然后让Hibernate为您设置数据库表。
第三种可能性是创建对象关系映射XML,并让Hibernate为您生成Java类AND数据库表(中间)。
无论您选择哪种方式,一个有用的起点是创建一个HibernateUtil
类,如下所示:
public class HibernateUtil {
private static final SessionFactory sessionFactory = buildSessionFactory();
private static SessionFactory buildSessionFactory() {
try {
// Create the SessionFactory from hibernate.cfg.xml
return new Configuration().configure("myproject.cfg.xml").buildSessionFactory();
} catch (Throwable ex) {
// Make sure you log the exception, as it might be swallowed
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
public static void shutdown() {
// Close caches and connection pools
getSessionFactory().close();
}
}
这使得在需要的地方轻松获取SessionFactory
。这种方法只是为了让你开始而不建议用于生产,因为它不是很可扩展,我考虑Spring集成。
答案 1 :(得分:0)
首先,我将尝试使用一个简单的示例来设置Hibernate框架:
我建议您构建自己的ORM类,不要将此任务委托给程序(Netbeans或类似程序),因为这些程序会添加大量无用的代码。如果你必须使用一个程序,因为你有很多表,你必须逐个检查生成的ORM类。
P.S。:对不起我的英语,我还在学习......
答案 2 :(得分:0)
对于步骤1B,您无需使用NetBeans的任何支持工具创建它,我建议您手动编写这些类,因为在调试应用程序时很容易回想起这种方式。 你会在网上找到很多exact tutorials。大多数人都这样:
1)下载一套官方的Hibernate JARs +数据库驱动程序JAR(这将自定义为您正在使用的数据库)
2)将这些库添加到项目的构建路径中。
3)开始使用Hibernate
如果您使用NetBeans不是最重要的,我建议您切换到Eclipse,因为您很难找到使用NetBeans的很少的教程(继续)。