Tất cả các hồ bơi trong JBoss đều được xử lý trong cấu hình DataSource. Here là HowTo. Ứng dụng web sẽ phải thực hiện tìm kiếm JNDI cho nguồn dữ liệu để có được kết nối cơ sở dữ liệu thay vì thực hiện một URL JDBC trực tiếp, và sau đó bạn sẽ có tổng hợp. Tuy nhiên,
Giao dịch là một câu chuyện khác.
EDIT: Đáp lại bình luận của bạn về làm thế nào điều này ảnh hưởng mã, đây là những gì nó trông giống như:
String jndiPath = "java:DataSourceJNDIName"; //The exact prefix here has a lot to do with clustering, etc., but if you are using one JBoss instance standalone, this works.
Context ctx = new InitialContext();
DataSource ds = (DataSource) PortableRemoteObject.narrow(ctx.lookup(jndiPath), DataSource.class);
Connection c = ds.getConnection();
Về mặt kỹ thuật các PortableRemoteObject.narrow là không cần thiết trong một JBoss (4.2.2 nào) cấu hình máy chủ đơn chắc chắn, nhưng nó là mã chuẩn J2EE phù hợp hơn, vì các máy chủ ứng dụng chung không phải trả về một đối tượng đúng kiểu chỉ để thực hiện một Context.lookup.
Ở trên không bao gồm các vấn đề về sử dụng tài nguyên và xử lý lỗi. Bạn phải đóng đối tượng Context đó khi bạn hoàn thành nó, và dĩ nhiên là kết nối cơ sở dữ liệu, mặc dù JBoss sẽ hét lên với bạn nếu bạn quên đóng kết nối cơ sở dữ liệu và giao dịch kết thúc và đóng nó lại cho bạn.
Dù sao, đối tượng kết nối đó có thể sử dụng được nhiều như DriverManager.getConnection (url);
Cấu hình JBoss là một phần của thỏa thuận này, có khá vài mẫu và hướng dẫn có sẵn trực tuyến. Những gì tôi quan tâm là những thay đổi có thể được yêu cầu trong cơ sở mã. Ai đó có thể xin vui lòng chỉ cho tôi một mẫu hoặc hướng dẫn, nơi tôi có thể xem làm thế nào để chúng tôi lấy một kết nối từ JBoss darasource và làm thế nào nó nên được xử lý sau đó, tức là đóng hoặc miễn phí kết nối. Cảm ơn. –