为了账号安全,请及时绑定邮箱和手机立即绑定
  • JSP内置对象——请求转发与请求重定向的区别 一、请求重定向:服务端responce.sendRedirect("xx.jsp")重定向。【客户端行为】:即客户端会访问两次,第一次访问后会立即跳转到第二个重定向页面上,【从本质上讲等于两次请求】,而前一次的请求封装的request对象不会保存,地址栏的URL地址会改变。 二、请求转发:服务端request.getRequestDispatcher("xx.jsp").forward(request,response)请求转发。forward(request,response)用于保存内置对象request和response。【服务器行为】:服务器会代替客户端去访问转发页面,【从本质是一次请求】,转发后请求对象会保存,地址栏的URL地址不会改变。
    查看全部
  • session的生命周期 1.创建:当客户端第一次访问某个jsp或者servlet时候,服务器会为当前会话创建一个SessionId,每次客户端向服务器发送请求时,都会将此SessionId携带过去,服务端会对此SessionId进行校验 2.活动: ①某次会话当中通过超链接打开的新页面属于同一次会话 ②只要当前会话页面没有全部关闭,重新打开的浏览器窗口访问同一个项目资源时属于同一次会话 ③除非本次会话的所有页面都关闭后在重新访问某个JSP或者servlet将会创建新的会话 注意:注意原有会话还存在,只是这个旧的Session仍然存在于服务端,只不过再也没有客户端会携带它然后交予服务端校验 3.销毁:三种方式 ①调用了session.invalidate()方法 ②Session过期(超时) ③服务器重新启动
    查看全部
  • JSP内置对象 - pageContext (1)pageContext对象提供了对JSP页面中所有对象及名字空间的访问操作 (2)pageContext对象可以访问本页面的session,可以访问本页面的application对象的任意属性值 (3)pageContext对象是某个页面中所有功能的集大成者 --------------------------------------- pageContext对象的常用方法: (1)JspWriter getOut() 返回当前客户端相应被使用的JspWriter流(out) (2)HttpSession getSession() 返回当前页面中HttpSession对象(session) (3)Object getPage() 返回当前页面的Object对象(page) (4)ServletRequest getRequest() 返回当前面的ServletRequest对象(request) (5)servletResponse getResponse() 返回当前页的ServletResponse对象(response) (6)void setAttribute(Strign name, Object attribute) 设置属性及属性值 (7)Object getAttribute(String name ,int scope) 在指定范围内取属性值 (8)int getAttributeScope(String name) 返回某属性的作用范围 (9)void forward(String relativeUrlPath) 使当前页面跳转到另外一个页面(服务器转发) (10)void include(String relativeUrlPath) 在当前位置包含另一个文件 config对象 常用方法: ServletContext getServletContext()返回含有服务器相关信息的ServletContext对象 String getInitParameter(String name)返回初始化参数的值 Enumeration getInitParameterNames()返回Servlet初始化所需所有参数的枚举
    查看全部
  • <jsp:useBeans>动作:在jsp页面中实例化或者在指定范围内使用javabean 1、<jsp:useBean id="标示符" class="java类名" scope="作用范围" /> 2、【其中标示符为对象引用;java类名需要使用全名】 <jsp:setProperty>动作:给【已经实例化的Javabean对象的属性赋值】,一共有四种形式。 1、需要表单提交属性:<jsp:setProperty name="Javabean实例名" property="*"/>: 与之前页面提交的表单的【所有属性进行匹配】,若有与javabean类属性名相同的,则进行赋值。比如表坛提交了username="xxx",而javabean里有username属性,则对其进行赋值 2、需要表单提交属性<jsp:setPropery name="Javabean实例名" property="javabean属性名" />:对【指定的属性进行匹配】 3、手动设置属性:<jsp:setProperty name = "Javabean实例名" property="Javabean属性名" value="BeanValue" /> 4、与request参数有关,通过url传参 :<jsp:setProperty name="Javabean实例名" property="propertyName" param="request对象中的参数名" /> 例 1.根据表单自动匹配所有的属性 <jsp:setProperty name="myUsers" property="*"/> 2.根据表单自动匹配相应的属性(部分匹配) <jsp:setProperty name="myUsers" property="username"/> 3.与表单无关,通过手工赋值给属性 <jsp:setProperty name="myUsers" property="username" value=“Lisa”/> 4.通过url传参数给属性赋值 <jsp:setProperty name="myUsers" property="username"/> <jsp:setProperty name="myUsers" property="password" param=“mypass”/>
    查看全部
    15 采集 收起 来源:setProperty

    2018-03-22

  • JavaBean的生命周期存在于4种范围之中,分别为page、request、session、application,它们通过<jsp:useBean>标签的scope属性进行设置。这4种范围虽然存在很大的区别,但它们与JSP页面中的page、request、session、application范围相对应。 page范围:与当前页面相对应,JavaBean的生命周期存在于一个页面之中,当页面关闭时JavaBean被销毁。 request范围:与JSP的request生命周期相对应,JavaBean的生命周期存在于request对象之中,当request对象销毁时JavaBean也被销毁。 session范围:与JSP的session生命周期相对应,JavaBean的生命周期存在于session会话之中,当session超时或会话结束时JavaBean被销毁。 application范围:与JSP的application生命周期相对应,在各个用户与服务器之间共享,只有当服务器关闭时JavaBean才被销毁。 这4种作用范围与JavaBean的生命周期是息息相关的,当JavaBean被创建后,通过<jsp:setProperty>标签与<jsp:getProperty>标签调用时,将会按照page、request、session和application的顺序来查找这个JavaBean实例,直至找到一个实例对象为止,如果在这4个范围内都找不到JavaBean实例,则抛出异常。
    查看全部
  • 1.需要捕获异常的页面,在page指令中写属性errorpage=“出错跳转到的页面” 2.在跳转到的错误处理页面page指令中输入属性isErrorPage=“true” JSP内置对象 - Exception (1)Exception是java.lang.Throwable类的实例 (2)当一个页面运行发生了异常,就产生了该Exception对象。 (3)若一个JSP页面要使用该Exception对象,需要将isErrorPage的值设为true -------------------------------------- Exception对象常用方法: (1)String getMessage() 返回描述异常的信息 (2)String toString() 返回关于异常的简短描述信息 (3)void printStackTrace() 显示异常及其栈轨迹 (4)Throwable FillInStackTrace() 重写异常的执行栈轨迹
    查看全部
    13 采集 收起 来源:exception对象

    2015-10-28

  • (1)session是JSP的一个内置对象,是HttpSession类的实例。 (2)从客户打开浏览器并连接到服务器开始,到客户关闭浏览器窗口断开与服务器的连接,这一过程成为一个会话。 (3)当客户在同一个网站的不同页面之间进行切换并访问时,服务器是通过session来判断这些请求是否来自同一个客户。 (4)session一般有时间限制,长时间不操作可能会导致session失效。session失效后原session中保存的属性值会全部丢失。 (5)setMaxInactiveInterval(int i) 该方法可直接设定session的生存时间,超过该时间session会重新创建。(单位:秒) ------------------------------- session对象的常用方法有: long getCreationTime() : 返回session的创建时间; public String getId() : 返回session的唯一ID号(该ID在session生成时,由JSP引擎创建) public Object setAttribute(String name,Object value) : 按照键值对的方式在该session会话中保存一个属性(该属性是一个对象类型) public Object getAttribute(String name) : 返回指定名称的属性的值(如果该名称的属性不存在,则返回null) String[] getValueNames() : 返回一个(包含在此session中所有可用属性)的数组。 int getMaxInactiveInterval() : 返回一个时间,该时间表示当前session间隔多少时间之后会失效(单位:秒)。
    查看全部
    13 采集 收起 来源:session对象

    2015-10-23

  • 第8章 案例项目 第8章中的案例项目中,有小漏洞,比如连着访问同一件商品的时候,list中就会不断添加相同的id(因为同一件商品的id是相同的),这就造成了,浏览的商品中,会出现重复记录。我想了一个解决办法:就是在向list添加id之前,将list分割成数组arr,遍历arr的最后5条记录,判断是否存在将要添加的id,若存在则不添加,如不存在才添加。这样就不会在浏览的商品中出现重复的浏览记录了。 boolean flag = true; String[] arr = list.split(","); if(arr.length>=5) { for(int i=arr.length-1;i>=arr.length-4;i--) { if(arr[i].equals(request.getParameter("id"))) { flag=false; } } } else if(0<arr.length&&arr.length<5) { for(int i=arr.length-1;i>=0;i--) { if(arr[i].equals(request.getParameter("id"))) { flag=false; } } } if(flag) { list+=request.getParameter("id")+","; }
    查看全部
  • 一、生命周期如图: 1、生成字节码文件,执行jspInit()只在第一次请求时执行,重复请求仅只执行一次。生成的文件在work里,【每次修改会重新编译,生成新的字节码文件】 2、jspService()用于处理用户请求,对于每一个请求,JSP引擎会创建一个新的线程来处理该请求【JSP多线程:降低资源需求,提高系统并发量及响应时间,但注意同步问题】。 3、由于该Servlet常驻于内存里,所以响应速度非常快。
    查看全部
  • Web是请求/响应架构的使用,而request和response就是在服务器端生成的相应的两个对象,request能够获取客户端传递的参数及相关的一些信息,而response就是给客户端响应相关的页面及信息。request.getRequestDispatcher().forward(request,response)这个语句意思是将客户端的请求转向(forward)到getRequestDispatcher()方法中参数定义的页面或者链接。说通俗点就是,当一个客户端的请求到这个页面后,不做处理或者不处理完,将请求转给另一个页面处理,然后再响应给客户端。
    查看全部
  • URL传递中文出现乱码问题:<br> 解决方法:<br> 修改tomcat中的server.xml 在端口号后,增加URIEncoding="utf-8"; 是URIEncoding,不是URLEncoding;!!!!!!!!!!!!!!!!!!!!!
    查看全部
  • include指令: include指令是编译阶段的指令,即include所包含的文件的内容是编译的时候插入到JSP文件中‘因此如果只修改了include文件内容,而没有对JSP修改,得到的结构将不会改变,所以直接执行已经存在的字节码文件,而没有重新编译。因此对不经常变化的内容,用include指令是合适的,如果需要的内容是经常变化的,则需要动作元素<jsp:include>. include指令的主要优点是功能强大,所包含的代码可以含有总体上影响主页面的JSP构造,比如属性、方法的定义和文档类型的设定。它的缺点是难于维护只要被包含的页面发生更改,就得更改主页面,这是因为主页面不会自动地查看被包含的页面是否发生更改。 仅当include动作不能满足要求时,我们才应该使用include指令。 include动作在维护上的优势十分巨大,当两种方法都可以使用时,include动作几乎肯定是首选的方法。 对于文件包含,应该尽可能地使用include动作。仅在所包含的文件中定义了主页面要用到的字段或方法,或所包含的文件设置了主页面的响应报头时,才应该使用include指令。 因为include指令更为强大。include指令允许所包含的文件中含有影响主页面的Jsp代码,比如响应报头的设置和字段、方法的定义。 例子://subpage.jsp <%! int num=0; %> //mainpage.jsp <html> <body> <%@ include file="subpage.jsp" %> <%= num %> </body> </html> 当然使用include动作时这是不可能的,因为num变量未定义,主页面不能成功的转换成servlet。
    查看全部
  • 一、内置对象简介 1、JSP内置对象是Web容器创建的一组对象,【不使用new关键字】就可以使用的内置对象。例如:out 2、JSP九大内置对象: out,request,response,session,application(五大常用对象) Page,pageContext,exception.config(四个不太常用对象)
    查看全部
  • JSP内置对象——application对象 一、application介绍 1、实现了用户间数据的共享,可存放全局变量。(类似静态对象) 2、开始于服务器启动,终止于服务器的关闭(生命周期) 3、在用户的前后连接或不同用户之间的连接中,可以对application对象的同一属性进行操作 4、在任何地方对application对象属性进行操作,都将影响到其他用户对此的访问 5、application对象是ServletContext类的实例
    查看全部
    11 采集 收起 来源:application对象

    2015-04-19

  • 表单有两种提交方式:get与post。定义在<form action="dologin.jsp" name="loginForm" method="提交方式***"></form> 动作/名称等顺序无所谓。 1.get:以【明文】方式,通过URL提交数据,数据在URL中【可以看到】。提交数据最多不超过【2KB】。安全性较低,但效率比post方式高。适合提交数据量不大,且安全要求不高的数据:比如:搜索、查询等功能。 2.post:将用户提交的信息封装在HTML HEADER内。适合提交数据量大,安全性高的用户信息。如:注册、修改、上传等功能。
    查看全部
首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
Hi,我是JSP。为了让您更好的了解我,请先学习我的小伙伴JAVA和HTML。
老师告诉你能学到什么?
学完JSP,您可以掌握JSP基本语法,理解Java Web开发思想,进而能独立开发简单的Java Web应用。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!