准备在ejb3中的声明

时间:2009-08-08 09:23:25

标签: java jdbc ejb-3.0 prepared-statement

我想使用带有ejb3的预准备语句在oracle中插入数据。是否可以使用。

我试图在网上找到一些例子,但我找不到任何好的例子。

请帮我使用它。或者是否有任何其他方式在ejb3中使用参数查询(因为我们在预备语句中使用?)

谢谢和问候

2 个答案:

答案 0 :(得分:0)

非常简单:

public class YourEJB {

    @Resource(mappedName="java:/DefaultDataSource") 
    DataSource dataSource;

    // XXX: not handling exceptions       
    public void insertPerson(String name, String surname) {
        Connection connection = dataSource.getConnection();
        PreparedStatement insertPerson = connection.prepareStatement(
           "INSERT INTO PEOPLE VALUES(?,?)");
        insertPerson.setString(1, name);
        insertPerson.setString(2, surname);
        insertPerson.executeUpdate();
    }

另请查看JDBC tutorials

答案 1 :(得分:0)

如果您正在使用EJB,那么成语就是使用实体bean进行数据库交互。如果您正在使用EJB3,则应该创建一个对象并使用注释来处理数据库。使用JPA为您生成SQL。

因此,如果EJB提供所有抽象来帮助您,为什么您觉得需要回到较低级别并编写PreparedStatement?也许真正的答案是重新思考您的对象模型,并查看查询如何适合实体bean抽象。