Giới thiệu về JSP z Là một trang HTML có xen các đoạnmãJava. z Được web server biên dịch thành bytecode. z Cơ chế hoạt động tương tự như Servlet. z Đượctạosẵncác đốitượng của các class HttpServletRequest và HttpServletResponse để xử lý giao tiếpvới web client.
Trang 2
Trường Đại Học Bách Khoa Tp.HCM
Giới thiệu vê JSP
Là một trang HTML có xen các doan ma Java
Được web server biên dịch thành bytecode
Cơ chế hoạt động tương tự như Serviet
Được tạo sẵn các đối tượng của các class
HttpServletRequest va HttpServletResponse dé xu lý ø1ao tiêp voi web client
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 2
Trang 3Các đôi tượng được xây dựng sẵn
— request: d0i tuong class HttpServletRequest
— response: d6i tuong class HttpServletResponse
- out: di tượng class PrintWriter
— session: d0i tuong class HttpSession tao ra tu
method getSession() cua doi tuong request
— application: d6i tuong class ServletContext
— config: doi tuong class ServletConfig
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 3
Trang 4Trường Đại Học Bách Khoa Tp.HCM
Trang 5Lập trinh web với JSP
Cac doan ma Java trong trang JSP duoc dat trong tag
<% 22 Yo>
— Gia tri biéu thức: <%= biểu thức %>
-_ Khai báo các biên <%! [type variable;]+ %>
— Java code <% Java code %>
— Chu thich <% comments %>
@ Cac khai bao chi thi (directive)
Trang 6
Trường Đại Học Bách Khoa Tp.HCM
Tao JSP dung JSP wizard (JBuilder)
Tao mot Project (j sptutorial)
Chon mot server (Tomcat 5.0) Tao mot Web module (j sowebmodule) Tao JSP(JSPWithCounter)
Chỉnh sửa trên JavaBean
Thay đối JSP code
Trang 7
Tao JSP dung JSP wizard (JBuilder)
e Tap tin JSPWithCounterBean.java
package jsptutorial;
public class JSPWithCounterBean { /**initialize variable here*/
private int myCount=0;
private String sample = "Start value";
// Access sample property
public String getSample() { return sample; }
// Access sample property
public void setSample(String newValue) { 1f (newValue!=null) { sample = newValue; }
}
/**New method for counting number of hits*/
public int count() {
return ++myCount;
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 7
Trang 8
Trường Đại Học Bách Khoa Tp.HCM
Tao JSP dung JSP wizard (JBuilder)
Tap tin JSPWithCounter.jsp
<body>
<hl>
JBuilder Generated JSP
</h1>
<form method="post" action="JSPWithCounter.jsp">
<br>Enter new value: <input name="sample"><br>
<br><br>
<input type="submit" name="Submit" value="Submit">
<input type="reset" value="Reset">
Trang 9e Là một trang HTML có chứa các mã scrIpt
(VBScript hay JavaScript)
e Các script này có thể:
-_ Lấy thông tin từ user
— Sinh noi dung động
— Thao tac voi database
e Trang ASP được chạy trên web-server có hỗ trợ
(server-side)
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 9
Trang 10@ C6 thê dùng trình soạn thảo văn bản text bất kỳ
e Cac cong cu truc quan: Ms Visual InterDev, Ms FrontPage, Macromedia Dreamweaver
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 10
Trang 11
Lập trình web với ASP
e Thêm script xử lý vào trang ASP
<FONT SIZE=4 COLOR="#0000FF">
Xin chao ban: <%=hovaten %>
Trang 12
Trường Đại Học Bách Khoa Tp.HCM
Lập trình web với ASP
e Thêm script xử lý vào trang ASP (tiếp theo)
<FORM ACTION="greeting.asp" METHOD="Get"> Xin cho biet ho ten cua ban:
Hay bam nut SUBMIT:
<INPUT NAME="button1l" TYPE="submit"
Trang 13
Lập trình web với ASP
e Đôi tượng xử lý request là Requesf
—_ Lấy thông tin người dùng nhập tie Form voi POST
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 13
Trang 14
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 14
Trang 16
Trường Đại Học Bách Khoa Tp.HCM
Lập trình web với ASP
-_ Quản lý thông tin về phiên làm việc(session)
—_ Có thể lưu đữ liệu, đối tượng của một sessIon
— Bién trong Session:
Trang 17
Lập trình web với ASP
e_ Đôi tượng Applicafion
Quản lý thông tin về ứng dụng
Có thể dùng đề lưu trữ dữ liệu, đối tượng
Chia xẻ giữa các người sử dụng
Trang 18
Lập trình web với ASP
e Đôi tượng Server
Trường Đại Học Bách Khoa Tp.HCM
Làm việc với các thành phân server
Có hai phương thức thường dùng của đối tượng này là:
e Phương thức MapPath(URL): Xác định đường dẫn vật lý của
trang duoc dac ta boi URL
e Phuong thirc CreateObject(progID) ding dé tao mot thé hién ctia thanh phan COM server
Vi du
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 18
Trang 19
Lập trình web với ASP
e Thao tac với CSDL
—~ C6 thé ding ADO dé thao tac
Do While NOT objRecordset.EOF
Response.Write ob jRecordset (“field-name”) ob]Recordset MoveNext
Loop
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 19
Trang 20Đọc dữ liệu băng câu lệnh SQL,
StrSQL = “Select * FROM table WHERE ”
— In dt liéu theo dang bang, danh sach, listbox
—~ C6 thé ding cach này đề hiện thực việc tìm kiếm
e Cap nhật thong tin trong record
strSQLUpdate = “UPDATE table SET fieldl= , field2= WHERE .”
Ban quyén ®2005- Khoa Cong Nghé Thong Tin Trang 20
Trang 22- Apache Web Server 2.0
e Lap trinh Web voi Servlet