Monday, July 21, 2008

Kiến trúc J2EE (Java 2 Enterprise Edition)

333
I. J2EE (Java 2 Enterprise Edition)



1. Các loại container trong J2EE

II. Các kỹ thuật liên quan đến kiến trúc J2EE



1. Enterprise java bean
2. Servlet
3. JSP
4. Java message service
5. Java Transaction
6. Java Mail
7. Java bean activation framework
8. Java API for XML Processing .(JAXP)
9. API for XML-Based RPC(JAX-RPC)
10. SOAP with Attachments API for Java(SAAJ)
11. Java API for XML Registries(JAXR)
12. J2EE Connector Architecture
13. JDBC API
14. Java Naming and Directory Interface
15. Java Authentication and Authorization Service
16. Simplified Systems Integration

J2EE

I. J2EE (Java 2 Enterprise Edition)

J2EE là một môi trường phát triển và triển khai các ứng dụng được phát triển bởi Sun.

J2EE là cái nền cung cấp các dịch vụ, các hàm giao tiếp(API) và các giao thức để triển khai các ứng dụng đa tầng.

Các loại container trong J2EE

Server J2EE cung cấp 2 container : Web Container và EJB container


Kien truc J2EE tong quat

+ EJB (Enterprice java bean) container : quản lý và thực thi các thành phần enterprice bean

+ Web Container : quản lý và thực thi các thành phần JSP và Servlet

+ Application Client Container : quản lý và thực thi các thành phần phía client (ví dụ như applet)

II. Các kỹ thuật liên quan đến kiến trúc j2eeCac ky thuat trong J2EE

1. Enterprise java bean

EJB là một thành phần trong bộ phận J2EE, nó có nhiệm vụ cài đặt và xử lý ở tầng nghiệp vụ. Tầng này được Hibernate, Torque, … đã làm đơn giản hóa, tiện cho việc truy xuất object.. Thông thường EJB ảnh hưởng đến database

EJB có 3 thành phần : session bean, entity bean, message driven bean

+ Session bean : thực thi xử lý một tác vụ, sử dụng JDBC để truy xuất database

+ Entity bean : thể hiện dữ liệu, nó có thể một dòng hay một table trong database

+ Message driven bean : được phát sinh sinh các yêu cầu gởi tới xử lý

2. Servlet

Servlet là một ngôn ngữ lập trình được mở rộng chạy trên host, nó được cài đặt truy xuất theo mô hình request-reponse (mô hình web) . Sử dụng Servlet để trình bày giao diện hiện thị trên Web Browse là điều rất khó khăn và phức tạp. Thông thường trong quá trình phát triển phần mềm người ta sử dụng servlet để làm controller.

3. JSP

Java Server Page : Là một document chứa hai loại dữ liệu, các loại dữ liệu tỉnh (HTML, XML,..) và các thẻ jsp

JSP là một kỹ thuật phía trên của Servlet, mục đích đưa ra để tiện cho việc presentation, khi JSP biên dịch ra nó sẽ là Servlet để thực thi phía server.

4. Java message service

JMS là một java API mà mà nó cho phép các ứng dụng tạo, gởi, nhận và đọc message. Kỹ thuật này được thiết kế bởi Sun và các công ty liên kết với Sun. JMS API định nghĩa các giao tiếp chung và các liên kết cho phép các chương trình viết trong ngôn ngữ java có thể truyền thông với các message khác được cài dặt .

JMS là một thành phần chuẩn trong J2EE.

5. Java Transaction

JTA cung cấp các tiêu chuẩn để phân ranh giới giữa hai giao tác (transaction) . Trong J2EE cung cấp mặc định chế độ auto commit khi sử dụng giao tác commit hay rollback

6. Java Mail

Các ứng dụng J2EE sử dụng JavaMail API để gởi mail. JavaMail API có hai thành phần

+ Giao tiếp ở mức ứng dụng được sử dụng bởi các thành phần ứng dụng để gởi mail

+ Bộ phận cung cấp dịch vụ giao tiếp để gởi mail

Nền J2EE bao gồm JavaMail với bộ phận cung cấp dịch vụ mail mà điều này cho phép các thành phần của ứng dụng gởi mail được trên internet

7. Java bean activation framework

JAF được đưa vào nền J2EE bởi vì JavaMail sử dụng nó để gởi mail. JAF cung cấp các dịch vụ chuẩn để xử lý các kiểu phân đoạn, đóng gói , truy xuất đến dữ liệu của JAF, tận dụng các hàm hỗ trợ có sẵn trong JAF , xây dựng các thành phần JavaBean sử dụng thế mạnh các hàm đã hỗ trợ.

8. Java API for XML Processing .(JAXP)

Chức năng : hỗ trợ xử lý tài liệu XML sử dụng DOM( ) , SAX(Simple API for

XML),Extensible Stylesheet Language Transformations(XSLT).

JAXP cho phép các ứng dụng phân tích cú pháp và chuyển đổi các tài liệu XML độc

lập với một tiến trình thực thi xml riêng biệt.

JAXP cũng cung cấp hỗ trợ namespace

9. API for XML-Based RPC(JAX-RPC)

Chức năng:JAX-RPC sử dụng SOAP và HTTP, vì vậy các chương trình có thể tạo ra

các cuộc gọi thủ tục từ xa qua Internet dựa vào XML . JAX-RPC cũng hỗ trợ WSDL,bạn có thể import và export tài liệu WSDL.

10. SOAP with Attachments API for Java(SAAJ)

