我一直在阅读几篇文章是什么JPA (Java Persistent API)以及哪些供应商支持它(DataNucleus,JBoss Hibernate等)
我没有ORM(对象关系映射)的经验.
到目前为止我所做的是使用DTO和DAO编写自己的数据库类.到目前为止,我对我所拥有的内容感到高兴,但我想知道为什么人们使用JPA而不是包含SQL的Java文件.
对我来说,我觉得写DAO课程就像下面这样.
public class DAOUsers {
public void insertNewUser(DTO DtoUser) {
String query = "INSERT INTO users(username, address) " +
"VALUES(DtoUser.username , DtoUser.address)";
Executor.run(query);
}
}
Run Code Online (Sandbox Code Playgroud)
我已经了解到JPA使用JPQL,Java持久查询语言,它对实体对象而不是直接使用db表进行操作.
我的理解(纠正我,如果我错了)是这里的实体对象和我的DTO对象一样(有点像bean吗?)
但无论如何...... JPA真正有益于在我的文件中编写纯SQL吗?看起来像使用JPA所需的注释并使SQL不可读对我来说不是很有吸引力..
如果您需要更多说明,请告诉我,我是这个主题的新手,并希望听到一些意见.