Phiên bản không được hỗ trợ:7.4 / 7.3
Tài tỷ lệ kèo bóng đá 88 này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

5.9. Nhóm kết nối và dữ tỷ lệ kèo bóng đá 88

5.9.1. JDBC, JDK phiên bản hỗ trợ

JDBC 2 đã giới thiệu các tính năng gộp tỷ lệ kèo bóng đá 88 tiêu chuẩn trong một API bổ trợ được gọi làJDBC2.0 Gói tùy chọn (còn được gọi làJDBC2.0 Phần mở rộng tiêu chuẩn). Những cái này Các tính năng đã được đưa vào API Core JDBC 3. ThePostgreSQL JDBCTrình điều khiển hỗ trợ các tính năng này vớiJDK1.3.x tỷ lệ kèo bóng đá 88 hợp vớiJDBC2.0 Tùy chọn Bưu kiện (JDBC2) hoặc vớiJDK1.4+ (JDBC3). Hầu hết các máy chủ ứng tỷ lệ kèo bóng đá 88 bao gồm TheJDBC2.0 Tùy chọn Gói, nhưng nó cũng có sẵn riêng biệt với mặt trờiJDBCTải xuống địa điểm.

5.9.2. API gộp tỷ lệ kèo bóng đá 88 JDBC

TheJDBCAPI cung cấp a Máy khách và giao diện máy chủ để tỷ lệ kèo bóng đá 88 gộp. Các Giao diện máy khách làjavax.sql.datasource, đó là ứng dụng nào Mã thường sẽ sử dụng để có được cơ sở dữ tỷ lệ kèo bóng đá 88 gộp sự liên quan. Giao diện máy chủ làjavax.sql.connectionpooldatasource, đó là cách Hầu hết các máy chủ ứng tỷ lệ kèo bóng đá 88 sẽ giao tiếp vớiPostgreSQL JDBCtrình điều khiển.

Trong môi trường máy chủ ứng tỷ lệ kèo bóng đá 88, máy chủ ứng tỷ lệ kèo bóng đá 88 Cấu hình thường sẽ tham khảoPOSTGRESQL ConnectionPooldataSourceThực hiện, trong khi Mã thành phần ứng tỷ lệ kèo bóng đá 88 thường sẽ có đượcDataSourceThực hiện được cung cấp bởi Máy chủ ứng tỷ lệ kèo bóng đá 88 (không phải bởiPostgreSQL).

Trong một môi trường không có máy chủ ứng tỷ lệ kèo bóng đá 88,PostgreSQLcung cấp hai triển khaiDataSourcemà an Ứng dụng có thể sử dụng trực tiếp. Một triển khai thực hiện kết nối gộp, trong khi cái khác chỉ đơn giản là cung cấp quyền truy cập vào Kết nối cơ sở dữ tỷ lệ kèo bóng đá 88 thông quaDataSourceGiao diện mà không có bất kỳ gộp. Lại, Những triển khai này không nên được sử tỷ lệ kèo bóng đá 88 trong một ứng tỷ lệ kèo bóng đá 88 môi trường máy chủ trừ khi máy chủ ứng tỷ lệ kèo bóng đá 88 không Hỗ trợConnectionPooldataSourcegiao diện.

5.9.3. Máy chủ ứng tỷ lệ kèo bóng đá 88: ConnectionPooldataSource

PostgreSQLBao gồm một việc thực hiệnConnectionPooldataSourcechoJDBC2 và một choJDBC3:

Bảng 5-1. ConnectionPooldataSource Triển khai

JDBC lớp triển khai
2 org.postgresql.jdbc2.optional.connectionpool
3 org.postgresql.jdbc3.jdbc3connectionpool

Cả hai triển khai đều sử tỷ lệ kèo bóng đá 88 cùng một sơ đồ cấu hình.JDBCYêu cầu rằng AConnectionPooldataSourceđược cấu hình thông qua các thuộc tính javabean, do đó có các phương thức GET và đặt cho Mỗi thuộc tính này:

Bảng 5-2. ConnectionPooldataSource Thuộc tính cấu hình

thuộc tính loại Mô tả
servername chuỗi PostgreSQLMáy chủ máy chủ cơ sở dữ tỷ lệ kèo bóng đá 88
Databasename chuỗi PostgreSQLTên cơ sở dữ tỷ lệ kèo bóng đá 88
PortNumber int TCP/IPCổng màPostgreSQLMáy chủ cơ sở dữ tỷ lệ kèo bóng đá 88 đang nghe (hoặc 0 để sử dụng Cổng mặc định)
user chuỗi Người dùng đã sử dụng để tạo kết nối cơ sở dữ tỷ lệ kèo bóng đá 88
Mật khẩu chuỗi Mật khẩu được sử dụng để tạo kết nối cơ sở dữ tỷ lệ kèo bóng đá 88
DefaultAutoCommit Boolean tỷ lệ kèo bóng đá 88 các kết nối có nên bật AutoCommit hoặc bị vô hiệu hóa khi chúng được cung cấp cho người gọi. Các Mặc định làSai, để vô hiệu hóa AutoCommit.

