1.JSP
1.1 什么是JSP
Java Server Pages : Java服务器端页面,也和Servlet一样,用于开发动态Web技术!
最大的特点:
- 写JSP就像在写HTML
- 区别:
- HTML只给用户提供静态的数据
- JSP页面中可以嵌入Java代码,为用户提供动态数据;
1.2 JSP原理
思路:JSP到底怎么执行!
- 代码层面没有任何问题
- 服务器内部工作
tomcat中有一个work目录
IDEA中使用Tomcat的会在IDEA的Tomcat中生产一个work目录
浏览器向服务器发送请求,不管访问什么资源,其实都是在访问Servlet!
JSP最终也会转换成为一个Java类!
JSP本质上就是一个Servlet
//初始化
void jspInit();
//销毁
void jspDestroy();
//JSPService
void _jspService(HttpServletRequest var1, HttpServletResponse var2) throws ServletException, IOException;
1.判断请求
2.内置一些对象
3.输出页面前增加的代码
4.以上的这些个对象我们可以在JSP页面中直接使用!
在JSP页面中:
只要是Java代码就会原封不动的输出;
如果是HTML代码,就会被转换为:
out.write("<html>\r\n");
这样的格式,输出到前端!
IntelliJ IDEA 2017.3.2 创建 web Application 没有版本选择
https://blog.csdn.net/weixin_40434637/article/details/100054774
1.3 JSP基础语法
任何语言都有自己的语法,Java中有,JSP作为Java技术的一种应用,他拥有一些自己扩充的语法(了解,知道即可!),Java所有语法都支持!
JSP表达式
<%--JSP表达式
作用:用来将程序的输出,输出到客户端
<%= 变量或者表达式 %>
--%>
<%= new java.util.Date() %>
JSP脚本片段
<%--JSP脚本片段--%>
<%
int sum = 0;
for (int i = 0; i <= 100; i++) {
sum += i;
}
out.println("<h1>Sum=" + sum + "</h1>");
%>
脚本片段再实现
<%
int x = 10;
out.println(x);
%>
<p>只是一个JSP文档</p>
<%
out.println(x);
%>
<%--在代码嵌入HTML元素--%>
<%
for (int i = 0; i < 5; i++) {
%>
<h1>Hello,world<%=i%>></h1>
<%
}
%>
JSP声明
<%!
static {
System.out.println("LoginServlet");
}
public void kuang(){
System.out.println("hello~");
}
%>
JSP声明:会被编译到JSP生成Java类的类中,其他的就会被生成到_jspService方法中;
在JSP,嵌入Java代码即可
<%
%>
<%= %>
<%!
%>
<%--注释--%>
JSP的注释不会在客户端显示,HTML的注释会
1.4 JSP指令
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page args....%>
<%@ include file="common/header.jsp"%>
1.5 九大内置对象
- PageContext 存东西
- Request 存东西
- Response
- Session 存东西
- Application 【ServletContext】 存东西
- config 【ServletConfig】
- out
- page
- exception
request:客户端向服务器发送请求,产生的数据,用户看完就没用了,比如:新闻,用户看完没用的!
session:客户端向服务器发送请求,产生的数据,用户用完一会还有用,比如:购物车;
application:客户端向服务器发送请求,产生的数据,一个用户用完了,其他用户还可能使用,比如:聊天数据;
JSTL标签库使用步骤
- 引入对应的taglib
- 使用其中的方法