Chạy file jsp mac dịnh tren eclipse
Môi trường lập trình là nơi bạn phát triển các chương trình JSP của bạn, test chúng và sau đó là run. Show Chương này hướng dẫn bạn chi tiết cách cài đặt môi trường JSP theo các bước sau: Cài đặt Java Development KitBước này bao gồm tải Java Software Development Kit (SDK) và thiết lập biến môi trường PATH. Bạn có thể tải SDK từ: Java SE Downloads. Sau khi tải về, bạn theo các chỉ dẫn đã cho để cài đặt và định cấu hình cho cài đặt. Cuối cùng, thiết lập các biến môi trường PATH và JAVA_HOME để tham chiếu tới thư mục mà chứa java và javac, soạn java_install_dir/bin và java_install_dir. Nếu bạn đang chạy trên Windows và cài đặt SDK trong C:\jdk1.5.0_20, bạn đặt dòng sau trong C:\autoexec.bat file:
Trên Windows NT/2000/XP, bạn cũng có thể nhấp chuột phải trên My Computer, chọn Properties, và chọn Advanced, sau đó là Environment Variables. Cuối cùng, bạn update giá trị PATH và nhấn nút OK. Trên Unix (Solaris, Linux, …), nếu cài đặt SDK trong /usr/local/jdk1.5.0_20 và bạn sử dụng C Shell, bạn đặt dòng sau vào trong .cshrc file của bạn:
Nếu bạn sử dụng một Development Environment (IDE) ví dụ như Borland JBuilder, Eclipse, IntelliJ IDEA, hoặc Sun ONE Studio, bạn biên dịch và chạy một chương trình đơn giản để xác nhận rằng IDE biết nơi bạn cài đặt Java. Cài đặt Web Server: TomcatMột số Web Server, hỗ trợ JavaServer Pages và Servlets, là có sẵn trên thị trường. Một số chúng là miễn phí và Tomcat là một trong số đó. Apache Tomcat là một sự triển khai phần mềm mã nguồn mở của JavaServer Pages (JSP) và các công nghệ Servlet, và có thể hoạt động như là một Stanalone Server để kiểm tra JSP và Servlet. Apache Tomcat có thể được tích hợp với Apache Web Server. Sau đây là các bước để cài đặt Tomcat:
Tomcat có thể được bắt đầu bởi thực thi các lệnh sau trên thiết bị Windows:
Tomcat có thể được bắt đầu bởi thực thi các lệnh sau trên thiết bị Unix (Solaris, Linux, …):
Sau khi khởi động thành công, các ứng dụng web mặc định được include với Tomcat sẽ là có sẵn bởi việc chạy http://localhost:8080/. Nếu mọi thứ là ổn, thì nó hiển thị kết quả sau: Các thông tin bổ sung về định cấu hình và chạy Tomcat có thể được tìm thấy trong Document được bao tại đó, cũng như trên: http://tomcat.apache.org Tomcat có thể bị dừng bởi thực thi các lệnh sau trên thiết bị Windows:
Tomcat có thể bị dừng bởi thực thi các lệnh sau trên thiết bị Unix (Solaris, Linux, …):
Thiết lập CLASSPATHKhi Servlet không là một phần của Java Platform, Standard Edition, bạn phải thông báo các lớp Servlet tới bộ biên dịch (compiler). Nếu bạn đang chạy trên Windows, bạn cần đặt các lệnh sau trong C:\autoexec.bat file:
Trên Windows NT/2000/XP, bạn cũng có thể nhấp chuột phải vào My Computer, chọn Properties, và chọn Advanced, sau đó là Environment Variables. Cuối cùng, bạn update giá trị CLASSPATH và nhấn nút OK. Trên Unix (Solaris, Linux, …), nếu bạn đang sử dụng C Shell, bạn đặt các dòng sau vào trong .cshrc file.
Ghi chú: Giả sử thư mục lập trình của bạn là C:\JSPDev (với Windows) hoặc /usr/JSPDev (với Unix) thì bạn cũng cần thêm các thư mục này vào trong CLASSPATH theo cách tương tự như bạn đã thêm ở trên. Loạt bài hướng dẫn học lập trình JSP cơ bản và nâng cao của chúng tôi dựa trên nguồn tài liệu của: Tutorialspoint Xin chào tất cả các bạn đến với loạt bài hướng dẫn tự học java web với jsp/servlet theo mô hình MVC từ những kiến thức cơ bản cho đến nâng cao.Những kiến thức học java web cần nắm như tạo chương trình đầu tiên HelloWorld,cách để lấy và gữi dữ liệu từ form hay cách để kết nối dữ liệu với jsp/servlet… Sau khi kết thúc loạt bài hướng dẫn tự học java web với jsp/servlet theo mô hình mvc của mình,các bạn sẽ hiểu và nắm được những kiến thức cơ bản của jsp/servlet,tạo ra một ứng dụng java web với jsp/servlet đơn giản.Vì không có thời gian nhiều nên mình không thể viết hết và tất cả những gì kiến thức của lập trình web với jsp/servlet cho các bạn đọc học java web,tuy nhiên mình sẽ cố gắng đưa đến cho các bạn những kiến thức cơ bản và quan trọng nhất.Từ đó có thể tự xây dựng và phát triển những ứng dụng web cho riêng mình. Chúng ta bắt đầu khởi động bằng một chương trình đơn giản HelloWorld với jsp cũng như servlet,tiếp đó là những nội dung quan trọng như hiểu quy trình khi chạy một file servlet,cách mapping,cách sử dụng kỹ thuật chuyển tiếp…đó là nội dung của bài 1 này : Trong phần này các bạn cần có :
Tạo chương trình hello world với jspMình có một bài viết rất chi tiết cách tạo chương trình hello world với jsp,các bạn xem tại đây nhé. Chi tiết Tạo chương trình hello word với servletTương tự,mình cũng có một bài viết rất chi tiết cách tạo chương trình hello world với servlet,các bạn xem tại đây nhé. Chi tiết trìn >> Đây là đường dẫn url khi chạy trang jsp : Kỹ thuật forward trong Servlet – Mapping file servletKhi chúng ta chạy trực tiếp từ một file jsp thì chắn sẽ biết được tên file đang chạy là file nào,ở ví dụ trên đó chính là helloWorld.jsp.Thứ 2 vì lí do này cho nên một số trường hợp hacker sẽ tấn công vào trang web khi biết file đang sử dụng,thư mục đang chứa file này.Vậy câu hỏi đặt ra là làm thế nào để đổi lại đường dẫn file index.jsp? Thay vì đường dẫn /index.jsp thì tôi sẽ đổi lại đường dẫn ví dụ như : /helloWorld hoặc /chuong-trinh-dau-tien. Để làm được điều này,thường cách làm sẽ tạo ra một file servlet,sau đó sẽ chuyển tiếp (forward) sang file jsp muốn chuyển đến.Như vậy chúng ta chỉ cần mapping đường dẫn file servlet mà thôi,vì khi chuyển tiếp các bạn cứ nghĩ nôm ra rằng cả hai trang jsp và servlet nó gộp lại thành một trang vì trang jsp lúc này nó ghì đè nội dung lên trang servlet.Cách chuyển tiếp sử dụng kỹ thuật forward như sau :
Tôi tạo ra một file servlet HelloWorldController,các bạn có thể mapping file servlet bằng annotation @WebServlet(),tuy nhiên thường thì chúng ta nên mapping trong file cấu hình project file web.xml.Cách mapping file servlet như sau : Mapping file web.xml :
Trong đó :
Tiếp theo ở file servlet sử dụng kỹ thuật forward để chuyển tiếp một request từ một servlet này đến một servlet khác và để chứa một luồng xuất từ một servlet trong luồng xuất từ servlet chính,cách sử dụng như sau : File HelloWorldController.java : package controller; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class HelloWorldController */ public class HelloWorldController extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public HelloWorldController() { super(); } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { RequestDispatcher dispatcher = request.getRequestDispatcher("index.jsp"); dispatcher.forward(request, response); } } Tôi sẽ giải thích về file servlet này,đầu tiên khi chạy bất kỳ một file servlet đối với một ứng dụng lập trình web jsp/servlet,phương thức doGet() luôn luôn được gọi đầu tiên,nhưng vì lý do bảo mật,bảo mật ở đây chính là khi truyền lấy dữ liệu từ form,nếu các bạn sử dụng method =”get” ở form thì tương ứng phương thức doGet() sẽ nhận các dữ liệu đó và mỗi khi dùng method=”get”,thông tin dữ liệu sẽ được show trên url cho nên thường chúng ta sử dụng method =”post”,vậy những nội dung viết ở phương thức doPost() để hiển thị được ở trình duyệt các bạn cần gọi phương thức doPost() ở doGet(). Tiếp theo,các bạn quan tâm đến những phần mà tôi in đậm. Để sử dụng được phương thức forward() chúng ta cần có đối tượng dispatcher được tạo ra từ RequestDispatcher.index.jsp truyền vào trang jsp muốn chuyển tiếp đến.Các bạn truyền vào một trang jsp bất kỳ nhé. Tạo một trang index.jsp trong WebContent và viết một số nọi dung đơn giản như sau : <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> Tiến hành chạy lại server,chúng ta sẽ chạy từ file servlet HelloWorldController,từ đó nó mới chuyển tiếp đến file jsp.Một khi các bạn có nội dung thay đổi trong file servlet,thì cần start để chươn trình tiến hành build lại nhé.
Mặc định đối với tất cả các ứng dụng web,khi chạy thì mặc định sẽ chạy file index nếu trong project có tên file này.Cho nên lúc này lý do tại sao đường dẫn của tôi là /jspd1_itphutran/,bây giờ các bạn thêm vào đường dẫn mà các bạn đã mapping trong file xml. Vậy chúng ta đã mapping thành công,đường dẫn lúc này là /jspd1_itphutran/helloWorld nhưng nội dung của file index.jsp Khắc phục lỗi font chữ trong file jspNhư ví dụ trên,bạn đọc thấy rằng chúng ta đã hiển thị được nội dung file index.jsp tuy nhiên vẫn còn lỗi font chữ,với bất kỳ một lập trình viên lập trình web nào ,ai cũng biết font “UTF-8” là font để hiển thị được tiếng việt, mặc định khi tạo ra một file jsp sẽ là font ISO-8859-1.Để khắc phục lỗi font chữ trong file jsp các bạn sửa lại thành UTF-8 nhé. Thứ nhất là : <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Thứ 2 : Kết quả khi chạy lại trang : Ở đây tôi cũng có một bài viết chi tiết để khắc phục lỗi font chữ khi chuyển từ file html sang jsp,sau này sẽ áp dụng cho một ứng dụng java web với jsp servlet,các bạn có thể tham khảo : Sau đây là cấu trúc dự án : Kết Luận :Như vậy ở bài 1 này với nội dung học java web với jsp/servlet -Bài 1 : Tạo chương trình đầu tiên và kiến thức cơ bản chúng ta đã nắm được một số kiến thức như sau :
Bài 2 có rất nhiều kiến thức hấp dẫn cũng như nó rất quan trọng đối với một ứng dụng java web với jsp servlet.Tếp tục với loạt bài hướng dẫn tự học java web với JSP/SERVLET,bạn đọc follows fanpge để luôn cập nhật được những bài mới nhất nhé. Chúc các bạn học tốt! |