- jsp 和 servlet 的关系
1.jsp是对servlet的一种高级封装,jsp的本质还是servlet
2.jsp文件在容器中会被转成servlet,然后在执行
3.与servlet相比,jsp可以很方便的修改HTML网页,而不用去面对大量的printfln语句。
- jsp的实现原理
1.Tomcat将会把xxx.jsp 转换为xxx.java 代码,然后编译成 xxx.class 然后运行,最后把运行的结果通过response响应发送给客户端
- jsp和HTML的集成开发
1.语法一:<% Java代码 %>
2.语法二:<%! 定义变量、函数等%><%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>jsp</title> </head> <body> <% //jsp中可以编写Java代码 //1.jsp 界面的输出 out.println("out.println:hello world!"); //2.在命令行的输出 System.out.println("System.out.println:hello world"); //3.jsp 输出日期 out.println(new Date()); %> </body> </html>
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <%! /* 声明变量和函数*/ int a = 10; public void test1(){ System.out.println("我是test1"); } public int add(int a,int b){ return a + b; } %> <% out.println(add(10,20)); test1(); %> </body> </html>
3.语法三:<%=Java表达式%> 在页面上输出Java表达式的结果
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Title</title> </head> <body> <%! int a = 10; public int add(int a,int b){ return a+b; } %> <%=a%> <%=add(a,20)%> </body> </html>
- jsp的注释和html注释
1.注释一:<%-- 注释 --%> jsp注释 注释内容不会被发送到浏览器,甚至不会被编译。
2.注释二:<!-- 注释 --> html注释 通过浏览器查看源代码的时候可以看到注释的内容。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>jsp基础教程</title> </head> <body> <h3>注释</h3> <%-- jsp 的注释 不会输出到编译的html --%> <!-- 使用html式 注释可以写入到生成的html中 --> </body> </html>
- jsp指令
1.<%@page ....%>:定义页面的依赖属性,比如脚本语言,error页面,缓存需求等!
2.<%@ include ...%>:包含其他文件。<%@ page contentType="text/html;charset=UTF-8" language="java" errorPage="error.jsp" %>
3.<%@ taglib ...%>:引入标签库的定义,可以是自定义标签。<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ include file="header.jsp"%> <html> <head> <title>Title</title> </head> <body> <h2>middle</h2> </body> </html> <%@ include file="footer.jsp"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
- page指令 ---- 语法:<%@ page attribute1="value1" attribute2="value2"... %> page指令提供当前页面的使用说明,一个jsp页面可以包含多个page指令。
1.属性一:contentType 指定当前jsp页面的MIME类型和字符编码格式。
2.属性二:errorPage 指定当前jsp页面发生异常的时候,转向的页面。
3.属性三:isErrorPage 指定当前页面是否可以当作另一个jsp页面的错误处理页面
4.属性四:import 导入要使用的Java类
5.属性五:language 定义jsp页面使用的脚本语言,默认是Java
6.属性六:session 指定当前jsp页面是否使用session,默认是true 立即创建,false是使用的时候创建。
7.属性七:pageEncoding 指定jsp页面的解码格式。
<%@page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" errorPage="error.jsp" isErrorPage="true" session="true" import="" %>
- useBean
语法:
1. useBean:创建一个对象:
id:创建的对象的名字。 class:User类的所在的包的路径<%--创建一个对象--%> <jsp:useBean id="user" class="com.dl.code.entity.User"></jsp:useBean>
2.setProperty:给对象的属性赋值
name:这个属性是必须的,他表示是为哪一个对象的属性赋值
property:这个属性是必须的,他表示要为对象的哪一个属性赋值。
value:是可以选择的。给属性是用来指定Bean属性的内容。<%--给user对象的属性赋值--%> <jsp:setProperty name="user" property="name" value="代先生"/> <jsp:setProperty name="user" property="password" value="123456"/>
3.setProperty:获取对象的属性。并在jsp页面输出。
name:对象的名字。
property:对象属性的名字。<%--获取对象属性的值--%> <jsp:getProperty name="user" property="name"/> <jsp:getProperty name="user" property="password"/>
4.打印的方法
<%--打印方法一--%> <jsp:getProperty name="user" property="name"/> <jsp:getProperty name="user" property="password"/> <%--打印方法二--%> <%= user.getName()%> <%= user.getPassword()%>
-
forward
语法:<%jsp:forwrad page="url路径" %>
作用:把请求转到指定的页面<%--将请求转到error.jsp页面--%> <jsp:forward page="error.jsp"></jsp:forward>
page属性:相对的url路径
-
param
语法:<jsp:param name="" value=""/>
作用:在转发动作的内部使用,作为参数进行传递。<%--将请求转到test.jsp页面--%> <jsp:forward page="test.jsp"> <jsp:param name="name" value="DL"/> </jsp:forward>
获取数据:
<%= request.getParameter("name")%>
提示:进行上述操作的时候,注意编码格式。否则会出现乱码。
-
jsp的内置对象
1.pageContext --- javax.servlet.jsp.PageContext
2.request --- javax.servlet.http.HttpServletRequest
3.response --- javax.servlet.http.HttpServletResponse
4.session --- javax.servlet.http.HttpSession
5.application --- javax.servlet.ServletContext
6.config --- javax.servlet.ServletConfig
7.exception --- java.lang.Throwable
8.out --- javax.servlet.jsp.JspWriter -
jsp四大作用对象
1.pageContext :当前jsp页面范围
2.request :一次请求有效
3.session :一次会话有效,浏览器关闭后,就失效
4.application :整个web应用有效 服务器重启或者关闭,失效。 -
pageContext的方法
1.setAttribute("name",value):存储值 仅在当前页面作用域有效
2.getAttribute("name"):获取值
3.还可以用于获取其他八个内置对象<%-- 存一个值 --%> <%pageContext.setAttribute("name","代先生");%> <%-- 获取存的值 --%> <%= pageContext.getAttribute("name")%>
<%-- 获取其他的jsp内置对象 列举四个为例 --%> <% ServletRequest request1 = pageContext.getRequest(); ServletResponse response1 = pageContext.getResponse(); Exception exception = pageContext.getException(); HttpSession session1 = pageContext.getSession(); %>
Java JSP 详细说明 --- 内置对象及语法格式
猜你喜欢
转载自blog.csdn.net/weixin_45634682/article/details/112479780
今日推荐
周排行