Nhiều máy chủ ứng tỷ lệ kèo bóng đá 88 sử tỷ lệ kèo bóng đá 88 cú pháp kiểu thuộc tính để Định cấu hình các thuộc tính này, vì vậy sẽ không phải là bất thường khi nhập Thuộc tính dưới dạng khối văn bản.

Ví dụ 5-5.ConnectionPooldataSourceCấu hình Ví dụ

Nếu máy chủ ứng tỷ lệ kèo bóng đá 88 cung cấp một khu vực để nhập Tất cả các thuộc tính, chúng có thể được liệt kê như thế này:

servername = localhost
DataBasename = test
người dùng = testuser
Mật khẩu = testPassword

Hoặc, được phân tách bằng dấu chấm phẩy thay vì newlines, như cái này:

servername = localhost; databasename = test; user = testuser; password = testPassword

5.9.4. Ứng tỷ lệ kèo bóng đá 88: DataSource

PostgreSQLBao gồm hai triển khaiDataSourcechoJDBC2 và hai choJDBC3. Sự gộp chung Việc triển khai không thực sự tỷ lệ kèo bóng đá 88 gần như máy khách gọiĐóngPhương pháp, nhưng thay vào đó trả lại các kết nối về một nhóm có sẵn Kết nối cho các khách hàng khác sử dụng. Điều này tránh bất kỳ chi phí nào kết nối mở và đóng liên tục, và cho phép một Số lượng lớn khách hàng để chia sẻ một số lượng nhỏ cơ sở dữ tỷ lệ kèo bóng đá 88 kết nối.

Việc triển khai bộ dữ tỷ lệ kèo bóng đá 88 gộp được cung cấp ở đây không phải là không Các tính năng giàu có nhất trên thế giới. Trong số những thứ khác, Kết nối không bao giờ đóng cho đến khi bản thân nhóm được đóng lại; Không có cách nào để thu nhỏ hồ bơi. Là tốt, kết nối được yêu cầu cho người dùng không phải người dùng được cấu hình mặc định là không gộp lại. Nhiều máy chủ ứng dụng cung cấp nâng cao hơn các tính năng gộp và sử dụngConnectionPooldataSourceThực hiện thay vì.

Bảng 5-3. Triển khai dữ tỷ lệ kèo bóng đá 88

JDBC gộp lớp thực hiện
2 Không org.postgresql.jdbc2.optional.simpledatasource
2 org.postgresql.jdbc2.optional.poolingdatasource
3 không org.postgresql.jdbc3.jdbc3simpledatasource
3 org.postgresql.jdbc3.jdbc3poolingdatasource

Tất cả các triển khai sử tỷ lệ kèo bóng đá 88 cùng một sơ đồ cấu hình.JDBCYêu cầu rằng ADataSourceĐược cấu hình qua Javabean các thuộc tính, do đó có các phương thức GET và đặt cho từng của cải.

Bảng 5-4. Cấu hình dữ tỷ lệ kèo bóng đá 88 Của cải

thuộc tính loại Mô tả
servername chuỗi PostgreSQLMáy chủ máy chủ cơ sở dữ tỷ lệ kèo bóng đá 88
Databasename chuỗi PostgreSQLTên cơ sở dữ tỷ lệ kèo bóng đá 88
PortNumber int TCP/IPCổng màPostgreSQLMáy chủ cơ sở dữ tỷ lệ kèo bóng đá 88 đang nghe (hoặc 0 để sử dụng Cổng mặc định)
người dùng chuỗi Người dùng đã sử dụng để tạo kết nối cơ sở dữ tỷ lệ kèo bóng đá 88
Mật khẩu chuỗi Mật khẩu được sử dụng để tạo kết nối cơ sở dữ tỷ lệ kèo bóng đá 88

Việc triển khai tổng hợp yêu cầu thêm một số Thuộc tính cấu hình:

Bảng 5-5. Bộ dữ tỷ lệ kèo bóng đá 88 tổng hợp bổ sung Thuộc tính cấu hình

thuộc tính loại Mô tả
DataSourCename chuỗi mỗi tổng hợpDataSourcePhải có tên duy nhất
initConnections int Số lượng kết nối cơ sở dữ tỷ lệ kèo bóng đá 88 sẽ được tạo Khi nhóm được khởi tạo.
MaxConnections int Số lượng kết nối cơ sở dữ tỷ lệ kèo bóng đá 88 mở tối đa đến cho phép. Khi yêu cầu nhiều kết nối hơn, người gọi sẽ bị treo cho đến khi kết nối được trả về hồ bơi.

