Hibernate 中的命名约定

发布于 2024-09-10 13:40:43 字数 125 浏览 5 评论 0 原文

谁能告诉我 Hibernate 开发人员为 DAO calass、Sesgleton 类命名的命名约定是什么,这些类创建 Single SessionFactory 并通过静态方法重新启动 Session、hibernate 映射文件等

could any one please tell me what is the naming convention the Hibernate developers fallowing to give names for DAO calass, Sesgleton class which create Single SessionFactory and retuns Session throug a static method, hibernate mapping files etc

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦言归人 2024-09-17 13:40:43

这是非常主观的,但这是我使用的:

DAO 类的名称

对于 Order 实体,我使用 OrderDao 作为接口,使用 HibernateOrderDao 作为 Hibernate 实现(基于 JPA 的实现将是 <代码>JpaOrderDao等)。

创建 Single SessionFactory 并通过静态方法重新启动会话的类

我使用传统的 HibernateUtil (您会在 Hibernate 文档、文献等中找到许多参考资料)。这是示例。 “买者自负”示例应用程序中有更复杂的版本

  • hibernate 映射文件

名为 foo.bar.Foo 的类将由 foo/bar/Foo.hbm.xml 文件映射。首先,这使得映射易于组织、查找和简化维护。其次,这允许使用强类型 Configuration#addClass(Class) 方法(具有重构能力)。

This is highly subjective but here is what I use:

names for DAO class

For an Order entity, I use OrderDao for the interface and HibernateOrderDao for the Hibernate implementation (a JPA based implementation would be JpaOrderDao, etc).

class which create Single SessionFactory and retuns Session throug a static method

I use the traditional HibernateUtil (and you'll find many references in the Hibernate documentation, literature, etc). Here is an example. There is a more sophisticated version in the Caveat Emptor sample app.

  • hibernate mapping files

A class named foo.bar.Foo would be mapped by a foo/bar/Foo.hbm.xml file. First, this makes mappings easy to organize, to find and ease the maintenance. Second, this allows to use the strongly typed Configuration#addClass(Class) method (which is refactoring resistant).

闻呓 2024-09-17 13:40:43

我只能从我相当有限的经验和角度来回答,但我对我们的做法感到满意并习惯了。一般来说,我们使用一个名为DatabaseHelper的抽象类,它有很多静态方法。示例:

DatabaseHelper.getSession() 返回一个 Session。两种方法
DatabaseHelper.commitTransaction()

DatabaseHelper.beginTransaction() 处理事务。

Bean 没有命名约定,但都

public abstract class HibernateBean<T> implements Serializable

像这样

@Entity
@Table(name = "table_name")
public class TableEntry extends HibernateBean<TableEntry> {

扩展。 HibernateBean 包含一些方法,如 getId() 来检索 Hibernate 生成的 id。

I can only answer from my rather limited experience and perspective, but I'm happy with and used to the way we do it. In general, we use an abstract class called DatabaseHelper that has a lot of static methods. Examples:

DatabaseHelper.getSession() returns a Session. The two methods
DatabaseHelper.commitTransaction()
and
DatabaseHelper.beginTransaction() handle the transactions.

Beans have no naming convention, but all extend

public abstract class HibernateBean<T> implements Serializable

Like this

@Entity
@Table(name = "table_name")
public class TableEntry extends HibernateBean<TableEntry> {

The HibernateBean contains some methods like getId() to retrieve the Hibernate-generated id.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文