⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch16.txt

📁 精通Java网络编程代码全部
💻 TXT
字号:
/* 代码16-1
 * Created on 2005-5-22
 */

import java.io.*;
import java.servlet.*;
import javax.servlet.*;

public class RequestInfoExample extends HttpServlet {
	public void doGet(HttpServletRequest request, HttpServletResponse response)
		throws IOException, ServletException
	{
		response.setContentType("text/html");//设置当前的类型
		PrintWriter out = response.getWriter();//获得输出流
		out.println("<html>"=;//输出html标记
		out.println("<body>"=;//输出主体标记
		out.println("<head>"=;//输出头命令标记
		out.println("<title>Request Information Example</title>");
		out.println("</head>");
		out.println("<body>"=;
		out.println("<h3>Request Information Example</h3>"=;//设置文本大小类型
		out.println("Method: " + request.getMethod());
		out.println("Request URI: " + request.getRequestURI());//获得URL地址
		out.println("Protocol: " + request.getProtocol());//获得协议类型
		out.println("PathInfo: " + request.getPathInfo());//获得路径信息
		out.println("Remote Address: " + request.getRemoteAddr());
		out.println("</body>");
		out.println("</html>");
	}
	
	public void doPost(HttpServletRequest request, HttpServletResponse res)
		throws IOException, ServletException
	{
		doGet(request, response);
	}
}

/* 代码16-2
 * Created on 2005-5-22
 */

public interface Servlet {
	public void init(ServletConfig config)//初始化接口
		throws ServletException;
	public ServletConfig getServletConfig();//配置Servlet接口
	public void service(ServletRequest req,
		ServletResponse res) 
		throws ServletException, IOException;
	public String getServletInfo();获取Servlet信息
	public void destroy();
}

/* 代码16-3
 * Created on 2005-5-22
 */

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;

public class ServletsRule extends HttpServlet {
	int i = 0; 
	public void service(HttpServletRequest req,
		HttpServletResponse res) throws IOException {
		res.setContentType("text/html");//设置类型信息
		PrintWriter out = res.getWriter();//获得输出流
		out.print("<HEAD><TITLE>");//设置头信息
		out.print("A server-side strategy");
		out.print("</TITLE></HEAD><BODY>");//设置文本大小
		out.print("<h1>Servlets Rule! " + i++);
		out.print("</h1></BODY>");
		out.close();
	}
}

/* 代码16-4
 * Created on 2005-5-22
 */

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class EchoForm extends HttpServlet {
	public void service(HttpServletRequest req, 
		HttpServletResponse res) throws IOException {
		res.setContentType("text/html");//设置HTML类型
		PrintWriter out = res.getWriter();//获得输出流
		Enumeration flds = req.getParameterNames();//设置排列信息
		if(!flds.hasMoreElements()) {
			// No form submitted -- create one:
			out.print("<html>");//html头标记
			out.print("<form method=\"POST\"" + 
				" action=\"EchoForm\">");
			for(int i = 0; i < 10; i++)
				out.print("<b>Field" + i + "</b> " +
				"<input type=\"text\""+
				" size=\"20\" name=\"Field" + i + 
				"\" value=\"Value" + i + "\"><br>");//文本大小类型,字体类型
			out.print("<INPUT TYPE=submit name=submit"+
				" Value=\"Submit\"></form></html>");
		} else {
			out.print("<h1>Your form contained:</h1>");
			while(flds.hasMoreElements()) {
				String field= (String)flds.nextElement();//给出下一个字段
				String value= req.getParameter(field);//设置参数
				out.print(field + " = " + value+ "<br>");
			}
		}
		out.close();//关闭输出流
	}
}

/* 代码16-5
 * Created on 2005-5-22
 */

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;

public class ThreadServlet extends HttpServlet {
	int i;
	public void service(HttpServletRequest req, 
		HttpServletResponse res) throws IOException {
		res.setContentType("text/html");//设置类型信息
		PrintWriter out = res.getWriter();//设置输出流
		synchronized(this) {
			try {
				Thread.currentThread().sleep(5000);//线程终止5秒
			} catch(InterruptedException e) {
				System.err.println("Interrupted");
			}
		}
		out.print("<h1>Finished " + i++ + "</h1>");
		out.close();//关闭输出流
	}
}

/* 代码16-6
 * Created on 2005-5-22
 */

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class SessionPeek extends HttpServlet { 
	public void service(HttpServletRequest req, 
		HttpServletResponse res)
		throws ServletException, IOException {
		// Retrieve Session Object before any
		// output is sent to the client.
		HttpSession session = req.getSession();//获取session信息
		res.setContentType("text/html");//设置类型
		PrintWriter out = res.getWriter();//得到输出流
		out.println("<HEAD><TITLE> SessionPeek ");
		out.println(" </TITLE></HEAD><BODY>");
		out.println("<h1> SessionPeek </h1>");//设置文本
		// A simple hit counter for this session.
		Integer ival = (Integer) 
			session.getAttribute("sesspeek.cntr");//从session得到属性
		if(ival==null) 
			ival = new Integer(1);
		else 
			ival = new Integer(ival.intValue() + 1);
		session.setAttribute("sesspeek.cntr", ival)//重新设置属性;
		out.println("You have hit this page <b>"
			+ ival + "</b> times.<p>");
		out.println("<h2>");//文本标记
		out.println("Saved Session Data </h2>");//存储信息
		// Loop through all data in the session:
		Enumeration sesNames = 
			session.getAttributeNames();//获取排列信息
		while(sesNames.hasMoreElements()) {
			String name = 
				sesNames.nextElement().toString();
			Object value = session.getAttribute(name);
			out.println(name + " = " + value + "<br>");
		}
		out.println("<h3> Session Statistics </h3>");//获取session统计信息
		out.println("Session ID: " 
			+ session.getId() + "<br>");//打印ID信息
		out.println("New Session: " + session.isNew()
			+ "<br>");//创建新session
		out.println("Creation Time: "
			+ session.getCreationTime());//创建时间信息
		out.println("<I>(" + 
			new Date(session.getCreationTime())
			+ ")</I><br>");
		out.println("Last Accessed Time: " +
			session.getLastAccessedTime());
		out.println("<I>(" +
			new Date(session.getLastAccessedTime())
			+ ")</I><br>");
		out.println("Session Inactive Interval: "
			+ session.getMaxInactiveInterval());
		out.println("Session ID in Request: "
			+ req.getRequestedSessionId() + "<br>");
		out.println("Is session id from Cookie: "
			+ req.isRequestedSessionIdFromCookie()
			+ "<br>");
		out.println("Is session id from URL: "
			+ req.isRequestedSessionIdFromURL()//得到URL地址
			+ "<br>");
		out.println("Is session id valid: "
			+ req.isRequestedSessionIdValid()
			+ "<br>");
		out.println("</BODY>");
		out.close();
	}
	public String getServletInfo() {
		return "A session tracking servlet";
	}
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -