Tóm tắt nội dung học phần khoảng 150 từ Giới thiệu các công nghệ J2EE: Java Server Page JSP, JSP Taglib, Servlet, JSF hỗ trợ phát triển các ứng dụng Web; các Framework như Struts, Hibern
Trang 1KHOA CÔNG NGHỆ THÔNG TIN Độc lập – Tự do – Hạnh phúc
ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN LẬP TRÌNH NÂNG CAO – ADVANCED PROGRAMMING (LẬP
TRÌNH JAVA)
1 Thông tin về giáo viên
TT Họ tên giáo viên Học
hàm
Học vị Đơn vị công tác (Bộ môn)
1 Phan Nguyên Hải GVC TS Công nghệ phần mềm
2 Trần Hữu Phi TG KS Công nghệ phần mềm
Thời gian, địa điểm làm việc:
Địa chỉ liên hệ:
Điện thoại, email:phannguyenhai@yahoo.com
Các hướng nghiên cứu chính: Công nghệ phần mềm, Phát triển phần mềm di động, Lập trình nhúng
2 Thông tin chung về học phần
- Tên học phần: LẬP TRÌNH NÂNG CAO (LẬP TRÌNH JAVA)
- Mã học phần: 12560151
- Số tín chỉ: 3
- Cấu trúc học phần: 3(2,2)
- Học phần (bắt buộc hay lựa chọn): lựa chọn
- Các học phần tiên quyết: Ngôn ngữ lập trình 1 (Java), Lập trình cơ bản
- Các yêu cầu đối với học phần (nếu có):
- Giờ tín chỉ đối với các hoạt động:
Nghe giảng lý thuyết: 30
Làm bài tập trên lớp:15
Thảo luận: 6
Thực hành, thực tập (ở PTN, nhà máy, thực tập ): 9
Hoạt động theo nhóm:
Tự học: 120
- Khoa/Bộ môn phụ trách học phần, địa chỉ: Khoa CNTT, 236 Hoàng Quốc Việt,
Hà Nội
3 Mục tiêu của học phần
- Kiến thức: Lý thuyết về công nghệ Java Enterprise Edition, các framework phổ biến cho lập trình Web Application
Trang 2- Kỹ năng: Có khả năng sử dụng thành thạo các công cụ lập trình Java nâng cao
- Thái độ, chuyên cần: Lên lớp đầy đủ, chuẩn bị theo yêu cầu giáo viên
4 Tóm tắt nội dung học phần (khoảng 150 từ)
Giới thiệu các công nghệ J2EE: Java Server Page (JSP), JSP Taglib, Servlet, JSF
hỗ trợ phát triển các ứng dụng Web; các Framework như Struts, Hibernate, Spring hỗ trợ phát triển ứng dụng Web theo mô hình MVC
5 Nội dung chi tiết học phần (tên các chương, mục, tiểu mục)
Chương,
mục, tiểu
mục
Giáo trình, Tài liệu tham khảo (Ghi TT của
TL ở mục 6)
Ghi chú
1 Cài đặt và cấu hình Servlet 1.1 Cài đặt Netbean và Tomcat 1.2 Cấu hình Tomcat
1.3 Tổng quan về ứng dụng web
2 Các khái niệm cơ bản về Servlet 2.1 Cấu trúc của một Servlet đơn giản 2.2 Vòng đời của Servlet
2.3 Giao diện ThreadModel 2.4 Cách gỡ rối Servlet
3 Form dữ liệu 3.1 Vai trò của form dữ liệu 3.2 Đọc dữ liệu trên form từ Servlet 3.3 Ví dụ đọc dữ liệu từ form
3.4 Sử dụng giá trị mặc định cho tham số 3.5 Hiện thị lại dữ liệu trên form khi lỗi giá trị
4 Các bộ lọc sử dụng Servlet 4.1 Khái niệm về bộ lọc
4.2 Ánh xạ các bộ lọc đến các URL 4.3 Cấu hình bộ lọc
4.4 Thử nghiệm bộ lọc 4.5 Chuỗi các bộ lọc
5 Cookies 5.1 Các vấn đề của cookies 5.2 Gửi, nhận dữ liệu cookies 5.3 Sử dụng thuộc tính cookies
6 Session 6.1 Giới thiệu 6.2 Vòng đời của session 6.3 Các thao tác trên sesion
7 Truy cập CSDL sử dụng JDBC
1, 2, 4
Trang 37.1 Giới thiệu java.sql
7.2 Bốn bước truy cập CSDL
7.3 Tạo Servlet login
7.4 Servlet chèn dữ liệu
7.5 Servlet hiển thị dữ liệu
7.6 Servlet tìm kiếm dữ liệu
7.7 Servlet kết hợp với transaction
7.8 Servlet sử dụng connection pool
8 Xử lý giao diện đa ngôn ngữ
Chương 2: Java Server Page 12
1 Giới thiệu tổng quan
1.1 Giới thiệu JSP và sự cần thiết của công
nghệ này
1.2 Cài đặt JSP
1.3 Cú pháp cơ bản của JSP
2 Gọi mã java trong JSP
2.1 Gọi trực tiếp mã java
2.2 Biểu thức JSP
2.3 So sánh JSP và Servlet
2.4 Sử dụng các Scriptlet
2.5 Sử dụng các khai báo
2.6 Sử dụng các biến định nghĩa trước
2.7 So sánh biểu thức JSP, Scriptlet và khai
báo
3 Sử dụng Java bean
3.1 Giới thiệu về java bean
3.2 Xây dựng, sử dụng java bean
3.3 Chia sẻ bean theo 04 trường hợp
4 Tích hợp Servlet và JSP: mô hình MVC
4.1 Giới thiệu MVC
4.2 Cài đặt MVC với RequestDispatcher
4.3 Chuyển điều khiển trang web từ JSP
4.4 Áp dụng mô hình MVC với Bank
Account Balances
5 Xây dựng thư viện thẻ (JSP custom tags)
5.1 Tạo thẻ mới
5.2 Vài trò của bộ mô tả
5.3 Vòng đời của tag
6 Xây dựng chương trình download file
7 Xây dựng chương trình upload file
1, 2, 4
1 Tổng quan về struts
2 Cấu hình struts
3
Trang 43 Thành phần Struts Controller
4 Thành phần Struts Model
5 Thành phần Struts View
6 Struts và xây dựng giao diện đa ngôn ngữ
7 Cài đặt ứng dụng web sử dụng Struts
Chương 4: Java Server Face 8
1 So sánh Struts và JSF
2 Vòng đợi của JSF
3 Các thẻ của JSF
3.1 f:subview, h:panelGroup,
h:graphicImage, and h:commandLink
3.2 h:panelGrid, h:inputText, and
h:commandButton
3.3 h:dataTable and h:column
3.4 h:message and f:verbatim
4 Tạo, sử dụng các validators
4.1 Các validator có sẵn
4.2 Các validator mức ứng dụng
4.3 Xây dựng các validator
5
Chương 5: Hibernate và Spring 16
1 Giới thiệu về Hibernate và Spring
1.1 Giới thiệu chung về ORM
1.2 Giới thiệu về Hibernate
2 Cấu hình Hibernate
2.1 Các thông tin cơ bản
2.2 Cấu hình dialect
2.3 Các hình một chương trình console sử
dụng Hibernate
3 Ánh xạ giữa bảng và đối tượng
3.1 Các lớp entity
3.2 Ngôn ngữ XML và cấu hình ánh xạ
ORM
3.3 Cấu hình ánh xạ đa cấp
3.4 Ánh xạ các tập hợp (collection: set, bag,
list, )
3.5 Ánh xạ các quan hệ
4 Các hành vi trong Hibernate
4.1 Vòng đời của một đối tượng bền vững
4.2 Thao tác dữ liệu thông qua các đối tượng
bền vững
4.3 Truy vấn dữ liệu
5 Giới thiệu Spring
6 Lập trình hướng khía cạnh - AOP
6
Trang 57 Tích hợp Hibernate và Spring 7.1 Cầu hình Hibernate trong môi trường Spring
7.2 Cài đặt tầng dữ liệu vào Spring và Hibernate
8 Phát triển ứng dụng web với Spring và Hibernate
6 Giáo trình, tài liệu tham khảo
TT Tên giáo trình, tài liệu Tình trạng giáo trình, tài liệu
Có ở thư viện (website)
Giáo viên hoặc khoa
có
Đề nghị mua mới
Đề nghị biên soạn mới
1 Xây dựng ứng dụng Web với JSP,
Servlet, JavaBean, Giáo dục, 2001
X
2 Java Servlet Programming, 2nd
Edition, O'Reilly, 2001
X
3 Programming Jakarta Struts,
O'Reilly, 2004
X
4 Core Servlets and JavaServer
Pages, Prentice Hall PTR, 2003
X
5 Beginning JSP™ , JSF™ , and
Tomcat Web Development, Apress,
2007
X
6 Spring Persistence with Hibernate,
Packt Publishing Ltd, 2009
X
7 Hình thức tổ chức dạy học
7.1 Lịch trình chung: (Ghi tổng số giờ cho mỗi cột)
Nội dung
Hình thức tổ chức dạy học học
phần
Tổ ng
hành, thí nghiệ m, thực tập
Tự học, tự ng.c ứu
Lý thuyết
Bài tập
Thảo luận
1 Cài đặt và cấu hình Servlet
Trang 61.1 Cài đặt Netbean và Tomcat
1.2 Cấu hình Tomcat
1.3 Tổng quan về ứng dụng web
2 Các khái niệm cơ bản về Servlet
2.1 Cấu trúc của một Servlet đơn giản
2.2 Vòng đời của Servlet
2.3 Giao diện ThreadModel
2.4 Cách gỡ rối Servlet
3 Form dữ liệu
3.1 Vai trò của form dữ liệu
3.2 Đọc dữ liệu trên form từ Servlet
3.3 Ví dụ đọc dữ liệu từ form
3.4 Sử dụng giá trị mặc định cho tham số
3.5 Hiện thị lại dữ liệu trên form khi lỗi giá
trị
4 Các bộ lọc sử dụng Servlet
4.1 Khái niệm về bộ lọc
4.2 Ánh xạ các bộ lọc đến các URL
4.3 Cấu hình bộ lọc
4.4 Thử nghiệm bộ lọc
4.5 Chuỗi các bộ lọc
5 Cookies
5.1 Các vấn đề của cookies
5.2 Gửi, nhận dữ liệu cookies
5.3 Sử dụng thuộc tính cookies
6 Session
6.1 Giới thiệu
6.2 Vòng đời của session
6.3 Các thao tác trên sesion
7 Truy cập CSDL sử dụng JDBC
7.1 Giới thiệu java.sql
7.2 Bốn bước truy cập CSDL
7.3 Tạo Servlet login
7.4 Servlet chèn dữ liệu
7.5 Servlet hiển thị dữ liệu
7.6 Servlet tìm kiếm dữ liệu
7.7 Servlet kết hợp với transaction
7.8 Servlet sử dụng connection pool
8 Xử lý giao diện đa ngôn ngữ
1 Giới thiệu tổng quan
1.1 Giới thiệu JSP và sự cần thiết của công
nghệ này
1.2 Cài đặt JSP
1.3 Cú pháp cơ bản của JSP
Trang 72 Gọi mã java trong JSP
2.1 Gọi trực tiếp mã java
2.2 Biểu thức JSP
2.3 So sánh JSP và Servlet
2.4 Sử dụng các Scriptlet
2.5 Sử dụng các khai báo
2.6 Sử dụng các biến định nghĩa trước
2.7 So sánh biểu thức JSP, Scriptlet và khai
báo
3 Sử dụng Java bean
3.1 Giới thiệu về Java bean
3.2 Xây dựng, sử dụng java bean
3.3 Chia sẻ bean theo 04 trường hợp
4 Tích hợp Servlet và JSP: mô hình MVC
4.1 Giới thiệu MVC
4.2 Cài đặt MVC với RequestDispatcher
4.3 Chuyển điều khiển trang web từ JSP
5 Xây dựng thư viện thẻ (JSP custom tags)
5.1 Tạo thẻ mới
5.2 Vài trò của bộ mô tả
5.3 Vòng đời của tag
6 Xây dựng chương trình download file
7 Xây dựng chương trình upload file
1 Tổng quan về struts
2 Cấu hình struts
3 Thành phần Struts Controller
4 Thành phần Struts Model
5 Thành phần Struts View
6 Struts và xây dựng giao diện đa ngôn ngữ
7 Cài đặt ứng dụng web sử dụng Struts
Chương 4: Java Server Face 4 4
1 So sánh Struts và JSF
2 Vòng đợi của JSF
3 Các thẻ của JSF
3.1 f:subview, h:panelGroup,
h:graphicImage, and h:commandLink
3.2 h:panelGrid, h:inputText, and
h:commandButton
3.3 h:dataTable and h:column
3.4 h:message and f:verbatim
4 Tạo, sử dụng các validators
4.1 Các validator có sẵn
Trang 84.2 Các validator mức ứng dụng
4.3 Xây dựng các validator
1 Giới thiệu về Hibernate và Spring
1.1 Giới thiệu chung về ORM
1.2 Giới thiệu về Hibernate
2 Cấu hình Hibernate
2.1 Các thông tin cơ bản
2.2 Cấu hình dialect
2.3 Các hình một chương trình console sử
dụng Hibernate
3 Ánh xạ giữa bảng và đối tượng
3.1 Các lớp entity
3.2 Ngôn ngữ XML và cấu hình ánh xạ
ORM
3.3 Cấu hình ánh xạ đa cấp
3.4 Ánh xạ các tập hợp (collection: set, bag,
list, )
3.5 Ánh xạ các quan hệ
4 Các hành vi trong Hibernate
4.1 Vòng đời của một đối tượng bền vững
4.2 Thao tác dữ liệu thông qua các đối
tượng bền vững
4.3 Truy vấn dữ liệu
5 Giới thiệu Spring
6 Lập trình hướng khía cạnh - AOP
7 Tích hợp Hibernate và Spring
7.1 Cầu hình Hibernate trong môi trường
Spring
7.2 Cài đặt tầng dữ liệu vào Spring và
Hibernate
8 Phát triển ứng dụng web với Spring và
Hibernate
7.2 Lịch trình tổ chức dạy học cụ thể
Bài giảng: Servlet
Chương, mục: 1
Tiết thứ: 1-4 Tuần thứ: 1
Mục đích, yêu cầu:
Giới thiệu về nguyên lý làm việc của các ứng dụng web, về ứng dụng servlet.
- Hình thức tổ chức dạy học: Buổi học lý thuyết
- Thời gian:
4 tiết lý thuyết
Trang 9- Địa điểm:
Giảng đường thường
- Nội dung chính:
1 Cài đặt và cấu hình Servlet
1.1 Cài đặt Netbean và Tomcat
1.2 Cấu hình Tomcat
1.3 Tổng quan về ứng dụng web
2 Các khái niệm cơ bản về Servlet
2.1 Cấu trúc của một Servlet đơn giản
2.2 Vòng đời của Servlet
2.3 Giao diện ThreadModel
2.4 Cách gỡ rối Servlet
3 Form dữ liệu
3.1 Vai trò của form dữ liệu
3.2 Đọc dữ liệu trên form từ Servlet
3.3 Ví dụ đọc dữ liệu từ form
3.4 Sử dụng giá trị mặc định cho tham số
3.5 Hiện thị lại dữ liệu trên form khi lỗi giá trị
4 Các bộ lọc sử dụng Servlet
4.1 Khái niệm về bộ lọc
4.2 Ánh xạ các bộ lọc đến các URL
4.3 Cấu hình bộ lọc
4.4 Thử nghiệm bộ lọc
4.5 Chuỗi các bộ lọc
- Yêu cầu SV chuẩn bị:
Đọc trước bài giảng, tài liệu tham khảo.
- Ghi chú:
Bài giảng: Servlet (tiếp)
Chương, mục: 1
Tiết thứ: 5-8 Tuần thứ: 2
Mục đích, yêu cầu:
Giới thiệu về nguyên lý làm việc của các ứng dụng web, về ứng dụng servlet,
về Cookies, về lập trình CSDL trong servlet.
- Hình thức tổ chức dạy học: Buổi học lý thuyết
- Thời gian:
4 tiết lý thuyết
- Địa điểm:
Giảng đường thường
- Nội dung chính:
5 Cookies
5.1 Các vấn đề của cookies
5.2 Gửi, nhận dữ liệu cookies
5.3 Sử dụng thuộc tính cookies
6 Session
6.1 Giới thiệu
Trang 106.2 Vòng đời của session
6.3 Các thao tác trên sesion
7 Truy cập CSDL sử dụng JDBC
7.1 Giới thiệu java.sql
7.2 Bốn bước truy cập CSDL
7.3 Tạo Servlet login
7.4 Servlet chèn dữ liệu
7.5 Servlet hiển thị dữ liệu
7.6 Servlet tìm kiếm dữ liệu
7.7 Servlet kết hợp với transaction
7.8 Servlet sử dụng connection pool
8 Xử lý giao diện đa ngôn ngữ
- Yêu cầu SV chuẩn bị:
Đọc trước bài giảng, tài liệu tham khảo.
- Ghi chú:
Bài giảng: Servlet (tiếp)
Chương, mục: 1
Tiết thứ: 9-12 Tuần thứ: 3
Mục đích, yêu cầu:
Luyện tập các nội dung đã học về servlet.
- Hình thức tổ chức dạy học: Buổi học bài tập
- Thời gian:
4 tiết bài tập
- Địa điểm:
Giảng đường thường
- Nội dung chính:
* Thiết kế CSDL quản lý sinh viên
1 Xây dựng trang login
2 Xây dựng trang xem danh sách sinh viên
3 Xây dựng trang tìm kiếm
4 Xây dựng các trang cập nhật
- Yêu cầu SV chuẩn bị:
Nghiên cứu kỹ bài giảng đã học, tài liệu tham khảo.
- Ghi chú:
Bài giảng: Java Server Page
Chương, mục: 2
Tiết thứ: 13-16 Tuần thứ: 4
Mục đích, yêu cầu:
Giới thiệu về xây dựng website với công nghệ JSP.
- Hình thức tổ chức dạy học: Buổi học lý thuyết
- Thời gian:
4 tiết lý thuyết
- Địa điểm:
Trang 11Giảng đường thường
- Nội dung chính:
1 Giới thiệu tổng quan
1.1 Giới thiệu JSP và sự cần thiết của công nghệ này 1.2 Cài đặt JSP
1.3 Cú pháp cơ bản của JSP
2 Gọi mã java trong JSP
2.1 Gọi trực tiếp mã java
2.2 Biểu thức JSP
2.3 So sánh JSP và Servlet
2.4 Sử dụng các Scriptlet
2.5 Sử dụng các khai báo
2.6 Sử dụng các biến định nghĩa trước
2.7 So sánh biểu thức JSP, Scriptlet và khai báo
3 Sử dụng Java bean
3.1 Giới thiệu về java bean
3.2 Xây dựng, sử dụng java bean
3.3 Chia sẻ bean theo 04 trường hợp
- Yêu cầu SV chuẩn bị:
Đọc trước bài giảng, tài liệu tham khảo.
- Ghi chú:
Bài giảng: Java Server Page (tiếp)
Chương, mục: 2
Tiết thứ: 17-19 Tuần thứ: 5
Mục đích, yêu cầu:
Giới thiệu về xây dựng website với công nghệ JSP.
- Hình thức tổ chức dạy học: Buổi học lý thuyết
- Thời gian:
4 tiết lý thuyết
- Địa điểm:
Giảng đường thường
- Nội dung chính:
4 Tích hợp Servlet và JSP: mô hình MVC
4.1 Giới thiệu MVC
4.2 Cài đặt MVC với RequestDispatcher
4.3 Chuyển điều khiển trang web từ JSP
4.4 Áp dụng mô hình MVC với Bank Account Balances
5 Xây dựng thư viện thẻ (JSP custom tags)
5.1 Tạo thẻ mới
5.2 Vai trò của bộ mô tả
5.3 Vòng đời của tag
6 Xây dựng chương trình download file
7 Xây dựng chương trình upload file
- Yêu cầu SV chuẩn bị:
Đọc trước bài giảng, tài liệu tham khảo.
Trang 12- Ghi chú:
Bài giảng: Java Server Page (tiếp)
Chương, mục: 2
Tiết thứ: 20-23 Tuần thứ: 6
Mục đích, yêu cầu:
Luyện tập với công nghệ JSP.
- Hình thức tổ chức dạy học: Buổi học bài tập và thực hành
- Thời gian:
2 tiết bài tập, 2 tiết thực hành
- Địa điểm:
Giảng đường thường
- Nội dung chính:
Bài tập:
Thiết kế hệ thống quản lý sinh viên với JSP
Xây dựng website quản lý sinh viên kết hợp hai công nghệ JSP và Servlet
Thực hành:
Thiết kế hệ thống quản lý sinh viên với JSP
- Yêu cầu SV chuẩn bị:
Nghiên cứu kỹ bài giảng đã học, tài liệu tham khảo.
- Ghi chú:
Bài giảng: STRUTS
Chương, mục: 3
Tiết thứ: 24-27 Tuần thứ: 7
Mục đích, yêu cầu:
Giới thiệu về Framework Struts.
- Hình thức tổ chức dạy học: Buổi học lý thuyết
- Thời gian:
4 tiết lý thuyết
- Địa điểm:
Giảng đường thường
- Nội dung chính:
1 Tổng quan về struts
2 Cấu hình struts
3 Thành phần Struts Controller
4 Thành phần Struts Model
5 Thành phần Struts View
6 Struts và xây dựng giao diện đa ngôn ngữ
7 Cài đặt ứng dụng web sử dụng Struts
- Yêu cầu SV chuẩn bị:
Đọc trước bài giảng, tài liệu tham khảo.
- Ghi chú:
Trang 13Bài giảng: STRUTS (tiếp)
Chương, mục: 3
Tiết thứ: 28-31 Tuần thứ: 8
Mục đích, yêu cầu:
Thảo luận và thực hành về Framework Struts.
- Hình thức tổ chức dạy học: Buổi học thảo luận và thực hành
- Thời gian:
2 tiết thảo luận, 2 tiết thực hành
- Địa điểm:
Giảng đường thường
- Nội dung chính:
Thảo luận:
Làm rõ mô hình MVC trong Struts
Thực hành:
Xây dựng các module cơ bản của hệ thống quản lý sinh viên bằng Struts
- Yêu cầu SV chuẩn bị:
Nghiên cứu kỹ bài giảng, tài liệu tham khảo.
- Ghi chú:
Bài giảng: Java Server Face
Chương, mục: 4
Tiết thứ: 32-35 Tuần thứ: 9
Mục đích, yêu cầu:
Giới thiệu công nghệ JSF.
- Hình thức tổ chức dạy học: Buổi học lý thuyết
- Thời gian:
4 tiết lý thuyết
- Địa điểm:
Giảng đường thường
- Nội dung chính:
1 So sánh Struts và JSF
2 Vòng đợi của JSF
3 Các thẻ của JSF
3.1 f:subview, h:panelGroup, h:graphicImage, and h:commandLink 3.2 h:panelGrid, h:inputText, and h:commandButton
3.3 h:dataTable and h:column
3.4 h:message and f:verbatim
4 Tạo, sử dụng các validators
4.1 Các validator có sẵn
4.2 Các validator mức ứng dụng
4.3 Xây dựng các validator
- Yêu cầu SV chuẩn bị:
Đọc trước bài giảng, tài liệu tham khảo.
- Ghi chú: