假设有下面的代码
// 所有工作的基类
@MappedSuperclass
public abstract class Work {
}
// 编写代码的工作
@Entity
public class CodeWork extends Work{
@OneToMany(mappedBy="codeWork")
private List<Employee> employees;
}
// 做界面的工作
@Entity
public class UIWork extends Work{
@OneToMany(mappedBy="uiWork")
private List<Employee> employees;
}
// 员工
@Entity
public class Employee{
@ManyToOne
@JoinColumn(name="codeWork_id", nullable=false, updatable=false)
private CodeWork codeWork;
@ManyToOne
@JoinColumn(name="uiWork_id", nullable=false, updatable=false)
private UIWork uiWork;
}
我总觉得这样做特别不好:
1) 像 private List<Employee> employees; 这个部分完全可以放到 Work 里面,但是如果放到Work里面的话mappedBy就不知道写哪个了;
2) Employee里面也是如此,Work的每个子类都要写在里面要搞死的。
请帮忙重构一下,多谢多谢。
PS:第一次发帖难免有点紧张,呵呵
分享到:
相关推荐
在Java开发中,POJO(Plain Old Java Object)类是一种简单的对象模型,通常用于表示数据库中的实体或业务逻辑中的对象。POJO类不依赖于任何框架,但当我们使用ORM(Object-Relational Mapping)框架如Hibernate时,...
8. **数据传输对象(DTO)和值对象(VO)**:在某些情况下,POJO类会被转换成DTO或VO,以便在不同的系统之间安全地传递数据。DTO和VO通常包含了对外界暴露的数据,但可能不包含所有POJO的属性,以保护内部数据的安全...
1.1.1版本 简单数据库逆向工程 自动生成POJO类 JAVA WEB jsp
**JavaBean**,是一种遵循特定规范的Java类,最初由Sun Microsystems(现在是Oracle的一部分)提出,旨在用于构建可重用的组件,特别是在Web应用和企业级应用中。JavaBean不仅需要实现`Serializable`接口,还要求...
总的来说,"实体类POJO生成器"是一种强大的开发辅助工具,它可以显著提升开发效率,减少手动编码的工作量,同时确保代码的质量和一致性。无论是小型项目还是大型企业级应用,都有其广泛的应用场景。通过这个工具,...
总结来说,通过MyEclipse生成的Hibernate映射文件和POJO类,我们可以轻松地在Java应用中处理"订单信息"数据,而无需手动编写大量数据库操作代码。这种面向对象的方式使得代码更易于理解和维护,同时保持了与数据库的...
在Java编程中,Pojo(Plain Old Java Object)是一种简单的对象模型,通常用于表示数据实体。Map接口则是Java集合框架的一部分,它提供了键值对的数据存储方式,方便数据的存取。将Pojo对象转换为Map,可以简化数据...
POJO(Plain Old Java Object)是一种简单的 Java 对象,它是 Java 语言中的一种基本组件。POJO 类是指不继承自任何特殊的类,也不实现任何特殊的接口的 Java 类。POJO 类通常用于存储和传输数据。 在使用 ...
为了提高开发效率,开发者经常使用Hibernate Tools来反向工程数据库模式,自动生成POJO(Plain Old Java Object)类,这些类可以直接用于数据操作。本文将详细讲解如何在Eclipse中配置Hibernate Tools以实现注解方式...
在Java开发中,POJO(Plain Old Java Object)是一个简单的对象类,不包含任何特定框架的规范或约定,主要用于封装数据。"数据表生成POJO"这个主题涉及到将数据库中的表结构映射到Java世界中的类,使得我们可以方便...
- 支持生成包含主键的POJO类,自动处理自增主键。 - 支持生成ToString、Equals和HashCode方法,便于调试和比较对象。 - 能够生成带有注释的代码,帮助理解字段含义。 - 可能有集成其他Mybatis相关的功能,如Mapper ...
在Java开发中,JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,广泛用于前后端数据传输。Jackson是Java领域内最流行的JSON处理库之一,它提供了强大的JSON解析、生成以及对象绑定功能。本篇将...
3.POJO类中的成员变量类型必需为封装类。 4.seter和geter方法方法名就是在成员变量名首字母大写后加上set或get。 5.如果要使用延迟加载,POJO类必需继承com.jplus.basetable.BaseTable。 6.如果要使用延迟加载,...
在开发过程中,手动创建所有对应的Java POJO(Plain Old Java Object,简单Java对象)类可能会非常耗时,尤其是在面对大型数据库时。为此,Hibernate 提供了反向工程(Reverse Engineering)工具,可以自动生成基于...
做Maven项目工程时,往往需要使用Pojo类来封装查询的sql信息 PojoCreator4j可以解决需要不断手敲字段的机械录入工作特别适用于字段多、类型多、数据表多的情况
在SSM框架中,我们通常创建一个POJO类,该类的属性与数据库表字段一一对应,这样可以方便地进行数据持久化操作。 例如,假设有一个用户表,包含id、username和password三个字段,我们可以创建如下的POJO类: ```...
此外,合理设计实体类的继承结构,利用集合类型处理一对多、多对一关系,也是提高代码可维护性和性能的关键。 总之,Hibernate 3.0的POJO类生成功能大大简化了Java开发者与数据库交互的工作,通过逆向工程将数据库...
总之,`ExportDB.java`是一个实用的开发工具,它可以帮助开发者快速地生成与数据库表对应的Java POJO类,从而节省手动编写这些类的时间,提高开发效率。在实际项目中,这样的工具类往往会被集成到构建脚本或者IDE...
标题中的“pojo生成器”指的是一个工具,用于自动生成Java类(POJO,Plain Old Java Object),这些类通常作为数据库表的模型对象,映射数据库中的数据。在Java开发中,POJO类是无特殊约束的普通Java对象,它们在...