Tìm hiểu mô hình MVC và ứng dụng của mô hình trong thực tế

49 1.7K 2
Tìm hiểu mô hình MVC và ứng dụng của mô hình trong thực tế

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Hiện nay, sự phát triển của Công nghệ Thông tin ở nước ta đang bước vào thời kì mới với việc triển khai rộng rãi các ứng dụng tin học cho các tổ chức và xã hội. Không ai còn nghi ngờ gì về vai trò của Công nghệ Thông tin trong đời sống, trong khoa học kỹ thuật, kinh doanh, cũng như trong mọi mặt của xã hội, ngay cả đối với một cá nhân. “Tìm hiểu mô hình MVC và ứng dụng của mô hình trong thực tế” Chương trình được viết bằng ngôn ngữ Cshapp với cơ sở dữ liệu SQL Server

MỤC LỤC LỜI NÓI ĐẦU……………………………………………………………………… 3 DANH MỤC CÁC TỪ TIẾNG ANH VÀ TỪ VIẾT TẮT……………………… 4 DANH MỤC CÁC BẢNG………………………………………………………… 5 DANH MỤC CÁC HÌNH … ……………………………………………………… 6 MỞ ĐẦU…………………………………………………………………………… 7 CHƯƠNG I: GIỚI THIỆU MÔ HÌNH MVC…………………………………… 10 Xuất xứ ……………………………………………………………………… Kiến trúc của mô hình MVC……………………………………………… Đặc điểm của mô hình MVC……………………………………………… 10 10 12 CHƯƠNG II: MÔ HÌNH MVC TRONG ASP.NET……………………………… 13 1.11.21.3- 2.1- Giới thiệu tổng quan……………………………………………………… 13 2.1.1- Lịch sử phát triển của ASP.NET…………………………………… 14 2.1.2- Khái quát các thành phần của ASP.NET MVC…………………… 19 2.1.3- Lợi ích của mô hình ASP.NET MVC……………………………… 21 2.1.4- So sánh ASP.NET MVC với ASP.NET……………………………… 21 CHƯƠNG III: XÂY DỰNG ỨNG DỤNG VỚI ASP.NET MVC FRAMWORK 24 3.1- Xây dựng Controller………………………………………………………… 24 3.1.1- Các lớp Controller cơ bản…………………………………………… 25 3.2- Xây dựng Modul…………………………………………………………… 28 3.3- Tạo giao diện người dùng với View…………………………………… 29 CHƯƠNG IV: CHƯƠNG TRÌNH ỨNG DỤNG………………………………… 31 1 4.1- Mô tả chương trình ứng dụng…………………………………………… 31 CHƯƠNG V: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN………………………… 46 TÀI LIỆU VÀ WEBSITE THAM KHẢO………………………………………… 46 NHẬN XÉT CỦA GIÁO VIÊN……………………………………………………… 47 LỜI NÓI ĐẦU 2 Hiện nay, sự phát triển của Công nghệ Thông tin ở nước ta đang bước vào thời kì mới với việc triển khai rộng rãi các ứng dụng tin học cho các tổ chức và xã hội Không ai còn nghi ngờ gì về vai trò của Công nghệ Thông tin trong đời sống, trong khoa học kỹ thuật, kinh doanh, cũng như trong mọi mặt của xã hội, ngay cả đối với một cá nhân Tuy nhiên trong thời điểm hiện tại, Công nghệ Thông tin mới chỉ bước đầu được ứng dụng trong đời sống nói chung và kinh doanh nói riêng Việc kinh doanh cũ không còn phổ biến và mang lại hiệu quả cao, lên trong quá trình khảo sát và để đáp ứng nhu cầu về việc mua bán hàng online được thuận tiện Vì vậy nhóm chúng em đã nhận nghiên cứu đề tài: “Tìm hiểu mô hình MVC và ứng dụng của mô hình trong thực tế” Chương trình được viết bằng ngôn ngữ Cshapp với cơ sở dữ liệu SQL Server Chúng em chân thành cảm ơn sự hướng dẫn chỉ bảo tận tình của thầy Nguyễn Đức Lưu - Giảng viên bộ môn công nghệ phần mềm và các thầy cô trong khoa công nghệ thông tin của trường đại học Điện Lực đã giúp chúng em hoàn thành đề tài này Xin chân thành cảm ơn DANH MỤC CÁC TỪ TIẾNG ANH VÀ CÁC TỪ VIẾT TẮT 3 - Class: lớp Graphical User Interface (GUI): giao diện đồ họa người dùng Object Oriented Programming (OOP): lập trình huớng đối tượng GUI Component: thành phần đồ họa người dùng Framework: nền tảng Request: Yêu cầu Server: máy chủ Client: máy trạm Control: đối tượng điều khiển Test-driven development (TDD): phát triển điều huớng bởi kiểm thử Unit test: kiểm thử đơn vị Postback: phản hồi Test: kiểm thử Code: mã lệnh ConnectionString : chuỗi kết nối Language Integrate Query (LINQ): ngôn ngữ truy vấn tích hợp Solution: các giải pháp cho dự án Project: dự án Browser : trình duyệt Businness logic: lớp xử lý Implement: thực thi các phương thức từ một lớp Application Programming Interface - API: giao diện lập trình ứng dụng Render: trả lại, biểu diễn Override : nạp chồng Redirect: chuyển huớng DANH MỤC CÁC BẢNG Số bảng Tên bảng Số trang 1 Bảng phân công – công việc 9 2 Quá trình phát triển của ASP.NET 16 3 So sánh giữa ASP.NET WebForm và ASP.NET MVC 23 4 Các loại Action Result 27 4 DANH MỤC CÁC HÌNH MINH HỌA Số hình Tên hình Số trang 1 Các thành phần chính của mô hình MVC 11 2 Mô hình tuần tự của MVC 11 3 Mô hình MVC 14 4 Mô hình ASP.NET WebFrom 16 5 5 Nền tảng ASP.NET MVC Framwork 20 6 Mô hình dữ liệu truyền trong MVC 24 7 Mô hình hoạt động của MVC 28 8 Giao diện Master page 30 9 Giao diện bảng cơ sở dữ liệu 31 10 Giao diện trang giỏ hàng online 45 MỞ ĐẦU  - Lý do chọn đề tài Hiện nay việc thiết kế một trang web ASP.NET rất dễ dàng, chúng ta có thể tìm tài liệu trên mạng, tham khảo các project để nghiên cứu và xây dựng Bởi vì do Microsoft muốn tạo ra một công cụ để người sử dụng có thể dễ dàng làm việc và xây dựng một trang web nhanh chóng nhất, ASP.NET WebForm được thiết kế để thực hiện những điều đó - ASP.NET Webform được thiết kế để người dùng cảm thấy như mình đang thiết kế một chương trình Windows Form vậy, bằng cách kéo thả các button, tự 6 sinh code HTML, đơn giản, dễ hiểu… Chính vì thế nền tảng ASP.NET WebForm - dù đã ra đời cách đây hơn 10 năm nhưng hiện nay vẫn đang sử dụng rộng rãi Tuy nhiên ưu điểm của ASP.NET WebForm đôi khi lại chính là nhược điểm của nó, chính là không có sự phân chia rõ ràng giữa giao diện và code xử lý, nên ngay trong trang giao diện lại có câu lệnh truy vấn Sql Chính cái tiện lợi là một tính năng nào đó được xây dựng thì trong đó có cả mã HTML, Css, Javascrip, lệnh xử lý sự kiện… Đến khi chúng ta cần thay thế hoặc nâng cấp một chức năng nào đó thì rất rắc rối Để gọi là khắc phục những nhược điểm của ASP.NET Webform, - năm 2007 Microsoft đã cho ra đời nền tảng ASP.NET MVC ASP.NET MVC là một lựa chọn thay thế cho ASP.NET WebForm, được xây dựng với 3 lớp chính, lớp giao diện ( Views), lớp điều khiển (Controllers) và lớp dữ liệu (Models) Việc chia một trang web thành nhiều lớp như thế này giúp cho những lập trình viên có kinh nghiệm có thể xây dụng một website với cấu trúc chặt chẽ, rõ ràng Với cấu trúc 3 lớp như thế này, việc nâng cấp hoặc thay thế một chức năng nào đó trở nên hết sức dễ dàng, đồng thời việc kiểm thử cũng trở nên - đơn giản hơn Với những ưu điểm trên, trong tương lại chắc chắn ASP.NET MVC sẽ là một nền tảng chính trong việc xây dựng và phát triển một website ASP.NET Tuy nhiên vì đây là một công nghệ mới, nên tại Việt Nam hầu như chưa được áp dụng nhiều, cũng có rất ít bạn sinh viên biết tới mô hình này Chính vì thế, em đã mạnh dạn chọn đề tài nghiên cứu về MVC để làm đề tài của mình  Mục đích nghiên cứu Nhóm em nghiên cứu ASP.NET MVC nhằm những mục đích sau:  Học được những kiến thức mới  Trong quá trình tìm hiểu sẽ giúp em nâng cao khả năng tự học của mình  Phục vụ cho việc xây dựng trang website mua bán, nhằm mục đích là áp dụng được những gì đã học được đưa vào thực tế  Tạo nguồn tài liệu ASP.NET MVC tiếng việt cho những ai cần tìm hiểu  Đối tượng và phạm vi nghiên cứu - Nghiên cứu ASP.NET MVC 2.0, nghiên cứu các kiến thức liên quan  Phương pháp nghiên cứu - Nghiên cứu lý thuyết thông qua các ebook được phát hành bởi Microsoft Tìm hiểu những ví dụ trên mạng, từng bước áp dụng vào các chương trình - thử nghiệm Sau đó tổng hợp lại kiến thức và hoàn thành báo cáo và sản phẩm demo 7  - Nội dung thực hiện Đề tài chia thành bốn chương:  Chương I: giới thiệu tổng quan về mô hình MVC, để hiểu dõ hơn về kiến  trúc và đặc điểm của mô hình Chương II: giới thiệu về mô hình MVC trong ASP.NET, so sánh hai mô hình ASP.NET MVC với ASP.NET để tìm ra các lợi ích và điểm mạnh  vượt trội của mô hình ASP.NET MVC Chương III: Tìm hiểu cách xây dựng các thành phần cơ bản của  ASP.NET MVC FRAMWORK Chương IV: Mô tả các bước trong chương trình ứng dụng “ xây dựng chương trình mua hàng online – Shopcart ”  Bảng phân công – công việc 1- - Tìm hiểu và tổng hợp nội dung lập báo cáo Cùng tham gia xây dựng code của chương trình 2- Nguyễn Văn Nam - Tìm hiểu và tham gia xây dựng code của chương trình 3-  - Nguyễn Văn Quỳnh ( nhóm trưởng ) Nguyễn Văn Anh Tuấn - Tìm hiểu và tham gia xây dựng code của chương trình Ý nghĩa khoa học và thực tiễn của đề tài Hiện tại ASP.NET MVC là một công nghệ còn mới tại Việt Nam, có rất nhiều bạn sinh viên chưa được biết đến công nghệ này Chính vì thế việc hoàn thành bản báo cáo và chương trình ứng dụng sẽ giúp ích rất nhiều cho các bạn sinh viên khác muốn tiếp cận công nghệ mới một cách 8 nhanh nhất, tại vì hiện tại tài liệu tiếng việt cho ASP.NET MVC là rất ít, đồng thời có sẵn một ứng dụng demo sẽ giúp các bạn dễ hiểu và áp dụng - tốt hơn ASP.NET MVC có rất nhiều ưa điểm vượt trội, em nghĩ tương lại ASP.NET MVC sẽ dần thay thế ASP.NET Webform trong việc xây dựng website Cho lên việc tìm hiểu công nghệ này sẽ có tính thực tiễn rất cao, có thể áp dụng ngay bây giờ hoặc trong tương lai CHƯƠNG I: GIỚI THIỆU MÔ HÌNH MVC 1.1- Xuất xứ của mô hình Tất cả bắt đầu vào những năm 70 của thế kỷ 20, tại phòng thí nghiệm Xerox PARC ở Palo Alto Sự ra đời của giao diện đồ họa (Graphical User Interface) và lập trình hướng đối tượng (Object Oriented Programming) cho phép lập trình viên làm việc với những thành phần đồ họa như những đối tượng đồ họa có thuộc tính và phương thức riêng của nó Không dừng lại ở đó, những nhà nghiên cứu ở Xerox PARC còn đi xa hơn khi cho ra đời cái gọi là kiến - trúc MVC ( viết tắt của Model – View – Controller ) MVC được phát minh tại Xerox PARC vào những năm 70, bởi TrygveReenskaug MVC lần đầu tiên xuất hiện công khai là trong Smalltalk80 Sau đó trong một thời gian dài hầu như không có thông tin nào về MVC, ngày cả trong tài liệu 80 Smalltalk, các giấy tờ quan trọng đầu tiên được công bố trên MVC là “ A Cookbook for Using the Model – View – Controller User Interface Paradigm in Smalltalk-80 ”, bởi Glem Krasner và Stephen Pope, 1.2- xuất bản trong tháng 8 / tháng 9 năm 1988 Kiến trúc của mô hình MVC - Trong kiến trúc MVC, một đối tượng đồ họa người dùng(GUI Component ) bao gồm 3 thành phần cơ bản: Model – View – Controller, Model có trách nhiệm đối với toàn bộ dữ liệu cũng như trạng thái của đối tượng đồ họa, View chính là thể hiện trực quan của Model, hay nói cách khác chình là giao diện của đối tượng đồ họa, Controller điều khiển việc tương tác giữa đối tượng đồ họa và người sử dụng cũng như những đối tượng khác 9 - Hình 1: Các thành phần chính của mô hình MVC Khi người sử dụng hoặc những đối tượng khác cần thay đổi trạng thái của đối tượng đồ họa, nó sẽ tương tác thông qua Controller của đối tượng đồ họa Controller sẽ thực hiện việc thay đổi trên Model Khi có bất kỳ sự thay đổi nào xảy ra ở Model, nó sẽ phát thông điệp ( broadcast message ) thông báo cho View và Controller biết Nhận được thông điệp từ Model, View sẽ cập nhật lại thể hiện của mình, đảm bảo rằng nó luôn là thể hiện trực quan chính xác của Model, còn Controller khi nhận được thông báo từ Model, sẽ có những tương tác cần thiết phản hồi lại người sử dụng hoặc các đối tượng khác Hình 2: Mô hình tuần tự của MVC 10 1 6 8 9 1 3 TÍNH TIỀN 1 4 STT 1 Tên món hàng 5 Số lượng 1 Đơn giá 6 Thành tiền 1 7 2 1 2 2 2 3 2 4 2 5 Tổng tiền:< 2 %=giohang.Tongtien()%> 6 2 7 2 Nhấn vào đây để mua thêm 8 2 hàng 0 3 1 35 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 4 0 4 1 4 2 4 3 4 4 4 5 4 6  Bước 4:Trong thư mục classes tạo các file java có nội dung như sau:  File Sanpham.java 1 package shopping; 2 3 import java.io.Serializable; 4 5 /** 6 * Lớp đặc tả cho 1 sản phẩm 7 * @author VoVanHai 8 */ 9 public class Sanpham implements Serializable{ 1 private String msSP; 0 private String tenSP; 11 private float dongia; 1 2 public Sanpham(String msSP, String tenSP, 1 float dongia) { 3 this.msSP = msSP; 1 this.tenSP = tenSP; 4 this.dongia = dongia; 1 36 } 5 1 public float getDongia() { 6 1 return dongia; 7 } 1 8 public void setDongia(float dongia) { 1 this.dongia = dongia; 9 } 2 0 public String getMsSP() { 2 return msSP; 1 } 2 2 public void setMsSP(String msSP) { 2 this.msSP = msSP; 3 } 2 4 public String getTenSP() { 2 return tenSP; 5 } 2 6 public void setTenSP(String tenSP) { 2 this.tenSP = tenSP; 7 } 2 8 @Override 2 public boolean equals(Object obj) { 9 if (obj == null) { 3 return false; 0 } 3 if (getClass() != obj.getClass()) { 1 return false; 3 } 2 final Sanpham other = (Sanpham) obj; 3 if ((this.msSP == null) ? (other.msSP != 3 3 null) : !this.msSP.equals(other.msSP)) { return false; 4 } 3 5 return true; 3 } 6 @Override 3 7 public int hashCode() { 3 int hash = 7; 8 hash = 19 * hash + (this.msSP != null ? 3 this.msSP.hashCode() : 0); 9 return hash; 4 } 0 4 @Override 37 1 4 2 4 } 3 4 4 4 5 4 6 4 7 4 8 4 9 5 0 5 1 5 2 5 3 5 4 5 5 5 6 5 7 5 8 5 9 6 0 6 1 6 2 6 3 6 4 6 5 6 6 6 public String toString() { return msSP+";"+ tenSP; } 38 7  File Monhang.java 1 package shopping; 2 3 import java.io.Serializable; 4 5 /** 6 * Một món hàng trong giỏ hàng 7 * @author VoVanHai 8 */ 9 public class Monhang implements Serializable{ 1 private Sanpham sanpham; 0 private int soluong; 11 1 public Monhang(Sanpham sanpham, int soluong) { 2 this.sanpham = sanpham; 1 this.soluong = soluong; 3 } 1 4 public Sanpham getSanpham() { 1 return sanpham; 5 } 1 6 public void setSanpham(Sanpham sanpham) { 1 this.sanpham = sanpham; 7 } 1 8 public int getSoluong() { 1 return soluong; 9 } 2 0 public void setSoluong(int soluong) { 2 this.soluong = soluong; 1 } 2 2 @Override 2 public boolean equals(Object obj) { 3 39 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 4 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final Monhang other = (Monhang) obj; if (this.sanpham != other.sanpham && (this.sanpham == null || !this.sanpham.equals(other.sanpham))) { return false; } return true; } @Override public int hashCode() { int hash = 7; hash = 97 * hash + (this.sanpham != null ? this.sanpham.hashCode() : 0); return hash; } } 40 5 0 5 1 5 2 5 3 5 4 5 5  File Giohang.java 1 package shopping; 2 3 import java.io.Serializable; 4 import java.util.ArrayList; 5 6 /** 7 * Đặc tả một giỏ hàng 8 * @author VoVanHai 9 */ 1 public class Giohang 0 11 1 2 implements Serializable{ private ArrayList giohang; 1 3 public Giohang() { 1 4 } 1 5 /** giohang = new ArrayList(); 1 6 * Thêm một món hàng vào giỏ 1 7 */ 1 8 1 * @param mh món hàng cần thêm public void ThemMonHang(Monhang mh) { //nếu có món này trong giỏ thì cập nhật lại số lượng if (giohang.contains(mh)) { 41 9 Monhang m = giohang.get(giohang.indexOf(mh)); 2 0 m.setSoluong(m.getSoluong() + mh.getSoluong()); 2 1 2 2 2 3 } else//nếu chưa có món này trong giỏ thì thêm mới giohang.add(mh); } /** * Trả món hàng khỏi giỏ 2 4 * @param mh là món hàng muốn trả 2 5 public void XoaMonhang(Monhang mh) { */ 2 6 if (giohang.contains(mh)) { 2 7 } 2 8 2 9 giohang.remove(mh); } /** * Lấy giỏ hàng * @return 3 0 3 1 3 2 3 3 */ public ArrayList getGiohang() { return giohang; } /** * TÍnh tổng tiền của giò hàng 3 4 3 5 * @return số tiền phải trả của giỏ hàng */ public double Tongtien(){ double tt=0d; 3 6 for(Monhang mh:giohang){ 3 7 tt+=mh.getSanpham().getDongia()*mh.getSoluong(); } 3 8 3 9 } 4 return tt; } 42 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 5 0 5 1 5 2 5 3 5 4 5 5 5 6 5 7 5 8 5 9  File DBActions.java 43 1 package shopping; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.ResultSet; 6 import java.sql.Statement; 7 import java.util.ArrayList; 8 9 /** 1 * Các công việc liên quan đến cơ sở dữ liệu 0 * @author VoVanHai 1 */ 1 public class DBActions { 1 2 private Connection con; 1 3 public DBActions() throws Exception { 1 Class.forName("com.microsoft.sqlserver.jdbc.S 4 QLServerDriver"); 1 con = 5 DriverManager.getConnection("jdbc:sqlserver://localho 1 st:1433;databaseName=ProductDB", "sa", ""); 6 } 1 7 /** 1 * Lấy sản phẩm khi biết mã số sản phẩm 8 * @param ms mã số sản phẩm 1 * @return sản phẩm cần lấy hoặc null truong 9 trường hợp sp không tồn tại 2 * @throws Exception 0 */ 2 public Sanpham getSanPham(String ms) throws 1 Exception { 2 Sanpham sp = null; 2 Statement stmt = con.createStatement(); 2 String sql = "select * from sanpham where 3 mssp ='" + ms + "'"; 2 ResultSet rs = stmt.executeQuery(sql); 4 if (rs.next()) { 2 String mssp = rs.getString("mssp"); 5 String ten = rs.getString("tenSP"); 2 float dg = rs.getFloat("dongia"); 6 sp = new Sanpham(mssp, ten, dg); 2 } 7 return sp; 2 } 8 2 /** 9 * Lấy tât cả sản phẩm 3 * @return danh sách sản phẩm 0 * @throws Exception 3 */ 1 public ArrayList getAllProducts() throws 44 Exception { ArrayList ds = new ArrayList(); ResultSet rs = null; Statement stmt = con.createStatement(); String sql = "select * from sanpham"; rs = stmt.executeQuery(sql); while(rs.next()){ 3 String mssp = rs.getString("mssp"); 2 String ten = rs.getString("tenSP"); float dg = rs.getFloat("dongia"); ds.add(new Sanpham(mssp, ten, dg)); } return ds; } }  File ControllerServlet.java 1 package shopping; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 import java.util.ArrayList; 6 import javax.servlet.ServletException; 7 import javax.servlet.ServletRequest; 8 import javax.servlet.ServletResponse; 9 import javax.servlet.http.HttpServlet; 1 0 import javax.servlet.http.HttpServletRequest; 11 import javax.servlet.http.HttpServletResponse; 1 import javax.servlet.http.HttpSession; 2 1 /** 3 * Lớp Controller quản lý các tác vụ tập trung 1 * @author VoVanHai 4 */ 1 5 public class ControllerServlet extends HttpServlet { 1 6 1 7 1 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, 45 8 IOException { 1 9 2 0 2 1 doPost(req, resp); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, 2 IOException { 2 try { 2 HttpSession session = request.getSession(false); 3 2 4 DBActions db = new DBActions(); Giohang giohang = null; 2 5 Object obj = session.getAttribute("giohang"); if (obj != null) { 2 6 giohang = (Giohang) obj; } 2 7 String action = request.getParameter("action"); 2 8 2 9 3 0 3 1 3 2 if (action.equals("muahang")) { String msSP = request.getParameter("monhang");//lấy ms sản phẩm được chọn int soluong = Integer.parseInt(request.getParameter("soluong")); Sanpham sp = db.getSanPham(msSP);//Lấy sản phẩm từ cơ sở dữ liệu 3 3 3 4 3 5 Monhang mh = new Monhang(sp, soluong); if (giohang == null) {//mua lần đầu giohang = new Giohang(); } giohang.ThemMonHang(mh); } else if (action.equals("trahang")) { String msSP = 3 6 request.getParameter("mssp");//lấy ms sản phẩm cần xóa 3 7 0f), 0); Monhang mh=new Monhang(new Sanpham(msSP, "", 3 8 giohang.XoaMonhang(mh); 3 9 } else if (action.equals("checkout")) { response.sendRedirect("Checkout.jsp"); 46 4 0 } 4 1 session.setAttribute("giohang", giohang); 4 2 //chuyển lại trang mua hàng response.sendRedirect("MyEShop.jsp"); 4 3 } catch (Exception e) { 4 4 //e.printStackTrace(); response.getWriter().print(e.getMessage()); 4 5 4 6 } } } 4 7 4 8 4 9 5 0 5 1 5 2 5 3 5 4 5 5 5 6 5 7 5 8 5 9 6 0 6 47 1 6 2 6 3  Bước 5: Biên dịch các tập tin tạo ở bước 4  Dùng command-line : javac -d -classpath "e:\javaSoft\apache-tomcat- 1 6.0.20\lib\servlet-api.jar" -encoding "UTF-8" *.java Chú ý thay đổi đường dẫn đến thư mục cài đặt Tomcat của bạn   Bước 6:Trong thư mục WEB-INF tạo file web.xml có nội dung sau: 1 2 6 7 ControllerServlet 8 shopping.ControllerServlet 11 ControllerServlet 1 2 /ControllerServlet 1 3 1 4 30 1 5 1 48 6 1 7 MyEShop.jsp 1 8 1 9   Bước 7: copy file driver của ms sql server vào thư mục lib  File này có thể tìm thấy ở trang của microsoft Bước 8: Mở Web Browser, nhập địa chỉ: http://localhost:8080/MVC_ShoppingCart/MyEShop.jsp 49 ... ASP.NET WebForm ASP.NET MVC 23 Các loại Action Result 27 DANH MỤC CÁC HÌNH MINH HỌA Số hình Tên hình Số trang Các thành phần mơ hình MVC 11 Mơ hình MVC 11 Mơ hình MVC 14 Mơ hình ASP.NET WebFrom... quan mô hình MVC, để hiểu dõ kiến  trúc đặc điểm mơ hình Chương II: giới thiệu mơ hình MVC ASP.NET, so sánh hai mơ hình ASP.NET MVC với ASP.NET để tìm lợi ích điểm mạnh  vượt trội mơ hình ASP.NET... tài: ? ?Tìm hiểu mơ hình MVC ứng dụng mơ hình thực tế? ?? Chương trình viết ngơn ngữ Cshapp với sở liệu SQL Server Chúng em chân thành cảm ơn hướng dẫn bảo tận tình thầy Nguyễn Đức Lưu - Giảng viên môn

Ngày đăng: 03/09/2014, 19:24

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan