JavaWeb 速通JSP
目录
一、JSP快速入门
1.基本介绍 :
(1) JSP 全称Java Server Pages,即Java服务器页面;JSP是一种基于Servlet的服务器渲染技术,可以理解为JSP就是对Servlet的包装。
(2) HTML只能为用户提供静态数据,而JSP允许在页面中嵌套 java代码,为用户提供动态数据。注意:JSP页面不能像HTML页面一样直接通过浏览器运行, 而必须先启动Tomcat,再通过浏览器地址栏的URL进行访问。
(3) Servlet很难对数据进行排版,而JSP在用Java代码产生动态数据的同时,也很容易对数据进行排版。
2.运行原理 :
(1) JSP页面本质是一个Servlet程序(即本质就是Java程序),性能与Java关联。
(2) 第一次访问JSP时,Tomcat服务器会把JSP页面先解析成.java的源文件,并进一步编译成.class的字节码文件,实际执行的就是.class字节码程序。eg : index.jsp ---> index_jsp.java 和 index_jsp.class。
如下图所示 :
二、JSP语法
1.page指令 :
1° language 表示JSP解析后是什么语言文件, 目前只支持java语言。
2° contentType 表示JSP返回的数据类型,对应源码中 response.setContentType()中的参数值。
3° pageEncoding 属性,表示当前JSP页面文件本身的字符集。
4° import 属性的使用与java源代码中类似,可用于导包,导类。
2.声明脚本 :
声明脚本的格式是 : <%! java声明 %>;可以用Java代码在声明脚本中定义JSP需要的属性、方法、静态代码块和内部类等,即给该JSP文件对应的java类定义成员。
demo.jsp代码如下 :
对应生成的.java文件如下图所示 :
3.表达式脚本 :
(1) 表达式脚本的格式是:<%=表达式%>
(2) 表达式脚本的作用是:在JSP页面上输出数据
(3) 表达式脚本的注意事项 : 表达式不能以分号结束。
expression.jsp代码如下 :
运行效果 :
4.Java代码脚本 :
1° 代码脚本的语法格式 :<% java 代码%>。
2° 代码脚本的作用 : 在JSP页面中使用Java代码完成业务需求。
3° 可以由多个代码脚本块组合成一个完整的Java语句,即允许有多个Java代码脚本。
4° 代码脚本还可以和表达式脚本一起组合使用,在JSP页面上输出数据。
首先定义一个JavaBean类,Student类代码如下 :
在javacode.jsp页面中,利用List集合存入几个Student对象的信息。
javacode.jsp代码如下 :
运行结果 :
5.JSP注释 :
JSP中不仅支持HTML格式的注释,还支持自己特有的注释格式 : <%-- --%>。
此外,在JSP的Java代码脚本中,也可以使用Java的行注释和段注释。
note.jsp代码如下 :
三、JSP对象
1.九大内置对象 :
1> JSP 内置对象(指已经创建好的对象, 可以直接使用[inbuild]),即Tomcat在解析JSP页面为Servlet 后,内部提供的九大对象,叫内置对象。
2> 内置对象可以直接使用,不需要手动定义。3> 九大内置对象如下——
①out 向客户端输出数据,out.println("");②request 处理来自客户端的HTTP请求③response 与回送的HTTP响应相关④session 会话对象⑤application 对应 ServletContext⑥pageContext JSP页面的上下文,是一个域对象,可以使用setAttribue()方法,但作用范围只是本页面⑦exception 异常对象 , getMessage()⑧page 代表JSP这个实例本身⑨config 对应 ServletConfig4> 九大内置对象与Servlet的关系图——
2.四大域对象 :
1° 基本介绍
1> pageContext域对象,存放的数据只能在当前页面使用。
2> request域对象,存放的数据在一次Request请求中有效(eg : 请求转发)。
3> session域对象,存放的数据在一次会话有效(sessionId)。
4> application域对象,存放的数据在整个Web应用运行期间有效, 范围更大。
作用域 : pageContext < request < session < application.
2° 应用实例
scope.jsp代码如下 :
运行效果 : (本页面访问域对象)
scope2.jsp代码如下 : (外页面访问域对象)
运行效果 : (scope请求转发)
运行效果:(scope请求重定向)
3.关于请求转发标签 :
<jsp:forward page="URL"></jsp:forward>
注意 : 1> 此处的URL是在服务器端解析的。
2> 请求转发标签常用于一个入口页面,转发到其他功能资源。
- 点赞
- 收藏
- 关注作者
评论(0)