servlet中怎样接收jsp的form表单提交的内容

zxlion 2009-07-23 08:40:24
不用框架,不用request.getParameter()和getAtriatute()
...全文
2232 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
weikezhao 2011-10-24
  • 打赏
  • 举报
回复
good
blliy117 2009-07-26
  • 打赏
  • 举报
回复
在jsp中
可以用 el

$param.name(表单参数名)
ouyangyh 2009-07-26
  • 打赏
  • 举报
回复
我晕,不用request,那还能有什么办法?
LZ这个问题很郁闷
zuoguodang 2009-07-26
  • 打赏
  • 举报
回复
我晕啊。。。,有这些东西不用,那你就写个拦截器吧,动态去映射页面的参数,不过底层还是需要原始的东西
zl3450341 2009-07-25
  • 打赏
  • 举报
回复
为什么不用呢?? 帮顶
zhengde007 2009-07-25
  • 打赏
  • 举报
回复
怎么不用commons-beanutil里的API呢,应该会简单点吧
gaobaiy 2009-07-25
  • 打赏
  • 举报
回复
有简单的为什么不用呢?有问题
derta2009 2009-07-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 yongcock 的回复:]
本以为是个简单的问题
[/Quote]
就是为什么不用
yongcock 2009-07-24
  • 打赏
  • 举报
回复
本以为是个简单的问题
plmxsyuts6 2009-07-24
  • 打赏
  • 举报
回复
学习了
不服不行~~~呵呵
紫炎圣骑 2009-07-24
  • 打赏
  • 举报
回复
是呀,楼主,为什么不用框架提供的api???

楼主的原始需求是什么?
raito33 2009-07-24
  • 打赏
  • 举报
回复
为什么不用
liulu525800 2009-07-24
  • 打赏
  • 举报
回复





用JS就是了
pxjjava 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 l5751311 的回复:]
引用楼主 zxlion 的回复:
不用框架,不用request.getParameter()和getAtriatute()


干嘛不用
这两个一般就满足需求了
很想知道什么情况下不用
[/Quote]
我也想知道什么情况下不用...
wine1 2009-07-24
  • 打赏
  • 举报
回复
普及了很多东西
薪水 2009-07-24
  • 打赏
  • 举报
回复
帮顶~~~~~~~
adupp 2009-07-24
  • 打赏
  • 举报
回复
重写doGet或者doPost方法,然后用request.getParameter,request.getParameters等等方法操作
l5751311 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用楼主 zxlion 的回复:]
不用框架,不用request.getParameter()和getAtriatute()
[/Quote]

干嘛不用
这两个一般就满足需求了
很想知道什么情况下不用
java91 2009-07-23
  • 打赏
  • 举报
回复


package com.java91.lesson01;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class RequestTestServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


//读取表单参数

request.setCharacterEncoding("utf-8");//使用什么编码读客户端发过来的二进制数据,需要与HTML编码保持一致。在TOMCAT中,如果是get方法传过来的数据,可能不起作用。

String sno=request.getParameter("sno");//获取单个、指定参数的值
System.out.println("-----request.getParameter('sno'):"+sno);

String sname=request.getParameter("sname");//获取单个、指定参数的值
System.out.println("-----request.getParameter('sname'):"+sname);

String grade[]=request.getParameterValues("grade");//获取单个、指定参数的所有值。(一个参数可能有多个值的情况)
System.out.println("-----request.getParameterValues('grade'):"+grade[0]+","+grade[1]);

Enumeration enume= request.getParameterNames();//返回一个枚举类型(Enumeration)的实例,值为表单的所有参数名

Map map=request.getParameterMap();//返回一个Map实例,键-值成对的形式,键为参数名,值为参数值
System.out.println("-----request.getParameterMap():"+map);



//其它信息

String encoding=request.getCharacterEncoding();//    返回请求所用的字符编码。
System.out.println("-----request.getCharacterEncoding(): "+encoding);

String protocol=request.getProtocol();//返回发送请求所使用的名字和版本号,如:HTTP/1.1
System.out.println("-----request.getProtocol(): "+protocol);

String ip=request.getRemoteAddr();//返回客户端的IP地址
System.out.println("-----request.getRemoteAddr(): "+ip);

String scheme =request.getScheme();//返回请求使用的方法的名字,如http,https,ftp等。
System.out.println("-----request.getScheme(): "+scheme);

String serverName=request.getServerName();//返回服务器的名字
System.out.println("-----request.getServerName(): "+serverName);

int port=request.getServerPort();//返回请求被接收的端口号。
System.out.println("-----request.getServerPort(): "+port);

String uri=request.getContextPath();//获取标示请求内容的URI的请求部分。
System.out.println("-----request.getContextPath(): "+uri);

