Xu Hướng 3/2023 # Jsp] Lập Trình Java Servlet Cơ Bản P5: Forward (Chuyển Tiếp) Và Redirect (Chuyển Hướng) Servlet # Top 9 View | Channuoithuy.edu.vn

Xu Hướng 3/2023 # Jsp] Lập Trình Java Servlet Cơ Bản P5: Forward (Chuyển Tiếp) Và Redirect (Chuyển Hướng) Servlet # Top 9 View

Bạn đang xem bài viết Jsp] Lập Trình Java Servlet Cơ Bản P5: Forward (Chuyển Tiếp) Và Redirect (Chuyển Hướng) Servlet được cập nhật mới nhất trên website Channuoithuy.edu.vn. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất.

Trong bài viết này chúng ta sẽ tìm hiểu cách Servlet Forward (Chuyển tiếp) và Servlet Redirect (Chuyển hướng). Phân biệt giữa Forward và Redirect cùng các ví dụ minh họa.

Để thực hiện được hướng dẫn này, bạn cần đọc và thực hiện những hướng dẫn ở bài viết trước:

1. Tạo WebProject đầu tiên

2. Cấu hình eclipse

3. Tạo và chạy Servlet đầu tiên

1. Forward (Chuyển tiếp)

Chuyển tiếp (Forward): Khi một yêu cầu (request) của trình duyệt gửi tới một Servlet, nó có thể chuyển tiếp yêu cầu tới một trang khác (hoặc một servlet khác). Địa chỉ trên trình duyệt của người dùng vẫn là đường dẫn của trang đầu tiên, nhưng nội dung của trang do trang được chuyển tiếp tới tạo ra. Trang được chuyển tiếp tới bắt buộc phải là môt trang (hoặc Servlet) nằm trong ứng dụng web của bạn. Với Forward bạn có thể sử dụng request.setAttribute() để truyền dữ liệu từ trang 1 sang trang thứ 2.

ForwardDemoServlet.java

package org.o7planning.tutorial.servlet.other; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.o7planning.tutorial.beans.Constants; @WebServlet("/other/forwardDemo") public class ForwardDemoServlet extends HttpServlet { private static final long serialVersionUID = 1L; @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String forward = request.getParameter("forward"); if ("true".equals(forward)) { System.out.println("Forward to ShowMeServlet"); request.setAttribute(Constants.ATTRIBUTE_USER_NAME_KEY, "Hi, I'm Tom come from Walt Disney !"); RequestDispatcher dispatcher = request.getServletContext().getRequestDispatcher("/showMe"); dispatcher.forward(request, response); return; } ServletOutputStream out = response.getOutputStream(); out.println("- servletPath=" + request.getServletPath()); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); } }

Chạy lại Webserver và chạy lần lượt 2 URL:

Trong trường hợp 1: Không có forward, dữ liệu nhìn thấy trên trang là của ForwardDemoServlet tạo ra.

Trường hợp 2: Có chuyển tiếp (forward) sang servlet ShowMeServlet. Trong trường hợp này URL trên trang là không đổi, trong khi dữ liệu là của ShowMeServlet tạo ra.

Forward (chuyển tiếp) thường được sử dụng trong một số tình huống chẳng hạn người dùng yêu cầu servlet A, tuy nhiên trang này bắt buộc phải login trước, trong servlet A kiểm tra thấy nếu chưa login thì chuyển tiếp sang servlet Login.

Quay lại với RequestDispatcher, chúng ta có 2 cách để lấy đối tượng RequestDispatcher.

Trường hợp request.getServletContext().getRequestDispatcher(url) trả về RequestDispatcher có vị trí tương đối với contextPath (có vị trí tương đối với thư mục gốc của website).

http://localhost:8080/contextPath

http://localhost:8080/ServletTutorial

Còn gọi request.getRequestDispatcher(url) trả về RequestDispatcher có vị trí tương đối với trang hiện tại.

http://localhost:8080/ServletTutorial/other/forwardDemo

Chú ý:

Redirect (Chuyển hướng) cho phép bạn chuyển hướng tới các trang bao gồm cả các trang nằm ngoài Website.

Forward (Chuyển tiếp) chỉ cho phép chuyển tới các trang nằm trong Website, đồng thời có thể chuyển dữ liệu giữa 2 trang thông qua request.setAttribute.

2. Redirect (Chuyển hướng)