Đây là một ví dụ về mã ứng tỷ lệ kèo bóng đá 88 điển hình sử tỷ lệ kèo bóng đá 88 gộpDataSource:

Ví dụ 5-6.DataSourceVí dụ về mã

Mã để khởi tạo một bộ dữ tỷ lệ kèo bóng đá 88 gộp có thể trông giống như cái này:

JDBC3PoolingDataSource Nguồn = new JDBC3PoolingDataSource ();
Nguồn.SetDataSourCename ("Nguồn dữ tỷ lệ kèo bóng đá 88");
nguồn.setservername ("localhost");
nguồn.setDatabasename ("kiểm tra");
nguồn.setuser ("testuser");
nguồn.setPassword ("testPassword");
Source.setMaxConnections (10);

Sau đó mã để sử dụng tỷ lệ kèo bóng đá 88 từ nhóm có thể trông như thế này. Lưu ý rằng điều quan trọng là các tỷ lệ kèo bóng đá 88 là đóng cửa, nếu không thì hồ bơi sẽ "rò rỉ" tỷ lệ kèo bóng đá 88 và cuối cùng khóa tất cả các máy khách.

tỷ lệ kèo bóng đá 88 con = null;
thử 
    con = nguồn.getConnection ();
    // Sử dụng tỷ lệ kèo bóng đá 88
 Catch (sqlexception e) 
    // lỗi nhật ký
 Cuối cùng 
    if (con! = null) 
        thử con.close (); Catch (sqlexception e)

5.9.5. DataSource vàjndi

Tất cảConnectionPooldataSourceDataSourceThực hiện có thể được lưu trữ trongJNDI. Trong trường hợp Trong số các triển khai không có tỷ lệ kèo bóng đá 88 quả, một trường hợp mới sẽ được tạo mỗi khi đối tượng được lấy từJNDI, với các cài đặt giống như ví dụ được lưu trữ. Đối với các triển khai gộp, Cùng một trường hợp sẽ được truy xuất miễn là nó có sẵn (ví dụ: không khácJVMLấy nhóm từJNDI) hoặc một thể hiện mới có cùng một Cài đặt được tạo khác.

Trong môi trường máy chủ ứng tỷ lệ kèo bóng đá 88, thông thường là Máy chủ ứng tỷ lệ kèo bóng đá 88DataSourcephiên bản sẽ được lưu trữ trongJNDI, thay vìPostgreSQL ConnectionPooldataSourceTriển khai.

Trong môi trường ứng tỷ lệ kèo bóng đá 88, ứng tỷ lệ kèo bóng đá 88 có thể lưu trữDataSourceinjndiđể nó không phải làm tham chiếu đếnDataSourceCó sẵn cho tất cả các thành phần ứng tỷ lệ kèo bóng đá 88 có thể cần sử tỷ lệ kèo bóng đá 88 nó:

Ví dụ 5-7.DataSource JNDIVí dụ về mã

Mã ứng dụng để khởi tạo một cơ sở dữ tỷ lệ kèo bóng đá 88 gộp và Thêm nó vàoJNDIcó thể nhìn Như thế này:

JDBC3PoolingDataSource Nguồn = new JDBC3PoolingDataSource ();
Nguồn.SetDataSourCename ("Nguồn dữ tỷ lệ kèo bóng đá 88");
nguồn.setservername ("localhost");
nguồn.setDatabasename ("kiểm tra");
nguồn.setuser ("testuser");
nguồn.setPassword ("testPassword");
nguồn.setMaxConnections (10);
New initContext (). Rebind ("DataSource", nguồn);

Sau đó mã để sử dụng tỷ lệ kèo bóng đá 88 từ nhóm có thể trông Như thế này:

tỷ lệ kèo bóng đá 88 con = null;
thử 
    DataSource Source = (DataSource) New initContext (). Lookup ("DataSource");
    con = nguồn.getConnection ();
    // Sử dụng tỷ lệ kèo bóng đá 88
 Catch (sqlexception e) 
    // lỗi nhật ký
 Catch (NamingException e) 
    // DataSource không được tìm thấy trong JNDI
 Cuối cùng 
    if (con! = null) 
        thử con.close (); Catch (sqlexception e)

5.9.6. Máy chủ ứng tỷ lệ kèo bóng đá 88 cụ thể Cấu hình

Ví dụ về cấu hình cho các máy chủ ứng tỷ lệ kèo bóng đá 88 cụ thể sẽ được bao gồm ở đây.