Giới Thiệu
Có thể tổ chức của bạn linh hoạt hơn, phát triển ứng dụng nhanh hơn, rẻ hơn, và hiệu quả hơn? Hãy cân nhắc dùng Oracle® Application Express (APEX) và low-code development—phương pháp phát triển trực quan dùng drag-and-drop.
APEX cho phép bạn thích ứng với yêu cầu thay đổi và trao quyền cho developer và toàn bộ tổ chức trở thành một phần của giải pháp nhanh chóng.
Nguồn hình ảnh: https://apex.oracle.com/en/
Tại Sao Chọn APEX?
APEX là cách dễ dàng nhất cho developer xây dựng app hấp dẫn trực quan cho dữ liệu. APEX có các tính năng sau:
Đơn giản: GUI browser-based trực quan của Application Builder dẫn bạn từng bước tạo ứng dụng. Bạn dễ dàng học APEX, và các component mạnh mẽ cho phép thêm high-level functionality với code hạn chế. Khách hàng có thể productive trong chưa đầy một tuần.
Mạnh mẽ: Dùng APEX tạo từ web version đơn giản của spreadsheet đến ứng dụng mission-critical phức tạp dùng bởi hàng chục nghìn user hàng ngày.
Đã được chứng minh: APEX đã thành công power hàng ngàn ứng dụng toàn cầu nhiều năm.
An toàn: Theo thiết kế, APEX xây dựng web application high-security out-of-the-box. Khi tiêu chuẩn bảo mật và web tiến hóa và hacker thông minh hơn, focus bảo mật của APEX đảm bảo app của bạn có bảo vệ state-of-the-art.
Di động: APEX chạy ở đâu có Oracle Database, on-premises hay cloud. Bạn dễ dàng deploy APEX đến bất kỳ môi trường nào.
Kiến Trúc
Tài liệu Oracle APEX Architecture mô tả kiến trúc APEX rõ ràng và súc tích. Phần này chứa phần đầu của tài liệu đó.
Tổng Quan
Oracle APEX dùng kiến trúc three-tier đơn giản: request gửi từ browser, qua web server, cuối cùng đến database. APEX thực thi tất cả processing, thao tác dữ liệu, và business logic trong database. Kiến trúc này đảm bảo zero-latency data access, top performance, và scalability.
Khi user submit trang từ APEX, quy trình đi từ trang qua Oracle REST Data Services (ORDS) đến APEX và quay lại, như hình sau.
Nguồn hình ảnh: https://apex.oracle.com/en/platform/architecture/
APEX gửi web request từ web browser đến Oracle REST Data Services (ORDS), nơi nó được gửi đến Oracle Database để xử lý. Trong database, APEX xử lý request. Sau khi xử lý xong, kết quả gửi lại qua ORDS đến browser.
Oracle RAD Stack
Oracle RAD stack là technology stack bao trùm dựa trên ba thành phần cốt lõi: Oracle REST Data Services (ORDS), Oracle APEX, và Oracle Database.
Stack này cung cấp tất cả component cần thiết để phát triển và deploy world-class, powerful, beautiful, và scalable app. Không có moving parts hay component bổ sung nào cần thiết. Thêm vào đó, cả Oracle APEX và ORDS đều là tính năng free của Oracle Database, nghĩa là nếu bạn có Oracle Database, bạn đã có Oracle RAD stack này.
REST Data Services (ORDS)
ORDS là Java application cho phép developer có SQL và database skills phát triển REST API cho Oracle Database, Oracle Database 12c JSON Document store, và Oracle NoSQL Database.
APEX
Native low-code development platform của Oracle Database cho phép bạn xây dựng app stunning, scalable, secure, với world-class features, có thể deploy anywhere.
Database
Oracle Database—giải pháp database complete, integrated, và secure nhất cho deployment bất kỳ scale nào. Nền tảng vững chắc này cho phép app xây bằng Oracle APEX enterprise-ready từ ngày đầu.
Cài Đặt APEX 18.1
Phần sau từ https://oracledbwr.com/install-oracle-apex-18-1-on-premises-windows-18-3-0-database-using-oracle-http-server-12-1-3-0-0/.
Điều Kiện Tiên Quyết Cài Đặt
Oracle Application Express release 18.1 yêu cầu Oracle Database release 11.2.0.4 hoặc mới hơn, bao gồm Enterprise Edition và Express Edition (Oracle Database XE).
Tải APEX 18.1 software tại đây và nhấp Accept.
Bước 1: Giải Nén APEX 18.1.0.00.45 Software
unzip apex_18.1.zip -d /oradb/
Bước 2: Tạo APEX Tablespace Mới
CREATE TABLESPACE APEX DATAFILE '/oradb/app/oracle/oradata/clone/apex01.dbf' SIZE 1G;
Bước 3: Kiểm Tra Cài Đặt APEX
SELECT comp_name, version, status FROM dba_registry WHERE comp_id='APEX';
no rows selected
Bước 4: Bắt Đầu Cài Đặt APEX 18.1
SQL> @apexins APEX APEX TEMP /i/
Where:
apex_tbs – tên tablespace cho APEX user.
apex_files_tbs – tên tablespace cho APEX files user.
temp_tbs – tên temporary tablespace.
images – virtual directory cho APEX images.
Định nghĩa virtual image directory là /i/ cho cập nhật tương lai. */
Script trước tạo một vài schema trên database.
Dùng lệnh sau để test bằng cách query view ALL_USERS:
SQL> select username,created from all_users where USERNAME like '%APEX%';
USERNAME CREATED
——————— ——————-
APEX_PUBLIC_USER 29-MAY-18
APEX_180100 29-MAY-18
APEX_INSTANCE_ADMIN_USER 29-MAY-18
Bước 5: Kiểm Tra Phiên Bản Và Trạng Thái Cài Đặt
SELECT comp_name, version, status FROM dba_registry WHERE comp_id='APEX';
COMP_NAME VERSION STATUS
——————— —————— ———-
Oracle Application Express 18.1.0.00.45 VALID
Bước 6: Kiểm Tra APEX RELEASE VERSION
select * from apex_release;
VERSION_NO API_COMPAT PATCH_APPL
———- ———- ———————
18.1.0.00.45 2018.04.04 APPLIED
Bước 7: Chạy Cấu Hình Embedded PL/SQL Gateway (EPG)
Bước này bắt đầu cấu hình APEX.
Script sau load APEX images vào XDB:
@apex_epg_config.sql <parent of apex directory>
SQL> @apex_epg_config.sql /oradb
Bước 8: Đảm Bảo Các Tài Khoản Cụ Thể Được Unlock
Bước này tiếp tục cấu hình APEX.
ALTER USER anonymous ACCOUNT UNLOCK;
ALTER USER xdb ACCOUNT UNLOCK;
ALTER USER apex_public_user ACCOUNT UNLOCK;
ALTER USER flows_files ACCOUNT UNLOCK;
Bước 9: Cấu Hình Tham Số Database Cho APEX
Bước này tiếp tục cấu hình APEX.
SHOW PARAMETER job_queue_processes
NAME TYPE VALUE
————— ————— ———–
job_queue_processes integer 4000
SHOW PARAMETER shared_servers
NAME TYPE VALUE
————— ———— ———–
max_shared_servers integer
shared_servers integer 1
Thay đổi tham số shared_servers:
ALTER system SET shared_servers=5 scope=both;
Bước 10: Đặt XDB HTTP Listener Port Và Mật Khẩu APEX ADMIN
Bước này hoàn tất cấu hình APEX.
Đối với user, bạn có thể dùng ADMIN mặc định, và bỏ qua email. Cũng có thể đổi HTTP port. Tuy nhiên, port mặc định là 8080.
SQL>@/oradb/apex/apxconf.sql
PORT
—————-
8080
Nhập giá trị cho XDB HTTP listener port và mật khẩu user APEX ADMIN. Giá trị mặc định trong ngoặc [ ]. Nhấn Enter để chấp nhận mặc định.
Dùng script này để đổi mật khẩu APEX instance administrator. Nếu user chưa tồn tại, script tạo user.
Enter the administrator's username [ADMIN]
User "ADMIN" does not yet exist and will be created.
Enter the ADMIN's email [ADMIN]
Enter the ADMIN's password []
Created instance administrator ADMIN.
Enter a port for the XDB HTTP listener [ 8080]
…changing HTTP Port
APEX configuration finishes.
Bước 11: Kiểm Tra HTTP Port
SQL> select dbms_xdb.gethttpport from dual;
GETHTTPPORT
—————–
8080
Bước 12: Kiểm Tra Trạng Thái Listener Và HTTP Port Đã Bật
[oracle@clone:apex clone] lsnrctl status
LSNRCTL for Linux: Version 12.2.0.1.0 – Production on 29-MAY-2018 19:20:08
...
Listening Endpoints Summary…
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=clone.localdomain.com)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=clone.localdomain.com)(PORT=5500))(Security=(my_wallet_directory=/oradb/app/oracle/admin/CLONE/xdb_wallet))(Presentation=HTTP)(Session=RAW))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=clone.localdomain.com)(PORT=8080))(Presentation=HTTP)(Session=RAW))
...
The command completed successfully
Bước 13: Đăng Nhập Vào Trang Administration Services Login
Trong browser, đăng nhập như user ADMIN vào Administration Services login page: https://clone.localdomain.com:8080/apex/apex_admin.
Kết Luận
Oracle APEX là công cụ đúng nếu bạn muốn xây dựng ứng dụng hoạt động tốt hơn, perform tốt hơn, và mang lại trải nghiệm end-user tốt hơn. Nó đơn giản hóa đáng kể enterprise application development và deployment. Dựa trên thông tin trong bài viết, chọn Oracle APEX có lẽ hợp lý cho dự án phát triển tiếp theo của bạn.