Chuyển hướng (Redirect): Khi một yêu cầu (request) từ phía người dùng tới một Servlet (Trang A), servlet này có thể chuyển yêu cầu này tới một trang khác (Trang B), và kết thúc nhiệm vụ của nó. Trang được chuyển hướng tới có thể là trang trong ứng dụng của bạn, hoặc có thể là một trang bất kỳ. Địa chỉ trên trình duyệt của người dùng lúc này sẽ hiển thị đường dẫn của trang B. Khác với chuyển tiếp (Forward). Với Redirect bạn không thể sử dụng request.setAttribute(..) để truyền dữ liệu từ trang A sang trang B.

ShowMeServlet.java

package org.o7planning.tutorial.servlet.other; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.o7planning.tutorial.beans.Constants; @WebServlet("/showMe") public class ShowMeServlet extends HttpServlet { private static final long serialVersionUID = 1L; @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String value = (String) request.getAttribute(Constants.ATTRIBUTE_USER_NAME_KEY); ServletOutputStream out = response.getOutputStream(); out.println(value); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); } }

RedirectDemoServlet.java

package org.o7planning.tutorial.servlet.other; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/other/redirectDemo") public class RedirectDemoServlet extends HttpServlet { private static final long serialVersionUID = 1L; @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String redirect = request.getParameter("redirect"); if ("true".equals(redirect)) { System.out.println("Redirect to ShowMeServlet"); String contextPath = request.getContextPath(); response.sendRedirect(contextPath + "/showMe"); return; } ServletOutputStream out = response.getOutputStream(); out.println("- servletPath=" + request.getServletPath()); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); } }

Chạy lại webserver và truy cập lần lượt 2 đường dẫn sau lên trình duyệt:

Với đường dẫn thứ nhất nhận được:

Với đường dẫn thứ 2, request đã chuyển hướng sang ShowMeServlet, đường dẫn URL bạn thấy trên trình duyệt là đường dẫn của servlet ShowMeServlet.

Jsp Servlet Là Gì? Tìm Hiểu Về Jsp Servlet Toàn Tập

JSP là gì?

JSP (Java server page hay Java Scripting Preprocessor – tạm dịch là “Bộ tiền xử lý văn lệnh Java”)  là một công nghệ Java cho phép các nhà phát triển tạo nội dung HTML, XML hay một số định dạng khác khiến cho trang web sinh động hớn. 

JSP thường được làm view trong ứng dụng mvc pattern. Thực ra, JSP vẫn có thể  đáp ứng những yêu cầu khác nhưng để thuận tiện cho việc debug hay tái sử dụng các đoạn mã thì người ta thường dùng làm view còn servlet sẽ làm controller.)

Một trang JSP có những thành phần gì?

Thẻ Root: Thẻ này sẽ chứa các thuộc tính, thông tin của trang JSP.

Expression: được sử dụng để chèn một giá trị vào trong trang một cách trực tiếp.

Directive Elements

“Chu kỳ sống” JSP

Ưu điểm của JSP:

Hỗ trợ cho việc thiết kế giao diện web dễ dàng hơn.

Có vai trò lớn trong việc cho phép thiết kế web tạo nên những trang web động.

Có thể viết một nơi và chạy bất cứ nơi nào.

Hạn chế:

Tiêu tốn dung lượng lưu trữ phía server gấp đôi.

Lần đầu tiên truy cập vào trang JSP sẽ mất nhiều thời gian chờ.

Servlet là gì?

Servlet có thể được mô tả bằng nhiều cách, tùy thuộc vào ngữ cảnh:

Một công nghệ được sử dụng để tạo ra ứng dụng web.

Một API cung cấp các interface và lớp bao gồm các tài liệu.

Một thành phần web được triển khai trên máy chủ để tạo ra trang web động.Có nhiều interface và các lớp trong API servlet như Servlet, GenericServlet, HttpServlet, ServletRequest, ServletResponse, …

Java Servlet là chương trình chạy trên một Web hoặc ứng dụng máy chủ (Application Server). Nó hoạt động như một lớp trung gian giữa một yêu cầu đến từ một trình duyệt Web hoặc HTTP khách (Client) khác và cơ sở dữ liệu hoặc các ứng dụng trên máy chủ HTTP (HTTP Server).

Hiểu đơn giản, Servlet là một chương trình chạy trên môi trường Web_Server hoặc môi trường Application có thực thi mã java với nhiệm vụ chính là giúp thực thi câu lệnh một cách độc lập giúp kết nối các lớp với nhau.

