2012-12-03 72 views
1

我只想爲DAO層使用EJB3和DAO對象。我想避免JPA,因爲它是可能的。EJB3沒有JPA

使用情況如下:

  1. 我的EJB3調用DAOObject.putOrder()
  2. DAOObject使用Spring jdbcTemplate查詢數據庫。

這可能嗎?交易範圍如何受到影響。

請舉個例子吧。

回答

2

您可以在沒有JPA的情況下自由使用EJB。只是不要使用它:-)。

事務在連接級別由DataSource管理,因此您可以自由使用JDBC和JPA,即使在一個項目中也是如此。當然,原始JDBC也應該可以工作。請記住,默認情況下,每個EJB會話bean方法都是事務性的。

1

當然這是可能的。在DAO中注入數據源(使用@Resource)註釋,從此注入的數據源構建JdbcTemplate,並在DAO方法內使用JdbcTemplate。 DataSource將返回一個連接到當前JTA事務的連接。