01_JSP_概念
1. 概念:
* Java Server Pages: java服务器端页面
* 可以理解为:一个特殊的页面,其中既可以指定定义html标签,又可以定义java代码, 用于简化书写。
2.区别:
Servlet擅长写Java代码,处理逻辑
JSP擅长输出HTML标签
小结:
JSP = html + java脚本 + jsp自身的东西
02_JSP_原理
JSP本质上就是一个Servlet
注意:jsp本身是一个Servlet,所以要访问jsp文件必须部署到服务器上
新建一个JSP页面,打开浏览器访问,看看它生产的Java文件
03_JSP_脚本
JSP的脚本:JSP定义Java代码的方式
1. <% 代码 %>:定义的java代码,在service方法中。service方法中可以定义什么,该脚本中就可以定义什么。
2. <%! 代码 %>:定义的java代码,在jsp转换后的java类的成员位置。
3. <%= 代码 %>:定义的java代码,会输出到页面上。输出语句中可以定义什么,该脚本中就可以定义什么。
总结:
jsp = html +JSP脚本 + jsp自身的东西
<%!
// 这段代码翻译后,会出现在类的成员位置
int age = 18;
public void show() {
}
%>
<%
int x = 10 ; // 这段代码翻译后,会出现在一个方法中
%>
<%= i %> // 这段代码翻译后, 会出现在一个方法中,会使用out.print() 输出i 到页面上。
JSP的内置对象:
* 在jsp页面中不需要获取和创建,可以直接使用的对象
* jsp一共有9个内置对象。(先说三个)
* request
* response
* out:字符输出流对象。可以将数据输出到页面上。和response.getWriter()类似
* response.getWriter()和out.write()的区别:
*在tomcat服务器真正给客户端做出响应之前,会先找response缓冲区数据,再找out缓冲区数据。
* response.getWriter()数据输出永远在out.write()之前。
结论: 在JSP页面上,输出内容就用out.write() 或者<%= %> 。