我只想将EJB3和DAO对象用于DAO层。我想尽可能避免使用JPA。
用例如下:
DAOObject.putOrder()
DAOObject
使用Spring jdbcTemplate
来查询数据库。这可能吗?交易范围如何受到影响。
请举个例子。
答案 0 :(得分:2)
您可以在没有JPA的情况下使用EJB。只是不要使用它: - )。
事务由DataSource
在连接级别进行管理,因此即使在一个项目中也可以自由使用JDBC和JPA。当然,原始JDBC也应该可以工作。请记住,默认情况下,每个EJB会话bean方法都是事务性的。
答案 1 :(得分:1)
当然有可能。在DAO中注入一个DataSource(使用@Resource
)注释,从这个注入的DataSource构造一个JdbcTemplate,并在DAO方法中使用JdbcTemplate。 DataSource将返回一个与当前JTA事务关联的Connection。