JSP—学习笔记(1)

来源:互联网 发布:知已知彼什么意思 编辑:程序博客网 时间:2024/06/16 18:12

1.什么是jsp(Java Server Page)

Jsp是运行在服务器端的页面,本质上是一个servlet(servlet是运行在浏览器的),但语法更像html,并且可以同时写html,css,js,同时也可以插入java代码。


2.jsp与servlet的比较

servlet:更适合写java代码(本就是java的一个类,)

jsp:更适合展示页面,(因为可以直接写html,css,js......)

Servlet输出页面很麻烦(输出流),jsp方便很多。

结合起来使用最好。各取有点。servlet获取数据,调用业务方法等,jsp展示数据、结果等


3.jsp的语法

注意事项:jsp文件应该放在webContent下,而不能放在src下;(src下放java代码)。


4.jsp注释

<!--注释--> :html注释

<%--隐式注释--%>:隐式注释,网页查看源代码看不到。


5.脚本元素:即如何在jsp中嵌入java代码

声明:声明变量或方法(属性)    <%!  声明语句    %> (多次请求不会重新声明,声明一次就存在了)

表达式: <%= %>    在网页中传出表达的内容(相当于输出)

代码段: <%    %>  代码段中的代码每次发送请求(刷新)都会重新执行。


6.JSP的工作原理:

jsp -> 转换成servlet ->编译成class;

对于tomcat来说,jsp的工作目录是work,tomcat会自动对jsp进行转换和编译;


7.指令

作用:通过指令来告知web容器如何处理jsp文件;

语法:

 <%@   指令名 属性名=值   %>


8.jsp的指令一共有三种;分别是:

page指令:jsp的页面配置

include指令:包含指令;

taglib:标记库


9.page指令

最主要的指令!!

作用:选择web服务器,如何将jsp转换成servlet;

常用的属性有:

contentType=“text/html;charset=UTF-8”

import:导包的,只有些属性可重复。

session:是否使用session(默认是true)

errorPage:当前页面如果出错,跳转的页面(errorPage=)

isErrorPage:是否是错误处理页面


10.include指令

作用:在jsp中包含另外一个资源(jsp,html,servlet...)(包含和被包含的形成一个文件执行,因此变量不能重复定义,可直接使用)

语法:<%@include file="uri"%>


11.jsp内置对象(9个):

声明不能用内置对象

out:向网页输出...

request:请对对象,和servlet的request一样,作用域为一次请求

response:响应对象,同上

session:作用域为会话

application:上下文,相当于servlet的servletContext,作用域为整个配置环境(服务器不关都行)

page:页面对象

pageContext:页面上下文,作用域为当前页面(存取数据)

config:配置信息

exception:异常;必须在isErrorPage=“true”

12.redirect与forward的区别?

response.sendRedirect(“”)和pageContext.forward(“”)都是重定向的方法,但有所区别。

redirect是两次请求,发给a,a再给b;forward是一次请求,转的是一次请求,数据传不了;因此forward可以获得request中设置的数据,redirect不能;

redirect可以重定向到任何地址(任何其它网站),而forward只能做站内转发(一个服务器内);

redirect时url会变,forward不会变。

redirect的/ 根路径是服务器开始的,forword的/ 根路径是从工程开始的

13.request中getParameter与getAttribute的区别

getParameter获得的是客户端发来的数据,返回值是String

getAttribute获得的是服务器通过setAttribute存储的数据,用来传递数据(servlet和jsp),返回值是Object







原创粉丝点击