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

OpenShift webapps kết nối java mysql

Tôi đã giải quyết vấn đề một mình và rất vui mừng. Mặc dù bản thân tôi không nhận được sự trợ giúp, nhưng tôi hy vọng ai đó khác tham gia chuỗi này và có thể làm cho nó hoạt động!

Vì vậy, tôi có một ứng dụng Vaadin, đã được biên dịch thành tệp WAR. Tôi đã triển khai nó cho các máy chủ OpenShift theo các bước sau:

Triển khai ứng dụng web đã biên dịch sang OpenShift

  1. Mở OpenShift trong trình duyệt web của bạn. Đăng nhập vào Openshift. Điều hướng đến ứng dụng được đề cập.
  2. Lấy mã ssh của ứng dụng đó (nó phải ở bên phải màn hình), nằm ở bên phải của hộp mực. Sao chép mã đó bằng Command-C hoặc Ctrl-C.
  3. Mở Terminal và nhập git clone ssh:\\xxxxxxxxxxxxxxxx...
  4. Nếu bạn đang sử dụng Mac, giống như tôi, nó nên tạo một thư mục dự án tại Users/Username/Appname . Bên trong thư mục đó, hãy xóa thư mục nguồn và pom.xml . Lấy tệp WAR đã biên dịch của bạn và sao chép nó vào webapps thư mục.
  5. Đi tới Nhà ga. Nhập cd Appname , và sau đó git add . , git commit -m "Deployment" và cuối cùng là git push .
  6. Ứng dụng của bạn bây giờ sẽ hoạt động đầy đủ tại www.openshiftappname-domainname.rhcloud.com/warfilename

Truy cập MySQL

  1. Cài đặt các hộp mực cho MySQL và phpMyAdmin. Điều này sẽ có sẵn thông qua Add Cartidge tại openshift.com của bạn trung tâm ứng dụng.
  2. Lưu ý username của bạn và password vào cơ sở dữ liệu MySQL mà OpenShift tự động tạo cho bạn. Truy cập www.openshiftappname-domainname.rhcloud.com/phpmyadmin , nhập thông tin xác thực.
  3. Bên trong phpMyAdmin phải có địa chỉ IP của máy chủ; nó trông giống như 127.x.y.z:3306 . x, y, and z có thể là các số có một chữ số đến ba chữ số.
  4. Tạo nhanh một database mới đặt tên bất cứ điều gì bạn muốn. Tôi sẽ đặt tên cho nó là test và do đó tạo ra một bảng mới trong đó có tên là testtable .
  5. Vì vậy, hãy nhớ ứng dụng WAR đã triển khai của bạn? Chà, nếu bạn đang sử dụng MySQL, tôi cá là bạn đã đưa nó vào ứng dụng của mình. Các bước cơ bản để thiết lập kết nối với MySQL là như vậy.

Mã Java

Đi tới dự án IDE đang mở mà bạn đã biên dịch thành tệp WAR của mình. Đi tới pom.xml bên trong dự án của bạn nếu đó là dự án Maven và thêm phần phụ thuộc:

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.25</version>
 </dependency>
  1. Sau đó, sử dụng mã sau.

String s = "jdbc:mysql://" + host + ":" + port + "/" + name" , trong đó máy chủ lưu trữ là server IP address , cổng là 3306 và tên là database name , trong trường hợp của tôi, test .

try {
    Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
     e.printStackTrace();
}

try {
    Connection con = DriverManager.getConnection(s, username, password);
}
catch (SQLException e) {
    e.printStackTrace();
}

Bây giờ if (con == null) nó đã không hoạt động. Và nếu nó không phải là null , nó đã làm.

Để kiểm tra, bạn nên biên dịch lại tệp WAR của mình (sau khi thực hiện một số cách để kiểm tra trực quan nó). Nếu bạn cần trợ giúp thêm, vui lòng để lại bình luận. Nó sẽ hoạt động khi bạn biên dịch tệp WAR và thực hiện lại các bước 4-6 trong phần đầu tiên:Deployment of compiled webapp to OpenShift . Cảm ơn!




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự cố vùng chứa MySQL sau khi thay đổi /etc/mysql/my.cnf, làm thế nào để chỉnh sửa lại?

  2. SpringBoot MySQL JDBC Không thể tạo các kết nối ban đầu của nhóm

  3. CHỌN SUM () với các điều kiện trong mysql

  4. Làm thế nào để thực thi tính toàn vẹn tham chiếu trên Kế thừa một bảng?

  5. .save chỉ chèn các giá trị null vào cơ sở dữ liệu