标签:重定向 使用 rate images gen 二进制 变化 快速 el表达式
如何写简单的servlet
1)自定义一个servlet类实现servlet接口,实现接口就意味着实现接口的方法
public class AServlet implements Servlet{}
2)在web.xml文件中注册自定义的servlet
<!-- servlet标签用于向服务器注册一个servlet -->
<servlet>
<!-- servlet-name是我们使用的,我们使用这个servlet-name对servlet进行配置 -->
<servlet-name>AServlet</servlet-name>
<!-- servlet-class是自定义servlet的全类名,这个全类名是服务器使用,服务器用这个全类名创建一个servlet实例(对象) -->
<servlet-class>com.neuedu.Servlet.AServlet</servlet-class>
</servlet>
<!-- servlet-mapping是用于做映射请求的 也就是输入什么地址会到当前servlet下处理-->
<servlet-mapping>
<servlet-name>AServlet</servlet-name>
<url-pattern>/AServlet</url-pattern>
</servlet-mapping>
//注意:<url-pattern>标签中指定的映射路径不必和<servlet-name>指定的内容保持一致
只有浏览器地址栏中请求的url和<url-pattern>标签中的映射一致的时候,我们自定义的servlet类才会处理这个请求

1.转发 --地址不变 只请求一次 不能跨域
request.getRequestDispatcher("要转发到的地址").forward(request,response);//地址栏地址不变
2.重定向 --地址变了 多次请求 可以跨域
response.sendRedirect("要转到的地址");//地址栏地址变了
在jsp页面中写
<form action="abc" method="post">
用户名<input type="text" name="userid"><br>
密码<input type="password" name="pwd"><br>
<input type="submit">
</form>
//action method必须有,method为post或者get,使用get会在地址上显示你输入的值

pageContext.setAttribute("a", "page");
request.setAttribute("a", "request");
session.setAttribute("a", "session");
application.setAttribute("a", "application");
${ a }//会将四个a全都取出来,但是根据优先级取出pageContext
${requestScope.a }//将取出request,将requestScope中的request换成session就取出session
<servlet> <servlet-name>AServlet</servlet-name> <servlet-class>com.neuedu.Servlet.AServlet</servlet-class> </servlet>
<context-param>
<param-name>password</param-name>
<param-value>123456</param-value>
</context-param>
String initParameter2 = config.getServletContext().getInitParameter("password");
System.out.println(initParameter2);
String initParameter2 = config.getServletContext().getRealPath(servletName); System.out.println(initParameter2);
//getrealpath()获取真实路径
HttpServlet
public CServlet() {
super();
// TODO Auto-generated constructor stub
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("doGet请求");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
request.getRequestDispatcher("1.html").forward(request, response);//通过request跳转到1.html
response.getWriter().println("<h3>hello world!</h3>");//可以返回给浏览器一个页面或者一个页面片段!
response.sendRedirect("/day0807-servlet/1.html");//服务器返给浏览器地址,浏览器需要再次访问服务器给的地址
|
|
发生在浏览器端还是服务器端
|
浏览器的请求次数
|
浏览器地址栏是否发生变化
|
浏览器是否能够感知到
|
|
request
|
服务器端
|
1
|
不变化
|
感知不到
|
|
response
|
浏览器端
|
2
|
发生变化
|
感知到
|
标签:重定向 使用 rate images gen 二进制 变化 快速 el表达式
原文地址:http://www.cnblogs.com/lwj-0923/p/7352881.html