Ví dụ: kết nối với cơ sở giữ liệu, thu thập dữ liệu từ form.

Servlet có công dụng gì?

Nhận client request và lấy thông tin từ request: Đọc dữ liệu rõ ràng do khách hàng (trình duyệt) gửi

Xử lý nghiệp vụ và phát sinh chuyên môn ( bằng cách truy cập database): Quá trình x

ử lý dữ liệu và tạo ra các kết quả này có thể yêu cầu nói chuyện với một cơ sở dữ liệu, thực hiện một cuộc gọi RMI hoặc CORBA, gọi một dịch vụ Web, hoặc tính trực tiếp phản hồi.

Tạo và gửi request đến client hoặc tại request mới đến Servlet mới hoặc JSP mới: Không chỉ  g

ửi dữ liệu rõ ràng (tức là tài liệu) tới khách hàng (trình duyệt) dưới nhiều định dạng như văn bản (HTML hoặc XML), nhị phân (hình ảnh GIF), Excel, …. mà còn gửi phản hồi HTTP ẩn cho khách hàng (trình duyệt). Điều này bao gồm nói với trình duyệt hoặc các trình khách khác loại tài liệu đang được trả về (ví dụ, HTML), thiết lập cookie và các tham số bộ nhớ đệm, và các tác vụ khác.

“Chu kỳ sống” Servlet

Môi trường làm việc của Servlet

Một Servlet là một lớp Java và vì thế cần được thực thi trên một máy ảo Java (JVM) bằng một dịch vụ gọi là servlet engine. Servlet engine tải lớp servlet lần đầu tiên servlet được yêu cầu, hoặc ngay khi servlet engine được bắt đầu. Servlet ngừng tải để xử lý nhiều yêu cầu khi servlet engine bị tắt hoặc nó bị dừng lại.

Tóm lại, JSP là mở rộng của Servlet. Trong thực tế, JSP và Servlet được sử dụng đồng thời để phát triển ứng dụng.

Nếu JSP đại diện cho trang web thì Servlet đại diện cho các thành phần Java.

Servlet viết code HTML khó khăn hơn, nhưng viết code Java cực kỳ đơn giản. Ngược lại với Servlet, JSP viết code HTML cực kỳ dễ dàng tuy nhiên việc viết code Java khó khăn và gây rối cho người mới bắt đầu học Java web.

Trong mô hình MVC, Servlet xử lý phần controller còn JSP xử lý phần view. 

Những câu hỏi thường gặp

Trong vòng đời của JSP, sẽ có các phương thức gì?

Có 3 phương thức của JSP:

public void jspInit().

public void _jspService(ServletRequest request, ServletResponse) throws ServletException, IOException.

public void jspDestroy().

Ai có thể tạo được servlet?

Chỉ có hai đối tượng có thể tạo được servlet, đó là: web container và servle container.

Include directive khác gì so với include action?

Include directive: 

Nội dung tại thời điểm dịch trang

Bao gồm nội dung gốc của trang, kích thước trang sẽ tăng khi runtime

Dành chủ yếu với trang tĩnh

Include action:

Nội dung tại thời điểm yêu cầu

Không bao gồm nội dung gốc của trang

Dùng chủ yếu trang động.

Làm sao để mở rộng được công nghệ JSP?

Để mở rộng công nghệ JSP, bạn có thể phát triển các action tùy chỉnh hoặc các thẻ được đóng gói trong thư viện thẻ.

CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO

Trụ sở chính: L17-11, Tầng 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn, Phường Bến Nghé, Quận 1, Thành phố Hồ Chí MinhVăn phòng đại diện: 42 Trần Phú, Phường 4, Quận 5, Thành phố Hồ Chí Minh

Điện thoại: 0364 333 333Tổng đài miễn phí: 1800 6734

Email: sales@tino.org

Website: www.tino.org

5

/

5

(

2

bình chọn

)

Ngôn Ngữ Lập Trình Java: Khái Niệm, Đặc Điểm,Ứng Dụng Cơ Bản

Ngôn ngữ lập trình Java là gì?

Java là một ngôn ngữ lập trình hướng đối tượng (OOP) và dựa trên các lớp (class), ban đầu được phát triển bởi Sun Microsystems do James Gosling khởi xướng và phát hành vào năm 1995. Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi (runtime environment) chạy.

