最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Serverlet

2022-06-27 11:44 作者:CAE虛擬與現(xiàn)實  | 我要投稿

一、Serverlet簡單介紹:

Servlet(Server Applet),全稱Java Servlet,未有中文譯文。是用Java編寫的server端程序。其主要功能在于交互式地瀏覽和改動數(shù)據(jù),生成動態(tài)Web內(nèi)容。狹義的Servlet是指 Java語言實現(xiàn)的一個接口,廣義的Servlet是指不論什么實現(xiàn)了這個Servlet接口的類,普通情況下,人們將Servlet理解為后者。

二、Serverlet的執(zhí)行機制:

Servlet的主要功能在于交互式地瀏覽和改動數(shù)據(jù),生成動態(tài)Web內(nèi)容。這個過程為:
1、client發(fā)送請求至server端;
2、server將請求信息發(fā)送至Servlet;
3、Servlet生成響應(yīng)內(nèi)容并將其傳給Server。響應(yīng)內(nèi)容動態(tài)生成,通常取決于client的請求;
4、server將響應(yīng)返回給client ;

三、Serverlet的生命周期:

1、Server創(chuàng)建一個Servlet的實例,也就是調(diào)用了init();
2、一個client的請求到達Server;
3、Server將請求發(fā)送給Serverlet;

4、Serverlet生成對請求的響應(yīng);

5、Server激活Servlet的service()方法,傳遞請求和響應(yīng)對象作為參數(shù);

a、service()方法獲得關(guān)于請求對象的信息,處理請求,訪問其它資源,獲得須要的信息;
b、service()方法使用響應(yīng)對象的方法,將響應(yīng)傳回Server,終于到達client。service()方法可能激活其它方法以處理請求,如doGet()或doPost()或程序猿自己開發(fā)的新的方法;
c、對于很多其它的client請求,Server創(chuàng)建新的請求和響應(yīng)對象,仍然激活此Servlet的service()方法,將這兩個對象作為參數(shù)傳遞給它。如此重 復(fù)以上的循環(huán),但無需再次調(diào)用init()方法。一般Servlet僅僅初始化一次 ? ,當(dāng)Server不再須要Servlet時(一般當(dāng)Server關(guān)閉時),Server調(diào)用Servlet的Destroy()方法。

四、Serverlet調(diào)用JavaBean:

//通過Servlet調(diào)用JavaBean輸出結(jié)果集,并打印

//JavaBean:TBean SourceCode

package Demo;

import java.io.*;

import java.sql.*;

/**

* 在此處插入類型說明。

* 創(chuàng)建日期:(00-7-10 8:30:32)

* @author:Administrator

*/

public class TBean implements Serializable {

protected Connection conn = null;

protected Statement stmt = null;

protected java.sql.ResultSet Result;

/**

* TBean 構(gòu)造子注解。

*/

public TBean() {

super();

}

/**

* 在此處插入方法說明。

* 創(chuàng)建日期:(00-7-10 8:31:06)

*/

public void execute() {

try {

Class.forName("COM.ibm.db2.jdbc.App.DB2Driver").newInstance();

conn = DriverManager.getConnection("jdbc:db2:sample", "db2admin", "db2admin");

stmt = conn.createStatement();

String sql = "SELECT * FROM STAFF WHERE DEPT=20";

ResultSet rs = stmt.executeQuery(sql);

setResult(rs);


} catch (SQLException e) {

} catch (IllegalAccessException e2) {

} catch (ClassNotFoundException e3) {

} catch (InstantiationException e4) {

}

}

/**

* 在此處插入方法說明。

* 創(chuàng)建日期:(00-7-10 8:36:42)

* @return java.sql.ResultSet

*/

public java.sql.ResultSet getResult() {

return Result;

}

/**

* 在此處插入方法說明。

* 創(chuàng)建日期:(00-7-10 8:36:42)

* @param newResult java.sql.ResultSet

*/

public void setResult(java.sql.ResultSet newResult) {

Result = newResult;

}

/**

* 在此處插入方法說明。

* 創(chuàng)建日期:(00-7-10 8:35:54)

*/

public void Sqlclose() {

try {

conn.close();

stmt.close();

} catch (SQLException e) {

}

}

}


//Servlet:TServlet,調(diào)用JavaBean,并將結(jié)果集打?。?/p>

package Demo;


import java.io.*;

import java.sql.*;

import javax.servlet.*;

import javax.servlet.http.*;

/**

* 在此處插入類型說明。

* 創(chuàng)建日期:(00-7-10 8:37:57)

* @author:Administrator

*/

public class TServlet extends HttpServlet implements Serializable {

/**

* TServlet 構(gòu)造子注解。

*/

public TServlet() {

super();

}

/**

* service 方法注解。

*/

public void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {

try {

Demo.TBean javabean = new Demo.TBean();

javabean.execute();

ResultSet rs1 = javabean.getResult();

PrintWriter out = res.getWriter();

res.setContentType("text/html");

out.println("<table border=1>");

out.println("<H1>Hello World</H1>");

out.println("<td>ID</td><td>NAME</td><td>DEPT</td><td>JOB</td><td>YEARS</td><td>SALARY</td><td>COMM</td>");

while (rs1.next()) {

out.println("<tr>");

for (int i = 1; i <= 7; i++)

out.println("<td>" + rs1.getString(i) + "</td>");

out.println("</tr>");

}

out.println("</table>");

javabean.Sqlclose();

} catch (SQLException e) {

}

}

}

//運行:在VisualAge for Java 的IBM Websphere Test Environment的環(huán)境下:

//http://localhost:8080/servlet/Demo.TServlet



Hello Print ID NAME DEPT JOB YEARS SALARY COMM

10 Sanders 20 Mgr 7 18357.50 null

20 Pernal 20 Sales 8 18171.25 612.45

80 James 20 Clerk null 13504.60 128.20

190 Sneider 20 Clerk 8 14252.75 126.50


實例原文鏈接:https://blog.csdn.net/fly29/article/details/215776


Serverlet的評論 (共 條)

分享到微博請遵守國家法律
珠海市| 泉州市| 梓潼县| 广德县| 宽城| 上栗县| 枣阳市| 石门县| 新乡市| 长葛市| 晋江市| 眉山市| 长丰县| 马边| 沈丘县| 铁岭县| 安溪县| 盐源县| 芜湖市| 黄冈市| 四子王旗| 蒲江县| 漳州市| 库尔勒市| 香格里拉县| 会同县| 沁源县| 项城市| 泽普县| 九龙县| 准格尔旗| 西宁市| 深泽县| 司法| 五河县| 雷山县| 互助| 铜山县| 安阳市| 溧水县| 武平县|