jsp学习
JSP全名为Java Server Pages,中文名叫java服务器页面
它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)
(1):WEB-INF是Java的WEB应用的安全目录。所谓安全就是客户端无法访问,只有服务端可以访问的目录。下有web.xml,项目部署文件。
(2):classe文件夹,用以存放*.class文件。lib文件夹,用以存放需要的jar包。
(3):Jsp三大指令:page指令:通常位于jsp页面的顶端,同一个页面可以有多个page指令。
include指令:将一个外部文件嵌入到当前jsp文件中,同时解析这个页面中的jsp语句。
taglib指令:使用标签库定义新的自定义标签,在jsp页面中启用定制行为。
(4):jsp注释:<!-- 注释 -->:客户端可见
<%-- 注释 --%>:客户端不可见
jsp脚本的注释: // 单行注释;/* */ 多行注释;
(5):Jsp脚本:在JSP页面中执行的java代码; <% java代码 %>
(6):Jsp声明:在jsp页面中定义变量或者方法 <%! java代码 %>
(7):Jsp表达式:在jsp页面中执行的表达式 <%=表达式 %>不以分号结束
(8):内置对象:是web容器创建的一组对象,不适用new关键字就可以使用;9大内置对象
(9):get提交方式:以明文的方式通过URL提交数据,数据在URL中可以看到。提交的数据最多不超过2KB。安全性较低但效率比post方式高,适合提交数据量不大,安全性不高的数据。比如搜索、查询等功能;
post提交方式:将用户提交的信息封装在HTML HEADER内。适合提交数据量大,安全性高的用户信息。比如:注册、修改、上传等功能;
(10)内置对象:1、out 往页面中输出信息
2、request 客户端的请求信息被封装在request中,request对象具有请求域,即完成客户端的请求之前,改对象一直有效;
String getParameter(String name) 返回name指定参数的参数值
String[] getParameterValues(String name) 返回含参数name的所有值的数组
3、response response对象包含了响应客户请求的有关信息,具有页面作用域,即访问一个页面时,该页面的response对象只能对这次 访问有效,其他页面的response对象对当前页面无效;
请求重定向:客户端行为,response.sendRedirect(),从本质上讲等同于两次请求,前一次的请求对象不会保存,地址栏的URL地址会改变
请求转发:服务器行为,是一次请求,转发后请求对象会保存,地址栏的URL地址不会改变;
4、session表示客户端与服务器的一次会话,web中的session指的是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是客户浏览这个网站所花费的时间。
5、application对象实现了用户间数据的共享,可存放全局变量,application开始于服务器的使用,终止于服务器的关闭,在用户的前后连接或不同用户之间的连接中,可以对application对象的同一属性进行操作;
6、page对象就是页面本身;
7、pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,pageContext对象可以访问到本页所在的session,也可以取本页面所在的application的某一属性值。pageContext对象相当于页面中所有功能的集大成者。
8、config对象是在一个Servlet初始化时,JSP引擎向他传递消息用的,此信息包括Servlet初始化时所要用到的参数,以及服务器的有关信息(通过传递一个ServletContext对象)
9、exception对象是一个异常对象,当一个页面在运行过程中发生了异常,就产生这个对象。
(11):Javabeans就是符合某种特定的规范的Java类,:公有类;无参的构造方法;属性私有;getter和setter方法
(12):Jsp动作:JSP动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法。
(13):<jsp:useBeans> 作用:在jsp页面中实例化或者在指定范围内使用javabean;
<jsp:useBean id="标识符(javaBean的实例名)" class=“java类名” scope=“作用范围”/>
JavaBean的四个作用域范围:
page:仅在当前页面有效;
request:仅在一次请求有效;
session:在一次会话有效
application:全局变量;
(14):<jsp:setProperty> 作用:给已经实例化的Javabean对象的属性赋值,有四种形式:
<jsp:setProperty name="JavaBean实例名" property="*" />(跟表单关联)
<jsp:setProperty name="JavaBean实例名" property="JavaBean属性名" />(跟表单关联)
<jsp:setProperty name="JavaBean实例名" property="JavaBean属性名" value="BeanValue" />(手工设置)
<jsp:setProperty name="JavaBean实例名" property="propertyName" param="request对象中的参数名" />(跟request参 数关联)
(15):<jsp:getProperty> 作用:获取指定JavaBean对象的属性值
<jsp:getProPerty name="JavaBean实例名" property="属性名" />
(16)http协议的无状态性:无状态是指,当浏览器发送请求给服务器时,服务器响应客户端请求,但是当同一个浏览器再次发送请求给服务器时,服务器并 不知道它就是刚才那个服务器
(17)Cookie:是Web服务器保存在客户端的一系列文本信息。
作用:对特定对象的追踪,保存用户网页浏览记录与习惯,简化登录 安全风险:容易泄露用户信息;
(18)创建Cookie对象: Cookie newCookie = new Cookie(String kye,Object value);
写入Cookie对象:response.addCookie(new Cookie);
读取Cookie对象:Cookie[] Cookies = request.getCookies();
(19)include指令: <%@ include file="URL" %>
inlude动作:<jsp:include page="URL" flush="true/false">(page:要包含的页面 flush:被包含的页面是否从缓冲区读取)
(20):include指令与include动作区别:
指令包含文件的实际内容(代码)主页面和包含页面转化成一个servlet
动作包含页面的输出 主页面和包含页面转化成独立的servlet
(21):forward动作: <jsp:forward page="URL"> 服务器内部跳转指令
(22):param动作: <jsp:param name="参数名" value="参数值"> 常常与<jsp:forward >一起使用,作为其的子标签。

浙公网安备 33010602011771号