jsp代码:
<%--
Document : index
Created on : 2012-11-28, 10:05:18
Author : Administrator
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="js/servletRequest.js"></script>
</head>
<body>
<input type="button" id="testGet" value="testGet" />
<input type="button" id="testPut" value="testPut" />
</body>
</html>
javascript代码:
$(function(){
$("#testGet").click(function(){
$.get("servletRequest.html",{
name : "maoyuanjun",
sex : "mail",
tel : "123456"
},function(data,state){
});
})
$("#testPut").click(function(){
$.post("servletRequest.html",{
},function(data,state){
});
})
})
java代码:
package com.hongdian;
import java.io.BufferedReader;
import java.util.Enumeration;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Iterator;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
import javax.servlet.ServletException;
import javax.servlet.ServletInputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.tomcat.jni.Local;
/**
*
* @author yjmao
* @描述 ServletRequest接口学习
* @继承于 Object
*/
@WebServlet(name = "ServletRequest", urlPatterns = {"/servletRequest.html"})
public class ServletRequestLearn extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//getAttribute(request);
//getAttributeNames(request);
//getCharacterEncoding(request);
//getContentLength(request);
//getContentType(request);
//getInputStream(request);
//getLocalAddr(request);
//getLocale(request);
//getLocales(request);
//getLocalName(request);
//getLocalPort(request);
//getParameter(request);
//getParameterMap(request);
//getParameterNames(request);
//getParameterValues(request);
//getProtocol(request);
//getReader(request);
//getRemoteAddr(request);
//getRemoteHost(request);
getRemotePort(request);
//getRequestDispatcher();通过给定路径包装一个RequestDispatcher对象返回。
//getScheme(request);
//getServerName(request);
//getServerPort(request);
//isSecure(request);
//removeAttribute(request);
//setAttribute(request);
//setCharacterEncoding(request);
System.err.println("GET进来啦!");
}
/*
* setAttribute(String name,Object o):在请求中存储一个属性值
* 参数:name指定的参数值,o对应的name的value值
*/
public static void setAttribute(HttpServletRequest request) {
String getAttribute = (String) request.getAttribute("myj");
System.err.println("getAttribute = " + getAttribute);
request.setAttribute("myj", "maomao");
String getSetAttribute = (String) request.getAttribute("myj");
System.err.println("getSetAttribute = " + getSetAttribute);
}
/*
* getParameterValues():获取一个参数的值,返回类型为Object类型的数组。
*/
public static void getParameterValues(HttpServletRequest request) {
String params[] = request.getParameterValues("name");
for (int i = 0; i < params.length; i++) {
System.err.println(params[i]);
}
}
/*
* getParameterNames():返回一个Enumeration,包含请求中所有参数。
*/
public static void getParameterNames(HttpServletRequest request) {
Enumeration enumParams = request.getParameterNames();
while (enumParams.hasMoreElements()) {
String obj = (String) enumParams.nextElement();
String getParams = request.getParameter(obj);
System.err.println(obj + " : " + getParams);
}
}
/*
* getParameterMap():返回请求中所有参数的形成的Map。
*/
public static void getParameterMap(HttpServletRequest request) {
Map<String, String[]> map = request.getParameterMap();
Set<String> set = map.keySet();
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
String str = iterator.next();
String strArray[] = map.get(str);
for (int i = 0; i < strArray.length; i++) {
System.err.println(str + " : " + strArray[i]);
}
}
}
/*
* getAttribute(String name):返回指定名称的属性值
* 参数:name指定的参数值
*/
public static void getAttribute(HttpServletRequest request) {
Object getAttribute = request.getAttribute("name");
System.err.println("getAttribute = " + getAttribute);
}
/*
* getParameter(String name):返回指定参数值,如果参数不存在则返回null。
* 参数:name指定的参数值
*/
public static void getParameter(HttpServletRequest request) {
String getParameter = request.getParameter("name");
System.err.println("getParameter = " + getParameter);
}
/*
* getCharacterEncoding():返回请求体中使用的字符编码。
*/
public static void getCharacterEncoding(HttpServletRequest request) {
String getCharacterEncoding = request.getCharacterEncoding();
System.err.println("getCharacterEncoding = " + getCharacterEncoding);
}
/*
* getContentLength(): 返回请求体和可用输入流的字节长度,返回-1标识长度未知。
*/
public static void getContentLength(HttpServletRequest request) {
int getContentLength = request.getContentLength();
System.err.println("getContentLength = " + getContentLength);
}
/*
* getContentType():返回请求数据体的MIME类型,如果类型未知,返回空值
*/
public static void getContentType(HttpServletRequest request) {
String getContentType = request.getContentType();
System.err.println("getContentType = " + getContentType);
}
/*
* getLocalAddr():返回发送请求的IP地址。(也就是客户端电脑的IP地址)
*/
public static void getLocalAddr(HttpServletRequest request) {
String getLocalAddr = request.getLocalAddr();
System.err.println("getLocalAddr = " + getLocalAddr);
//127.0.0.1
}
/*
* getLocales():返回一个保存Locale对象的Enumeration对象,这些Locale对象都是客户端可接受的,并且Locale依据客户端的优先次序存储Enumeration。
*/
public static void getLocales(HttpServletRequest request) {
Enumeration<Locale> getLocale = request.getLocales();
while (getLocale.hasMoreElements()) {
Locale local = getLocale.nextElement();
System.err.println("local = " + local.getCountry());
//zh_CN
}
}
/*
* getLocalName():返回发送请求的主机名称。
*/
public static void getLocalName(HttpServletRequest request) {
String getLocalName = request.getLocalName();
System.err.println("getLocalName = " + getLocalName);
//如localhost
}
/*
* getLocale():返回客户端的Local对象,包含基于接受语言的头。(说明:java.util.Locale 对象表示了特定的地理、政治和文化地区。)
*/
public static void getLocale(HttpServletRequest request) {
Locale getLocale = request.getLocale();
System.err.println("getLocale = " + getLocale);
//zh_CN
}
/*
* getLocalPort():返回发送请求的主机IP端口号。
*/
public static void getLocalPort(HttpServletRequest request) {
int getLocalPort = request.getLocalPort();
System.err.println("getLocalPort = " + getLocalPort);
//如:8088
}
/*
* getProtocol(): 返回请求使用的协议名称和版本。
*/
public static void getProtocol(HttpServletRequest request) {
String getProtocol = request.getProtocol();
System.err.println("getProtocol = " + getProtocol);
//如:HTTP/1.1
}
/*
* getRemoteAddr():获取发送请求的客户端或者最后代理主机的IP地址。
*/
public static void getRemoteAddr(HttpServletRequest request) {
String getRemoteAddr = request.getRemoteAddr();
System.err.println("getRemoteAddr = " + getRemoteAddr);
//如127.0.0.1
}
/*
* getRemoteHost():获取发送请求的客户端或者最后代理主机的名称。
*/
public static void getRemoteHost(HttpServletRequest request) {
String getRemoteHost = request.getRemoteHost();
System.err.println("getRemoteHost = " + getRemoteHost);
//如:127.0.0.1
}
/*
* getRemotePort():获取发送请求的客户端或者最后代理主机上的端口。
*/
public static void getRemotePort(HttpServletRequest request) {
int getRemotePort = request.getRemotePort();
System.err.println("getRemotePort = " + getRemotePort);
//如3285,是会变得端口
}
/*
* getScheme():返回产生请求的模式名称,例如,http, https, ftp.
*/
public static void getScheme(HttpServletRequest request) {
String getScheme = request.getScheme();
System.err.println("getScheme = " + getScheme);
}
/*
* getServerName():返回发送请求的主机名称。
*/
public static void getServerName(HttpServletRequest request) {
String getServerName = request.getServerName();
System.err.println("getServerName = " + getServerName);
//如localhost
}
/*
* getServerPort():返回发送请求的主机端口。
*/
public static void getServerPort(HttpServletRequest request) {
int getServerPort = request.getServerPort();
System.err.println("getServerPort = " + getServerPort);
//如8088
}
/*
* isSecure():返回是否使用安全通道。例如https。
*/
public static void isSecure(HttpServletRequest request) {
boolean isSecure = request.isSecure();
System.err.println("isSecure = " + isSecure);
//如false
}
/*
* removeAttribute(String name):从请求中移除一个属性。
*/
public static void removeAttribute(HttpServletRequest request) {
System.err.println("移除前name的值 = " + request.getAttribute("name"));
request.removeAttribute("name");
System.err.println("移除后name的值 = " + request.getAttribute("name"));
}
/*
* setCharacterEncoding(String name):重新设置请求体的字符编码。
* 参数:name指定的参数值
*/
public static void setCharacterEncoding(HttpServletRequest request) throws UnsupportedEncodingException {
request.setCharacterEncoding("GBK");
}
/**
* ************************不是很懂得************************************************
*/
/*
* getAttributeNames():返回一个Enumeration包含请求可用到的所有属性名称。
*/
/*
* getReader():获取请求体的BufferedReader对象表示。
*/
public static void getReader(HttpServletRequest request) throws IOException {
BufferedReader params = request.getReader();
System.err.println(params);
}
/*
* getInputStream():输入流用来从请求体读取二进制数据。
*/
public static void getInputStream(HttpServletRequest request) throws IOException {
ServletInputStream getInputStream = request.getInputStream();
System.err.println("getInputStream = " + getInputStream);
}
public static void getAttributeNames(HttpServletRequest request) {
Enumeration enumParames = request.getAttributeNames();
System.err.println("enumParames = " + enumParames);
while (enumParames.hasMoreElements()) {
//String getAttributeNames = (String) enumParames.nextElement();
//System.err.println("getAttributeNames = " + getAttributeNames);
Object obj = enumParames.nextElement();
System.err.println("obj = " + obj);
}
}
}