String method=request.getMethod();//返回该请求的HTTP方法名字,如GET/POST
System.out.println("-----request.getMethod(): "+method);

String pathInfo=request.getPathInfo();//返回发出请求的URL客户的相关额外路径信息
System.out.println("-----request.getPathInfo(): "+pathInfo);

String queryString=request.getQueryString();//获取发出请求的URL的路径之后的查询串。
System.out.println("-----request.getQueryString(): "+queryString);

String reURI=request.getRequestURI();//获取在HTTP请求的第一行中的,请求URL中从协议名到查询串的部分。
System.out.println("-----request.getRequestURI(): "+reURI);

StringBuffer reURL=request.getRequestURL();//重构一个发出该请求的URL对象
System.out.println("-----request.getRequestURL(): "+reURL);

String servletPath=request.getServletPath();//获取调用servlet的请求URL部分
System.out.println("-----request.getServletPath(): "+servletPath);

Enumeration lang=request.getHeaders("Accept-Language");//返回指定报头的所有值



/*什么是cookie

   出于安全考虑,动态网站开发语言,无法存储和操作客户端电脑的文件/数据。避免病毒传播

   HTTP提供了一种机制,指定了一个特殊的存储空间,允许服务器向客户端电脑存储少量数据

到该空间 ,该空间被有效的安全控制,对客户端电脑不会造成影响。
   
   它可以记录你的用户ID、密码、浏览过的网页、停留的时间等信息。当你再次来到该网站时,

网站通过读取Cookies,得知你的相关信息,就可以做出相应的动作,如在页面显示欢迎你的标语,

或者让你不用输入ID、密码就直接登录等等。

*/

//打印所有cookies的值:只有本网站留的cookie才会被带回,其它网站不返回

Cookie [] cook = request.getCookies(); //返回cookie类型的数组
if (cook != null){
for(int i =0; i<cook.length; i++){
Cookie c=cook[i];
System.out.println(c.getName()+":"+c.getValue());
}
}


// 读取cookie值

String cookieName="userID"; //要读取的cookie名为userID
String cookieValue=""; //存放读出的cookie值
Cookie [] cook2 = request.getCookies(); //返回cookie类型的数组
if (cook != null){
for(int i =0; i<cook2.length; i++){
Cookie c=cook2[i];
if (cookieName.equals(c.getName())){
cookieValue=c.getValue();
System.out.println("cookieValue:"+cookieValue);
}
}
}




//向客户端安装一个cookie

/* Cookie cookie = new Cookie("userID" , "1234");
cookie.setMaxAge(60*60*24*7); //保留7天时间。如果设为0则删除该 cookie。无设置则为当前会话
response.addCookie(cookie);

*/



// session机制

HttpSession session = request.getSession();//返回当前会话,如果会话不存在,则创建一个新的会话

session.invalidate();



/*

public ServletInputStream getInputStream() throws IOException//用ServletInputStream得到请求的二进制数据
public BufferReader getReader() throws IOException//用BufferReader读取请求体文本
public RequestDispatcher getRequestDispatcher(String path)//返回指定路径上的资源的RequestDispatcher对象

public long getDateHeader(String name)//返回指定报头的值,作为长整型的日期值返回(毫秒)
public String getHeader(String name)
public Enumeration getHeaderNames()
public Enumeration getHeaders(String name)//返回指定报头的所有值
public int getIntHeader(String name)//返回指定报头的值,作为整型返回

public String getRequestedSessionId()//返回客户的essionID号
public HttpSession getSession()//获取和当前请求相关联的session对象。如果没有则创建一个
public HttpSession getSession(true)//获取和当前请求相关联的session对象,如果没有则创建一个
public HttpSession getSession(false)//获取和当前请求相关联的session对象,如果没有则返回null

*/


//response.setContentType("text/html;charset=utf-8");//指定发送的文件类型为HTML,指定HTML文档编码格式为UTF-8

response.setContentType("text/html");//指定发送的文件类型为HTML,指定HTML文档编码格式为UTF-8

//response.setCharacterEncoding("gbk");


PrintWriter out = response.getWriter();

out.println("<HTML>\n"
+ "<HEAD><TITLE>Hello</TITLE></HEAD>\n"
+ "<BODY BGCOLOR=\"#FDF5E6\">\n" + "<H1>Hello java91 你好</H1>\n"
+ "</BODY></HTML>");
}



public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

doGet(request,response);
}

}


meander 2009-07-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 hey2009 的回复:]
getParameterNames(),getParameterMap(),getInputStream()
[/Quote]

看以查看一下servet的api,还有getAttributeNames() 、getParameterValues() 等
加载更多回复(1)

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