Ngôn ngữ lập trình Javascript và Java

Bạn có thể cho rằng JavaScript có được ngày hôm nay là nhờ vào sự nổi tiếng của Java. Nhưng có lẽ không phải ai cũng đồng tình với quan điểm này. Điều cần nhấn mạnh ở đây là ngoài quy ước đặt tên, hai ngôn ngữ không có nhiều điểm chung.

Điểm tương đồng giữa ngôn ngữ lập trình và Javascript Java

Như đã đề cập bên trên, về mặt kỹ thuật hai ngôn ngữ lập trình này không có nhiều điểm tương đồng. Có thể điểm qua một số nét giống nhau ở cả 2 ngôn ngữ lập trình này như sau:

Cả Java và JavaScript thường được sử dụng nhiều nhất trong các ứng dụng phía máy khách

Cả Java và JavaScript đều sử dụng cú pháp C

JavaScript sao chép một số quy ước đặt tên của Java.

Điểm khác biệt giữa ngôn ngữ lập trình và Javascript Java

Java là ngôn ngữ lập trình tĩnh, hướng đối tượng, hoạt động trên nhiều nền tảng. JavaScript là ngôn ngữ lập trình động (hay ngôn ngữ kịch bản – scripted language) được sử dụng để làm cho các trang web và ứng dụng trở nên sinh động.

Java dựa trên lớp (class), còn JavaScript thì động.

Java là một ngôn ngữ độc lập. JavaScript phụ thuộc nhiều hơn, nghĩa là nó hoạt động với HTML và CSS trên các trang web để tạo nội dung động.

Đặc điểm của ngôn ngữ lập trình Java

Là một ngôn ngữ lập trình hướng đối tượng vì vậy Java cũng có 4 đặc điểm chung sau đây:

Tính đa hình (Polymorphism): cho phép một phương thức có các tác động khác nhau trên nhiều loại đối tượng khác nhau. Với tính đa hình, nếu cùng một phương thức ứng dụng cho các đối tượng thuộc các lớp khác nhau thì nó đưa đến những kết quả khác nhau. Bản chất của sự việc chính là phương thức này bao gồm cùng một số lượng các tham số.

Tính kế thừa (Inheritance): Điều này cho phép các đối tượng chia sẻ hay mở rộng các đặc tính sẵn có mà không phải tiến hành định nghĩa lại.

Tính đóng gói (Encapsulation):  là tiến trình che giấu việc thực thi những chi tiết của một đối tượng đối với người sử dụng đối tượng ấy.

Ngoài ra Java còn có một số đặc điểm sau:

Độc lập nền (Write Once, Run Anywhere): Không giống như nhiều ngôn ngữ lập trình khác như C và C ++, khi Java được biên dịch, nó không được biên dịch sang mã máy cụ thể, mà thay vào đó là mã bytecode chạy trên máy ảo Java (JVM). Điều này đồng nghĩa với việc bất cứ thiết bị nào có cài đặt JVM sẽ có thể thực thi được các chương trình Java.

Đơn giản: học Java thật sự dễ hơn nhiều so với C/C++, nếu bạn đã quen với các ngôn ngữ lập trình hướng đối tượng thì việc học Java sẽ dễ dàng hơn. Java trở nên đơn giản hơn so với C/C++ do đã loại bỏ tính đa kế thừa và phép toán con trỏ từ C/C++.

Bảo mật: Java hỗ trợ bảo mật rất tốt bởi các thuật toán mã hóa như mã hóa một chiều (one way hashing) hoặc mã hóa công cộng (public key)…

Thông dịch: Java là một ngôn ngữ lập trình vừa biên dịch vừa thông dịch. Chương trình nguồn viết bằng ngôn ngữ lập trình Java có đuôi *.java và được biên dịch thành tập tin có đuôi *.class sau đó được trình thông dịch thông dịch thành mã máy.

Đa luồng: Với tính năng đa luồng Java có thể viết chương trình có thể thực thi nhiều task cùng một lúc. Tính năng này thường được sử dụng rất nhiều trong lập trình game.

Hiệu suất cao: Nhờ vào trình thu gom rác (garbage collection), giải phóng bộ nhớ đối với các đối tượng không được dùng đến.

Linh hoạt: Java được xem là linh hoạt hơn C/C ++ vì nó được thiết kế để thích ứng với nhiều môi trường phát triển.

Ứng dụng của ngôn ngữ lập trình Java

