个参数的时候要用&(地址符)隔开
中文乱码
既然说到中文乱码,那么在什么情况下才会出现中文乱码呢? 发生中文乱码有三种情况: 1) Form表单的提交
? Post提交的时候,我们在LoginClServlet中写上request.setCharacterEncoding(\? Get
我们的工具类
public class MyToll { public static String getNewString (String s) { String newString =\ try { newString=new String(s.getBytes(\ } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } return newString; } }
response.setContentType(\ PrintWriter out = response.getWriter(); // request.setCharacterEncoding(\ String name=request.getParameter(\ String pwd=request.getParameter(\ System.out.println(\ System.out.println(\2) 超链接 重新登录
3) SendRedirect发生乱码
Response.sendRedirect(“url?username=小王”);
response.setContentType(\ PrintWriter out = response.getWriter(); // request.setCharacterEncoding(\ String name=request.getParameter(\ //String name2=request.getParameter(\ //System.out.println(\ String pwd=request.getParameter(\ System.out.println(\ System.out.println(\ response.sendRedirect(\
httpServletRequest
HttpServletRequest对象代表客户端的请求,当客户端通过HTTp协议,访问服务器时,HTTP请求头中的所有信息都封装到这个对象中,开发人员通过这个对象的方法,可以获得这些客户的信息。
HttpServletRequest获得客户机信息
url:url=http://localhost:8080/TestRequesServlet/GetInfoServlet uri: uri=/TestRequesServlet/GetInfoServlet 我们的一个HTTP请求是这样的
http://localhost:8080/TestRequesServlet/GetInfoServlet?username=ltx&pwd=123 调用getQueryString方法得到的是username=ltx&pwd=123
我们用getRemoteAddr得到的ip是127.0.0.1并不是我自己机器的ip
String add=request.getRemoteAddr();
if(add.equals(\ response.sendRedirect(\ }
request.getHeader(name)与request.getHeaderNames();的用法,了解即可
Enumeration
如何获取用户提交的信息
提交的表单
package com.xueye.testservlet;
import java.io.IOException; import java.io.PrintWriter;
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;
public class MyForm extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType(\PrintWriter out = response.getWriter();
out.println(\
out.println(\用户名:
\ out.println(\密 码:
\ out.println(\性别:男\ out.println(\女'>女
\ out.println(\爱好:音乐
\
out.println(\体育'>体育
\ out.println(\旅游'>旅游
\ out.println(\所在城市:
\
out.println(\自我介绍:\
}
out.println(\我隐藏了' name='hidden'>\out.println(\提交'>\out.println(\
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }
this.doGet(request, response);
}
处理表单的servlet
package com.xueye.testservlet;
import java.io.IOException; import java.io.PrintWriter;
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;
public class FormCl extends HttpServlet {
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }
response.setContentType(\request.setCharacterEncoding(\PrintWriter out = response.getWriter();
String name=request.getParameter(\String pwd=request.getParameter(\String sex=request.getParameter(\
String []hobby=request.getParameterValues(\if(hobby!=null){
for (int i = 0; i < hobby.length; i++) {
out.println(\我的爱好是:\}
}else{
out.println(\你没有爱好!\}
String city=request.getParameter(\
String jieshao=request.getParameter(\String hidden=request.getParameter(\out.println(\城市是:\out.println(\名字是:\out.println(\密码是:\out.println(\性别是:\out.println(\我的介绍是:\out.println(\隐藏的内容是:\
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }
this.doGet(request, response);
实现请求转发
? 所谓请求转发是指:一个web资源收到客户端的请求后,通知服务器去调用另一个web
资源进行处理