我总是看到更多的 Java Web 应用程序使用 ORM 框架将实体映射到数据库,并且显然使对象的序列化更容易。
这看起来不错,通常涉及很多代码,例如:
@Entity
@Table(name="Flight")
public class Flight implements Serializable {
Long id;
@Id
public Long getId() { return id; }
public void setId(Long id) { this.id = id; }
}
上面将 Flight POJO 映射到名为 Flight 的数据库表,这对于从头开始设计的新应用程序来说似乎很合理。
但是,当必须使用遗留表和逻辑开发应用程序时,使用 JPA 之类的 ORM 解决方案是否可行?
换句话说,可以同时使用 ORM 表和遗留表吗?如何将遗留表映射到 POJO?
我见过类似的问题,比如遗留表到 jpa2 实体并从数据库生成对象 @entities但是他们都在谈论将表“逆向工程”到对象的工具。不应该有一个选项可以手动完成,一旦正确映射,让 ORM 框架管理它们?这一切似乎都是我所要求的黑客行为,但是在我看来,将遗留数据库转换为 ORM 管理的数据库应该是规则。
谢谢