为什么使用 JPA 而不是使用 JDBC 编写 SQL 查询?
我一直在阅读几篇文章,什么是支持它以及哪个供应商(DataNucleus,JBoss Hibernate等)JPA (Java Persistent API)
我没有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);
}
}
我了解到JPA使用JPQL,Java持久查询语言,它对实体对象而不是直接对数据库表进行操作。
我的理解(如果我错了,请纠正我)是这里的实体对象与我的DTO对象相同(有点像bean?
但无论如何..JPA与在我的文件中编写纯SQL相比,有什么真正的好处?似乎使用JPA所需的注释并使SQL不可读对我来说并不真正有吸引力。
如果您需要更多澄清,请告诉我,我是这个话题的新手,想听听一些意见。