JSP要点知识整理.doc_第1页
JSP要点知识整理.doc_第2页
JSP要点知识整理.doc_第3页
JSP要点知识整理.doc_第4页
JSP要点知识整理.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Jsp技术整理1. web分为静态页面和动态页面静态页面 -html页面动态页面 -动态页面是以ASP、PHP、JSP、Perl、或CGI等编程语言制作的,与服务器有交互的页面。(动态页面技术通常会用到web容器)Web容器使用运行在服务器上的一个程序,用来解析动态请求,然后调用相应的代码,返回响应。对于jsp来说,使用最多的是tomcat2.servletServlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。Servlet创建时会写入web.xml示例:loginServletcom.whos.news.servlet.LoginServletloginServlet/login路径问题:在我们编写代码的时候,一般会有很多路径,这个时候就会产生路径的问题,在jsp页面中,我们通常使用如下方式:建立一个basePath: base href=/ 这样的话,本页面的代码中的路径都会以base为基准了。在servlet中的提交方法有有get 和 post两种:GET:客户端可见,长度有限制 255 ,不能上传文件Post: 客户端不可见,长度无显示,可以上传文件请求转发:在Servlet中处理完请求以后,需要跳转到某个jsp页面,不执行后面的代码,使用:GetrequestDispatcher(“路径”).forword(req,resp);实行后面的代码则使用incluede替换forword讲到Servlet请求转发,就要用到javax.servlet.RequestDispatcher接口。RequestDispatcher接口有两种方法,一种是forward,用于讲请求从一个Servlet传递到服务器上的另外的Servlet、JSP页面或者是HTML文件。另外一种是include,该方法用于在响应中包含其它资源的内容。和forward区别在于:利用include方法将请求转发给其他的Servlet,被调用的Servlet对该请求作出的响应将并入原先的响应对象中,原先的Servlet还可以继续输出响应信息。而利用forward方法将请求转发给其他的Servlet,将由被调用的Servlet负责对请求做出响应,而原先Servlet的执行则终止。传递数据:在jsp中传递数据我们通常使用的是request.setAttribute(“xx”,xx);request.getAttribute(“xx”)方法;值得注意的是,在使用getAttribute方法时,取得的对象时object类型,所以我们通常需要对其进行强类型转换。从form中取值:在servlet页面中,我们通常会取得前台的表单中,或者url中传递过来的值。使用request.getparameters(“name”)方法。取得的类型是String类型,所以对你数字类型的值,我们通常要使用Integer.parseInt()进行转换。重定向:重定向和请求转发区别就是:重定向不会将request和response对象传递到指定的页面。语法:response.sendRedirect(“地址”);另外在sevlet中我们通常会因为中文乱码苦恼。这里有几种解决方法。1. 针对post Req.setCharacterEncoding(“UTF-8”); (servlet中的这是的编码要与页面保持一致)2. 硬编码 /硬编码username = new String(username.getBytes(ISO-8859-1),UTF-8);3.针对get修改tomcat下面的servlet.xml 。 通常我们为了省事会做一个过滤器,用来解决中文乱码问题。1、创建类 实现Filter接口。public class SetCharacterEncodingFilter implements Filterpublic void destroy() / TODO Auto-generated method stubpublic void doFilter(ServletRequest arg0, ServletResponse arg1,FilterChain chain) throws IOException, ServletException /设置中文编码arg0.setCharacterEncoding(UTF-8);/FilterChain 过滤器链/请求往后执行 chain.doFilter(arg0, arg1);public void init(FilterConfig arg0) throws ServletException / TODO Auto-generated method stub2、配置web.xml setCharacterEncodingFilter com.whos.news.filter.SetCharacterEncodingFilter setCharacterEncodingFilter /* Cookie:保存cookieCookie c1 = new Cookie(“username”,username);设置cookie的时效 单位sC1.setMaxAge(60*60*24*365);保存cookieResponse.addCookie(c1);读取cookieString username=”;String password=”;Cookie arrCookie = request.getCookies();For(Cookie c:arrCookie)If(c.getName().equals(“username”)Username = c.getValue();else if(c.getName().equals(“password”)Password = c.getValue();input type=text name=username value= class=login_input /input type=password name=password value= class=login_input /隐藏文本域在表单中我们通常使用一个隐藏文本域来传递一些我们不需要显示的值、Session:当我们在浏览器中访问web项目时,浏览器和服务端会建立会话。服务端会为会话分配一个唯一的sessionId(服务端为这次会话分配了一段内存空间,用来存放会话相关的信息)。只要浏览器没有关闭,会话没有超时,会话会一直存在。请求中的数据是有生命周期。request对象中传递的数据仅仅在一次请求中有效,一旦请求结束,数据就丢失了。HttpSession对象。|- request.getSession() 返回session对象,如果为null,会重新创建一个session对象。|- request.getSession(true)同上|- re

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论