Các ứng dụng yêu cầu tính bảo mật cao

Các ứng dụng sử dụng trong giao dịch của các ngân hàng yêu cầu tính bảo mật cao. Họ cần bảo mật tối đa thông tin tài khoản của khách hàng. Trên thế giới đã có các ngân hàng sử dụng Java để viết các hệ thống giao dịch điện tử như Goldman Sachs, Citigroup, Barclays, Standard Chartered … Ngoài viết các ứng dụng giao dịch, họ còn sử dụng Java trong việc khác như hệ thống xác nhận và kiểm toán, các dự án xử lý dữ liệu …

Ngôn ngữ lập trình Java được đánh giá là một ngôn ngữ có độ bảo mật cao. Chính vì vậy, nó thường được sử dụng vào các ứng dụng của ngành dịch vụ tài chính hay ngân hàng.

Các ứng dụng cho hệ điều hành Android

Java hỗ trợ tối đa cho hệ điều hành Android. Vì thế ngôn ngữ lập trình này được áp dụng rất nhiều vào các ứng dụng dành cho Android.. Số người sử dụng Android chiếm hơn một nửa thị phần vì vậy có thể thấy, nhu cầu sử dụng các ứng dụng là rất lớn.

Nếu trong tay bạn đang cầm một chiếc điện thoại chạy trên hệ điều hành Android thì đừng bất ngờ, bất cứ một ứng dụng nào trên đó cũng đều được hình thành và phát triển trên nền tảng Java. Chính điều này đã tạo ra cơ hội lớn cho các lập trình viên Java: nếu họ học tốt và có kỹ năng thì chắc chắn những lập trình Java sẽ không bao giờ sợ thất nghiệp.

Điện toán đám mây

Cũng giống như Internet vạn vật (IoT), điện toán đám mây là một miếng bánh béo bở mà bất kỳ công ty nào cũng muốn chiếm thị phần. Java với tính năng di động của nó sẽ là chìa khóa giúp bạn quản lý các giải pháp điện toán đám mây. Ngoài ra, Java là ngôn ngữ lập trình đa mục đích. Nó cho phép bạn làm việc trên ứng dụng di động, máy tính để bàn và ứng dụng đám mây. Ví dụ, Heroku cung cấp một nền tảng đám mây sử dụng Java. Ngoài ra, có rất nhiều PaaS giúp bạn đi sâu vào điện toán đám mây. Cả Google Cloud Platform và Microsoft Azure đều có các điều khoản để lưu trữ các ứng dụng Java và quản lý chúng một cách hiệu quả.

Không gian nhúng

Ban đầu Java được phát triển để phục vụ cho các thiết bị nhúng. Nhưng sau đó ngày càng được phát triển mở rộng ra các lĩnh vực khác. Châm ngôn “viết một lần, chạy mọi nơi” cho thấy rằng Java đang mang lại nhiều lợi ích to lớn.

Trong lĩnh vực giao dịch chứng khoán

Java có một lợi thế nữa đó là sử dụng phù hợp với các hệ thống có hiệu suất cao. Mặc dù hiệu suất có thua chút ít so với ngôn ngữ native. Nhưng bạn lại có được sự an toàn, linh động và bảo trì với tốc độ nhanh hơn.

Ngoài các ứng dụng trên thì lập trình Java còn được sử dụng trong các ứng dụng khoa học, công nghệ big data hay các công cụ phần mềm. Java là một ngôn ngữ lập trình có thể được ứng dụng trong nhiều lĩnh vực khác nhau. Bạn có thể xem xét đến điều này để thấy rằng Java là một ngôn ngữ lập trình đáng để học.

Học ngôn ngữ lập trình Java

Để bắt đầu học lập trình Java, bạn phải cần thông thạo các ngôn ngữ lập trình hướng đối tượng, có thể học qua lập trình C để làm quen với những khái niệm của loại lập trình này cũng như có thể hiểu sâu hơn về Java và các công nghệ Java mà nhiều người thường sử dụng như:

Java Core

Enterprise Java Beans

JSP/Java Severlet

JDBC và RMI

Java core

Java core là kiến thức nền tảng của ngôn ngữ lập trình Java, nó sẽ là bước khởi đầu để bạn có thể học những kiến thức nâng cao như: JSP- Servlet – Android.

Ngoài ra, khi làm việc, lập trình viên cần thao tác nhiều với dữ liệu và làm sao để xử lý luồng dữ liệu nhanh nhất và chính xác nhất. 

