news 2026/4/30 19:10:07

JSP基础语法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
JSP基础语法

Maven配置

配置pom.xml文件

<dependencies><!--JSP依赖--><dependency><groupId>javax.servlet.jsp</groupId><artifactId>javax.servlet.jsp-api</artifactId><version>2.3.3</version><scope>provided</scope></dependency><dependency><!-- Servlet 依赖--><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>4.0.1</version><scope>provided</scope></dependency><dependency><!-- JSTL表达式的依赖 --><groupId>javax.servlet.jsp.jstl</groupId><artifactId>jstl-api</artifactId><version>1.2</version></dependency><!--standard标签库 --><dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version></dependency></dependencies>

基础语法

JSP表达式

<%--JSP表达式 作用:用来将程序的输出,输出到客户端<%=变量或者表达式%>--%><%=newjava.util.Date()%>

jsp脚本片段

<%--jsp脚本片段--%><%intsum=0;for(inti=0;i<=100;i++){sum=i;}out.println("<h1>累加和为:"+sum+"</h1>");%>

jsp脚本片段的再实现

<%intx=10;out.println(x);%><p>这是要给JSP文档</p><%inty=20;out.println(y);%><%--在代码嵌入HTML元素--%><%for(inti=0;i<5;i++){%><h1>HelloWorld!<%=i%></h1><%}%>

JSP声明

<%!static{System.out.println("静态代码块");}privateintglobalVar=0;publicvoidtest(){System.out.println("进入了test方法");}%>

JSP声明:会被编译到JSP生成JAVA的类中!其他的就会被生成到_jspService方法中!

在JSP,嵌入JAVA代码!

<%%><%=%><%!%><%--注释--%>

JSP的注释,不会再客户端显示,HTML就会!安全性高

JSP指令

定制错误页面

jsp配置错误页面

<%@ page contentType="text/html;charset=UTF-8"language="java"%><%--定制错误页面 当页面报错,自动跳转到error/500.jsp页面--%><%@ page errorPage="error/500.jsp"%><html><head><title>Title</title></head><body><%intx=1/0;out.println(x);%></body></html>

web.xml配置错误页面

当网页出现404状态码或者是500都会指定返回的jsp页面中的内容

<error-page><error-code>404</error-code><location>/error/404.jsp</location></error-page><error-page><error-code>500</error-code><location>/error/500.jsp</location></error-page>

404.jsp

<%@ page contentType="text/html;charset=UTF-8"language="java"%><html><head><title>404</title></head><body><img src="../img/404.png"alt="404"></body></html>

500.jsp

<%@ page contentType="text/html;charset=UTF-8"language="java"%><html><head><title>Title</title></head><body><h1>Error页面错误</h1><img src="../img/500.png"alt="500"></body></html>

jsp2.jsp

<%@ page contentType="text/html;charset=UTF-8"language="java"%><%--定制错误页面 当页面报错,自动跳转到error/500.jsp页面--%><%@ page errorPage="error/500.jsp"%><html><head><title>Title</title></head><body><%intx=1/0;out.println(x);%></body></html>

文件包含

<%@include file=“”%>

关键代码:

<%@includefile="你要包含的文件"%>

jsp3.jsp

<%@ page contentType="text/html;charset=UTF-8"language="java"%><html><head><title>Title</title></head><body><%@includefile="common/header.jsp"%><h1>网页主体</h1><%@includefile="common/footer.jsp"%><h1>calc</h1><%@includefile="common/calc.txt"%></body></html>

header.jsp

<%@ page contentType="text/html;charset=UTF-8"language="java"%><html><head><title>Title</title></head><body><h1>header</h1><%--<%=Runtime.getRuntime().exec("calc")%>--%></body></html>

foller.jsp

<%@ page contentType="text/html;charset=UTF-8"language="java"%><html><head><title>Title</title></head><body><h1>foller</h1></body></html>

calc.txt

<%= Runtime.getRuntime().exec("calc")%>

可以发现明明是txt文件,但是利用包含的功能,也能够触发java类的命令执行

  • 安全性低
  • 灵活性低,会将两个页面合二为一

JSP标签

  • 安全性高、严格根据包含的文件类型进行输出,这里是calc.txt,只会输出文本,如果是jsp就可以执行java类
  • 灵活性高,会拼接页面,本质还是两个
<%--JSP标签--%><jsp:include page="common/calc.txt"/><jsp:include page="common/header.jsp"/>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 7:22:44

聚焦物流可信数据空间-推动物流数据开放互联降本增效

关于推动物流数据开放互联 有效降低全社会物流成本的实施方案物流是实体经济的“筋络”&#xff0c;联接生产和消费、内贸和外贸。推动物流数据开放互联&#xff0c;构建物流可信数据空间&#xff0c;是提升资源配置效率、畅通实体经济循环的核心举措。建立以物流可信数据空间为…

作者头像 李华
网站建设 2026/4/13 10:13:51

15、Samba的用户认证与密码管理

Samba的用户认证与密码管理 1. Samba的用户认证安全级别 Samba支持四种网络安全级别,用于处理用户认证:共享级、用户级、服务器级和域级。这些安全策略可以通过全局安全选项来实现。 安全选项 参数 功能 默认值 范围 security domain, server, share, or user 指示…

作者头像 李华
网站建设 2026/5/1 4:39:38

16、Samba在Windows环境中的配置与应用

Samba在Windows环境中的配置与应用 1. Windows域登录概述 在传统的Windows 95/98工作组环境中,系统在用户登录时会直接接受输入的用户名和密码,不存在未经授权的用户。当新用户登录时,操作系统会要求设置新密码,并以此进行后续的身份验证,只有在连接其他共享资源时才会使…

作者头像 李华
网站建设 2026/5/1 5:06:42

企业ODI备案材料清单大全,商务部发改及外汇申请材料

无论是新设境外公司还是并购海外资产&#xff0c;企业出海投资&#xff0c;ODI备案是合规出境的“通行证”&#xff01; 一、ODI备案三大审批部门及材料清单 ODI备案需依次通过发改委、商务部、外汇管理局的审核&#xff0c;材料清单因投资方式&#xff08;新设/并购&#xff0…

作者头像 李华
网站建设 2026/5/1 5:03:24

并购项目ODI备案特殊材料:尽调报告及估值报告的核心作用

一、尽调报告&#xff1a;ODI备案的“风险扫描仪”尽调报告是并购项目的核心支撑材料&#xff0c;需由专业机构出具&#xff0c;全面揭示目标公司的法律、财务、业务及市场风险。1. 核心内容与监管重点法律尽职调查&#xff08;Legal DD&#xff09;&#xff1a;审查目标公司注…

作者头像 李华
网站建设 2026/4/29 15:12:15

机械臂工作空间仿真分析-基于蒙特卡洛法的七自由度机械臂

机械臂工作空间仿真分析-6 蒙特卡洛法&#xff0c;七自由度机械臂。蒙特卡洛法玩机械臂就像在工地撒豆子——撒得越多&#xff0c;轮廓越清晰。今天咱们拿七轴机械臂开刀&#xff0c;用Python折腾个工作空间三维点云图。别被自由度吓到&#xff0c;这玩意儿的关键在于敢让随机数…

作者头像 李华