Chức năng: SAAJ cho phép tạo ra và hủy các thông điệp mà dựa trên SOAP 1.1 và SOAP with Attachment note

Hần hết nhà phát triển không sử dụng g SAAJ API , mà dùng công nghệ cao hơn như

JAX-RPC API

11. Java API for XML Registries(JAXR)

Chức năng:JAXR để bạn truy xuất các đăng ký các mục đích chung và các giao dịch trên Web.JAXR hỗ trợ ebXML Register and Repository standards và các thông số kỹ thuật UDDI

12. J2EE Connector Architecture

Kỹ thuật J2EE Connector được sử dụng bởi những nhà cung cấp những công cụ J2EE và sự tích hợp hệ thống để tạo ra những bộ tiếp hợp tài nguyên mà hỗ trợ những truy nhập tới hệ thông tin doanh nghiệp mà có thể được cắm vào tới bất kỳ (cái) sản phẩm J2EE.

Kỹ thuật J2EE Connector cũng cung cấp một sự thi hướng đối tượng , an toàn, thay đổi được

13. JDBC API

JDBC API để cho bạn thực thi các câu truy vấn từ các phương thức ngôn ngữ lập trình Java

JDBC API gồm hai phần: một giao diện(interface) mức ứng dụng được dùng bởi những thành phần ứng dụng để truy nhập một cơ sở dữ liệu, và một giao diện cung cấp dịch vụ(a service provider interface) để gán điều khiển JDBC tới J2EE flatform

14. Java Naming and Directory Interface

JNDI: cung cấp những ứng dụng với những phương pháp để thực hiện những thao tác thư mục chuẩn, như kết hợp những thuộc tính với những đối tượng và tìm kiếm những đối tượng sử dụng những thuộc tính của chúng.

15. Java Authentication and Authorization Service

Sự chứng thực và dịch vụ cho phép (JAAS) cung cấp một cách cho một ứng dụng J2EE xác nhận và cho phép một người sử dụng hay nhóm những người sử dụng để chạy các dịch vụ.

16. Simplified Systems Integration

a) Nền tảng(platform) J2EE là một nền tảng độc lập,giải pháp tích hợp các hệ thống trọn vẹn tạo ra 1 một chợ mở trong đó các nhà cung cấp có thể bán hàng cho từng khách hàng. Một chỗ họp chợ như vậy khuyến khích những nhà cung cấp để tranh đua, không phải bằng việc thử hãm lại những khách hàng vào trong những công nghệ của họ, thay vào đó bằng việc thử làm giỏi hơn lẫn nhau trong việc cung cấp những sản phẩm và những dịch vụ khách hàng tốt hơn.

b) J2EE APIs cho phép những hệ thống và sự tích hợp những ứng dụng thông qua những mục sau đây:

i. Thống nhất các mô hình ứng dụng qua các tầng với enterprise beans.

ii. Cơ chế response và request đơn giản hóa với trang JSP và servlets.

iii. Mô hình bảo mật an toàn (JASS)

iv. Kết nối CSDL dễ dàng qua JDBC API

v. Tích hợp trao đổi dữ liệu dựa trên XML với JAXP,SAAJ,và JAX-RPC

i. Thống nhất các mô hì



Friday, July 18, 2008

Insert data to access order by field!

When we using DAO, sometimes we need insert a record into database order by one filed.How to do it?Follow these steps:
Dao.recordset rc;
At initiation, you must select from table order by the field which you want to sort by:
Select * from table order by field;
When insert, after update method.You call requery method:
rc.Requery;
And finally you find the record you have just insert by .FindFirst.

Thursday, July 17, 2008

Adding new users to MySQL Databases

#
# Connect to the local database server as user root
# You will be prompted for a password.
#
mysql -h localhost -u root -p

#
# Now we see the 'mysql>' prompt and we can run
# the following to create a new database for Paul.
#
mysql> create database pauldb;
Query OK, 1 row affected (0.00 sec)

#
# Now we create the user paul and give him full
# permissions on the new database
mysql> grant CREATE,INSERT,DELETE,UPDATE,SELECT on pauldb.* to paul@localhost;
Query OK, 0 rows affected (0.00 sec)

#
# Next we set a password for this new user
#
mysql> set password for paul = password('mysecretpassword');
Query OK, 0 rows affected (0.00 sec)
But sometimes it doesn't work(or always :D) you must you the following command:
mysql> set password for 'paul'@'localhost' = password('password');

#
# Cleanup and ext
mysql> flush privileges;
mysql> exit;

Change root password in MySql

mysqladmin command to change root password

If you have never set a root password for MySQL, the server does not require a password at all for connecting as root. To setup root password for first time, use mysqladmin command at shell prompt as follows:

$ mysqladmin -u root password NEWPASSWORD

However, if you want to change (or update) a root password, then you need to use following command

$ mysqladmin -u root -p oldpassword newpass

Enter password:

Change MySQL password for other user

To change a normal user password you need to type (let us assume you would like to change password for vivek):

$ mysqladmin -u vivek -p oldpassword newpass

Changing MySQL root user password using mysql sql command

This is another method. MySQL stores username and passwords in user table inside MySQL database. You can directly update password using the following method to update or change password for user vivek:

1) Login to mysql server, type following command at shell prompt:

$ mysql -u root -p

2) Use mysql database (type command at mysql> prompt):

mysql> use mysql;

3) Change password for user vivek:

mysql> update user set password=PASSWORD("NEWPASSWORD") where User='vivek';
) Reload privileges:
mysql> flush privileges;
mysql> quit

---------------------------------