Cấu trúc dữ liệu và giải thuật được xem là 2 yếu tố quan trọng trong lập trình. Data structure bao gồm 3 mức độ: cơ bản: stack (ngăn xếp), queue (hàng đợi), linkedlist (danh sách liên kết), binary tree (cây nhị phân); trung bình: Heap, Priority queue, Huffman Tree, Hash Table (Bảng băm); nâng cao: segment Tree, Binary Indexed Tree, Sparse Table, ….

JSP và Servlet

Enterprise và Java Beans

Enterprise Java Beans (EJB) là một thành viên trong gia đình J2EE, là nền tảng có nhiệm vụ xây dựng các thành phần phần mềm có tính di động và có thể reusable (sử dụng lại). Từ đó các developer có thể xây dựng và triển khai các distributed application (ứng dụng phân tán) dễ dàng, thuận lợi hơn.

Đích đến của EJB là các enterprise (ứng dụng thương mại), lớn, phân tán. Từ đó, EJB có nhiệm vụ quy định kiến trúc và đặc tả cho việc phát triển và triển khai các component (thành phần) thuộc server-side của distributed application. Các component này được các tổ chức phát triển build ứng dụng hay được một bên thứ ba mua lại.

JDBC và RMI 

JDBC là Java API có nhiệm vụ kết nối và thực hiện truy vấn database (cơ sở dữ liệu), sử dụng trình điều khiển JDBC để kết nối với database. Trước JDBC, ODBC được sử dụng để làm nhiệm vụ trên, tuy nhiên ODBC được biết bằng nền tảng phụ thuộc (ngôn ngữ C) nên Java đã tự định nghĩa API của chính mình và sử dụng JDBC được viết trên nền tảng Java.

Java RMI (Remote Method Invocation – Gọi phương thức từ xa): một kỹ thuật của Java cài đặt distributed object (đối tượng phân tán) hiệu quả và linh động.

Một số đặc tính của RMI:

Là mô hình distributed object của Java, giúp truyền thông giữa các distributed object dễ dàng hơn.

API bậc cao xây dựng dựa trên lập trình socket.

Không những cho phép truyền data giữa các object trên các hệ thống khác nhau mà còn gọi được các phương thức trong các đối tượng remote.

Quá trình truyền data giữa các máy được xử lý trong suốt với Java virtual machine (máy ảo Java).

Cung cấp callback, cho phép Server gọi ngược phương thức ở Client.

Tài liệu tự học ngôn ngữ lập trình Java

Giáo trình ngôn ngữ lập trình java cơ bản của Đại học Quốc gia Hà Nội

Đây là giáo trình dành cho những người đã có một ít kiến thức về Java bao gồm 58 chương từ cơ bản đến nâng cao. Bạn có thể tự học bằng tài liệu này một cách rất dễ dàng.

Các thuật ngữ hướng đối tượng nguyên gốc tiếng Anh đã được chuyển sang tiếng Việt theo những cách khác nhau tùy các tác giả. lập trình viên cần biết thuật ngữ nguyên gốc tiếng Anh cũng như các cách dịch khác nhau đó để tiện cho việc sử dụng tài liệu tiếng Anh cũng như để liên hệ kiến thức giữa các tài liệu tiếng Việt. Vì lý do đó, giáo trình này cung cấp bảng thuật ngữ Anh-Việt với các cách dịch khác nhau tại Phụ lục C, bên cạnh Phụ lục A về công cụ lập trình JDK và Phụ lục B về tổ chức gói của ngôn ngữ Java.

Tài liệu ngôn ngữ lập trình Java tiếng Việt

Giáo trình được nhóm tác giả TP. HCM biên soạn sau một thời gian tham gia giảng dạy chuyên đề lập trình Java cho lớp cử nhân tin học. Nội dung giáo trình là những kiến thức căn bản nhất giúp người đọc tiếp cận dễ dàng với công nghệ mới này, đây là bước đệm để trở thành một “Java Shooter”.

Think Java

Think Java là cuốn sách giới thiệu về lập trình Java cho người mới học. Nó được soạn riêng cho học viên chuẩn bị thi Computer Science Advanced Placement (AP) Exam, nhưng cũng dành cho bất kỳ ai muốn học Java.

Sách rất ngắn gọn, chỉ dùng một bộ phận nhỏ của ngôn ngữ Java đủ để giúp học viên thực hiện những bài tập lớn mà không bị sa đà vào những tiểu tiết của ngôn ngữ lập trình.

