JPA如何实际运作?

时间:2011-06-10 03:49:32

标签: java java-ee

如果你在项目中使用它,JPA如何实际工作?当1000个请求同时获得相同的数据访问时,它如何处理请求的响应?

1 个答案:

答案 0 :(得分:7)

JPA基本上是一种使用ORM技术的抽象。如果将各种模型类映射到数据库,则JPA可以a)生成适当的SQL查询/更新,b)将结果集转换为模型类。 JPA还包括缓存和摘要事务处理。

最后它并没有真正做任何神奇的事情 - 一切都最终通过你的JDBC驱动程序,成为原始SQL并返回JDBC结果集等。它只允许你隐藏很多代码,只是将你的模型类作为普通旧Java对象(PO​​JO)使用,其中设置属性触发UPDATE并获取属性触发SELECT(将所有内容和组织缓存到事务中)允许比通过简单的一对一实现获得更好的性能。

所以你的第二个问题没有实际意义 - 如果有1000个请求消失,那么主要是DATABASE SERVER必须扩展并处理这个问题,而不是JPA。 (不可否认,它必须处理将它们发送出去,然后将它们编组为java对象)