PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Không tìm thấy lớp đang tải JDBC org.postgresql.Driver

Tôi đang làm việc trên một dự án web và gần đây tôi đã cài đặt postgres 9.1.1

...

Tôi đã thêm nó vào đường dẫn xây dựng java bằng cách sử dụng các thuộc tính của dự án qua nhật thực.

Đó là cách làm sai lầm. JAR đó phải được bỏ thẳng trong /WEB-INF/lib thư mục của dự án web mà không gặp khó khăn với Đường dẫn xây dựng trong các tài sản của dự án. Thư mục đó là một phần tiêu chuẩn của đường dẫn thời gian chạy của ứng dụng web.

Không liên quan vấn đề cụ thể:bạn có một lỗ hổng thiết kế lớn trong DBConnection của mình lớp. Bạn đã khai báo Connection dưới dạng static về cơ bản làm cho kết nối của bạn không an toàn theo chuỗi . Sử dụng nhóm kết nối và không bao giờ chỉ định Connection (cũng không phải Statement cũng không phải ResultSet ) như một biến lớp / phiên bản. Chúng phải được tạo và đóng trong cùng một try-finally chặn như nơi bạn đang thực hiện truy vấn. Hơn nữa, bạn cũng có một lỗ hổng SQL injection. Sử dụng PreparedStatement thay vì nối các biến do người dùng kiểm soát trong chuỗi SQL.

Xem thêm:

  • Các phương pháp tổng hợp kết nối JDBC MySql để tránh kết nối cạn kiệt
  • Nhận kết nối cơ sở dữ liệu từ một nhóm kết nối
  • Tôi có đang sử dụng tổng hợp kết nối JDBC không?


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres chỉ ngẫu nhiên ngừng hoạt động (Rails, PGSQL.5432)

  2. Làm cách nào để sử dụng LoggingConnection của Psycopg2?

  3. DROP FUNCTION mà không cần biết số lượng / loại tham số?

  4. Trình điều khiển QPSQL không được tải Qt

  5. Sử dụng các hàm cửa sổ trong một câu lệnh cập nhật