Học trực tiếp từ website của Java

Có lẽ việc học lập trình tốt nhất vẫn chính là học qua website chính thức của chính ngôn ngữ lập trình Java. Tại website chính thức của Java bạn cũng có thể được học trực tiếp từ những chuyên gia của họ, đồng thời tham gia các workshop cũng như webinar rất hữu ích.

Các blog học lập trình Java từ cơ bản đến nâng cao

quangchien.wordpress.com

chúng tôi

chúng tôi

Lời kết

Javascript Là Gì? Cơ Bản Về Ngôn Ngữ Lập Trình Của Tương Lai

JavaScript là gì?

Trước khi tìm hiểu thêm về JavaScript, bạn cũng nên nắm rõ các khái niệm sau:

JavaScript dùng làm gì?

Lập trình website.

Xây dựng ứng dụng cho website máy chủ.

Ứng dụng di động, app, trò chơi.

Khi tải một trang web, trình duyệt phân tích cú pháp HTML và tạo ra một loại dữ liệu gọi là DOM từ nội dung. DOM thể hiện chế độ xem trực tiếp của trang web với mã JavaScript. Đoạn mã này thực hiện cập nhật cho DOM và được trình bày ngay lập tức cho người dùng.

Trình duyệt cũng ghi nhận các sự kiện giao diện người dùng như: di chuyển chuột, nhấp chuột, v.v. Sau đó, tùy theo phản hồi của người dùng, đoạn mã sẽ thực hiện công việc được lập trình tương ứng. Sử dụng tất cả các tiện ích này, bạn có thể xây dựng các ứng dụng nhỏ để phục vụ cho một vài mục đích được cho phép.

Lợi ích khi dùng JavaScript

Nhờ Javascript, các lập trình viên có thể dễ dàng viết tập lệnh phía máy khách, tích hợp các tập lệnh một cách liền mạch vào HTML, cho phép website tương tác, trả lời người dùng ngay lập tức và tạo ra giao diện hiển thị phong phú hơn.

Các lập trình viên có thể viết mã phía máy chủ bằng JavaScript.

Javascript cho phép các nhà phát triển đơn giản hóa thành phần của ứng dụng, qua đó đơn giản hóa việc phát triển các ứng dụng web phức tạp.

JavaScript cho phép thiết kế web responsive – tối ưu trên cả máy tính và thiết bị di động chỉ với một bộ mã.

Để tham gia vào dự án Tăng tốc trang di động (AMP) của Google, các lập trình viên phải sử dụng ngôn ngữ lập trình JavaScript. Bạn sẽ hiểu rõ hơn về Google AMP qua bài viết:

Mặc dù thiếu một số tính năng phức tạp được cung cấp bởi các ngôn ngữ lập trình hiện đại như Java và C#, JavaScript vẫn có thể dễ dàng mở rộng bằng cách sử dụng các bộ chuyển đổi như CoffeeScript, TypeScript, DukeScript và Vaadin.

Các thư viện Javascript phổ biến

jQuery: Chuyên về hiệu ứng.

js: Chuyên xây dựng ứng dụng thời gian thực.

AngularJS: Chuyên xây dựng ứng dụng trang cá nhân.

ReactJS: Chuyên viết ứng dụng mobile.

Một số thư viện khác như ExtJS, Sencha Touch,….

Ưu điểm và nhược điểm của JavaScript

Ưu điểm của JavaScript là gì?

JavaScript là ngôn ngữ lập trình dễ học.

Lỗi của JavaScript dễ phát hiện hơn và vì vậy dễ sửa hơn.

JavaScript hoạt động trên nhiều trình duyệt, nền tảng.

JavaScript giúp website tương tác tốt hơn với khách truy cập.

JavaScript nhanh hơn và nhẹ hơn các ngôn ngữ lập trình khác.

Nhược điểm của JavaScript là gì?

Một số khuyết điểm của JavaScript có thể kể đến như:

Dễ bị khai thác.

Có thể được dùng để thực thi mã độc trên máy tính của người dùng.

Có thể bị triển khai khác nhau tùy từng thiết bị dẫn đến việc không đồng nhất.

IDE lập trình JavaScript là gì?

IDE JavaScript là các phần mềm chuyên dụng cung cấp môi trường lập trình JavaScript cho lập trình viên. Khi sử dụng IDE JavaScript, các developers được hỗ trợ code JavaScript tốt nhất.

