Nối tiếp phần 1 và phần 2, trong phần 3 này, ta sẽ ứng dụng JavaBean class với một ví dụ cụ thể. Về bản chất, JavaBean chỉ đơn giản là một class giống như bất kỳ một class nào ngoại trừ nó có thêm 3 rules sau:
+ Tất cả các thuộc tính public đều phải được xác định.
+ class phải có một constructor không đối số.
+ class phải sử dụng giao tiếp Java.io.Serialize
Cụ thể trong bài viết này, chúng ta sử dụng 3 phần tử JSP để tạo JavaBean trong một JSP page, đó là:
+ <jsp:useBean> với các thuộc tính:
id scope class
+ <jsp:setAttribute> với các thuộc tính:
name property value
+ <jsp:getAttribute> với các thuộc tính:
name property
Ta sẽ tạo JavaBean như sau:
1. Tạo file MyBean.java trong thư mục C:\tomcat\webapps\myapp\src\
package MyBeans; public class MyBean { private String message = null; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }
2. Di chuyển sang thư mục C:\tomcat\webapps\myapp\src\ và chạy lệnh sau để dịch từ MyBean.java sang mã máy JVM và được file MyBean.class
shell> set path=C:\Program Files\Java\jdk1.8.0_121\bin
shell> javac MyBean.java
3. Move file MyBean.class sang thư mục C:\tomcat\webapps\myapp\WEB-INF\classes\MyBeans
<html> <head> </head> <body> <jsp:useBean id="mybean" class="MyBeans.MyBean" scope="page" > <jsp:setProperty name="mybean" property="message" value="JavaBean Hello world" /> </jsp:useBean> <jsp:getProperty name="mybean" property="message" /></h1> </body> </html>
Servlet nói chung được dùng để quản lý các request, đặc biệt là các HTPP request. Ta sẽ thử với một phiên bản mở rộng của HttpSerlet như sau:
1. Tạo file MyServlet.java với nội dung như sau trong thư mục c:\tomcat\webapps\myapp\src
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class MyServlet extends HttpServlet { private String message; public void init() throws ServletException { message = "Servlet Hello World"; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter writer = response.getWriter(); writer.println(message); } public void destroy(){} }
2. Dịch file java trên như đã làm lúc trước
shell> set path=C:\Program Files\Java\jdk1.8.0_121\bin
shell> javac MyServlet.java
3. Move MyServlet.class vừa sinh ra vào thư mục c:\tomcat\webapps\myapp\WEB-INF\classes
4. Tạo file web.xml trong thư mục c:\tomcat\webapps\myapp\WEB-INF nếu đã có file này rồi thì chỉ cần add đoạn <servlet> & <servlet-mapping> bên trong thẻ <web-app> là được:
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0" metadata-complete="true"> <servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/HelloWorld-Servlet</url-pattern> </servlet-mapping> </web-app>
5. Sau đó restart lại Apache Tomcat và thử link sau: http://localhost/myapp/HelloWorld-Servlet. Cũng 100% là phải ra được màn hình như sau để biết rằng mọi thứ đã thành công
Để có thể kết nối JSP với SQL Server 2008, ta sẽ cần 1 Database mẫu và một module để kết nối JSP vào SQL, ở đây ta chọn sqljdbc của Microsoft.
1. Download DB mẫu tại đây, Download JDBC tại đây và setup click and click
2. Giải nen JDBC và copy file sqljdbc42.jar vào thư mục c:\tomcat\lib
3. Tạo file helloworld-sqlserver.jsp với nội dung sau và save vào trong thư mục c:\tomcat\webapps\myapp
<html> <head></head> <body> <%@ page import="java.sql.*" %> <% String connectionUrl = "jdbc:sqlserver://localhost:1433;databasename=AdventureWorks2008R2;user=AdventureWorks;password=AdventureWorks"; Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection con = DriverManager.getConnection(connectionUrl); Statement statement = con.createStatement() ; ResultSet resultset = statement.executeQuery("select Name, GroupName from HumanResources.Department"); %> <table> <tr><th>Name</th><th>GroupName</th></tr> <% while (resultset.next()){ %> <tr> <td><%= resultset.getString("Name") %></td> <td><%= resultset.getString("GroupName") %></td> </tr> <% } %> </table> </body> </html>
4. Bắt buộc Restart lại Tomcat và Kiểm tra lại việc kết nối tại link http://localhost/myapp/helloworld-sqlserver.jsp. Nếu được như hình sau thì có nghĩa là đã thành công mỹ mãn.
MỌI THÔNG TIN CHI TIẾT VUI LÒNG LIÊN HỆ
CÔNG TY CỔ PHẦN GIẢI PHÁP DỮ LIỆU TRỰC TUYẾN ANZ
Địa chỉ: Biệt thự 11 ngõ 233 đường Xuân Thủy, quận Cầu Giấy, Hà Nội
Email: info@1hosting.com.vn
Hotline: 0915 54 99 22