Nên dùng IDE nào để code JavaScript?

PHPdesigner: PHPdesigner giúp bạn có thể chỉnh sửa, thiết kế, truyền tải các PHP, HTML5, CSS3 và JavaScript​ vô cùng đơn giản. Chức năng tìm ra các lỗi trong dòng mã PHP của bạn phù hợp với Xdebug. Ngoài ra, phần mềm này còn hỗ trợ tất cả framework PHP phổ biến như Zend, CodeIgniter, Yii, Symfony và Prado.

Dreamweaver: Dreamweaver hỗ trợ được rất nhiều loại ngôn ngữ như PHP, chúng tôi JSP, ASP… Hầu hết các ngôn ngữ lập trình web. Dreamweaver có khá nhiều tiện ích dễ dàng thực hiện các thao tác kéo thả di chuyển các phần tử, các khung của một trang web hay viết code, thẻ tag, bảng mã màu dễ dàng chỉnh sửa, thanh công cụ đầy đủ chức năng tiện ích… tiết kiệm được rất nhiều thời gian cho học viên lập trình. Download Dreamweaver.

PHP Sublime Text: IDE này được viết dựa trên ngôn ngữ lập trình Python và C++. Sublime Text là một Text Editor cực kỳ hiệu quả dành cho các lập trình viên không những làm tăng hiệu suất làm việc mà còn tiết kiệm thời gian gõ code với các Plugin hữu ích. Download PHP Sublime Text.

Cách hoạt động của JavaScript

So sánh các ngôn ngữ lập trình web khác và JavaScript

HTML (Hypertext Markup Language) là một nền tảng tương tự như Microsoft Word giúp người dùng thiết kế thành phần trong website, cấu trúc các trang, chuyên mục hoặc các thiết kế các ứng dụng… Vậy, chức năng chủ yểu của nền tảng này chính là tạo bố cục và định dạng website.

PHP: PHP là ngôn ngữ phía máy chủ, khác với JavaScript chạy trên máy khách hàng. Nó thường được sử dụng trong các hệ quản trị nội dung nền PHP như WordPress.

CSS là gì?

CSS là từ viết tắt của cụm từ Cascading Style Sheets, ngôn ngữ được sử dụng để tạo nên phong cách cho website.

Hướng dẫn viết chương trình JavaScript đầu tiên

Cặp thẻ mở và thẻ đóng

Ví dụ:

alert(“Hello World!”);

Đặt thẻ script ở đâu?

Thông thường, bạn có thể viết những đoạn mã Javascript trên phần head. Tuy nhiên, đó cũng không phải là điều kiện bắt buộc. Vì vậy bạn có thể đặt ở bất kỳ đâu tùy thích miễn là được bao lại bằng thẻ script.

Ví dụ: Đặt trong thẻ head

alert(“Hello World!”);

Bạn có thể viết những đoạn mã Javascript ở một file có phần mở rộng là .js, sau đó dùng thẻ script để import vào. Lúc này bên trong file chúng tôi bạn không đặt thẻ scirpt. Vì nhờ vào đuôi .js, trình duyệt sẽ tự nhận đây là file chứa mã Javascript.

Ví dụ:

Ví dụ:

Viết chương trình JavaScript

Trước khi thực hành, hãy đảm bảo rằng bạn có thể sử dụng một phần mềm viết code bất kỳ để viết mã Javascript.

Tạo một file chúng tôi và lưu tại bất kì vị trí nào với phần mở rộng là .html

Mở file bằng Notepad++ rồi gõ nội dung sau:

Chạy lên bằng Firefox hoặc Chrome bạn thấy xuất hiện một button

alert(‘Hello World!’); });

Nếu bạn sử dụng website mã nguồn mở nói chung hay website nói riêng thì ngôn ngữ JavaScript là yếu tố không thể thiếu. Các CMS hiện nay đều tích hợp các công nghệ lập trình hiện đại nhất. Và JavaScript là một trong những ngôn ngữ đi đầu cho sự phát triển của lập trình website.

Cập nhật thông tin chi tiết về Jsp] Lập Trình Java Servlet Cơ Bản P5: Forward (Chuyển Tiếp) Và Redirect (Chuyển Hướng) Servlet trên website Channuoithuy.edu.vn. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất. Chúc bạn một ngày tốt lành!