Web前端之jsp、el

本文深入解析了JSP技术在网页动态内容生成中的应用,包括page指令、脚本、表达式及EL表达式的使用。同时,阐述了JSTL标签库如何增强JSP的功能,实现循环和条件判断等操作。最后,详细介绍了MVC设计模式中各组件的作用与交互,为读者提供了一个全面理解JSP与MVC的视角。

jsp-----生成html标签

page指令,说明此页是一个jsp页面
`<%@ page contentType="text/html;charset=utf-8" %>`
  1. 指令: <%@ 指令名 %>
  2. 脚本: <% 任意java代码 %>
  3. 表达式: <%= 表达式 %>

EL表达式语言

格式:${ 表达式语言 }
把内容起一个名字放入作用域

pageContext.setAttribute("名称", Object); 

之后通过EL表达式

${pageScope.名称}

JSTL:标准标签库-----配合el表达式,实现循环,条件判断等功能

1.前提: 加入jstl-1.2的jar包
2.导入标签库:
<%@ taglib uri="标签库唯一标识" prefix="前缀" %>
3.forEach

<c:forEach items="要遍历的集合" var="临时变量名" begin="起始数字" end="结束数字">
	${临时变量名}
</c:forEach>

4.if

<c:if test="布尔条件">内容</c:if>
  1. MVC 思想

     Model 模型 ==>  数据(例如从数据库查询出来的list集合, 里面包含java对象)
     View  视图 ==>  数据的展现形式 (jsp就是一种视图技术)
     Controller 控制器 ==> 把模型和视图联系起来 (servlet 充当控制器作用)
    
### JSP 构建 Web 前端页面框架 JavaServer Pages (JSP) 是一种服务器端技术,允许开发者嵌入 Java 代码到 HTML 页面中,从而动态生成网页内容。虽然现代前端开发更多倾向于使用 MVVM 类型的 JavaScript 框架如 Vue、React 和 Angular[^2],但在某些场景下,尤其是企业级应用中,JSP 仍然具有重要地位。 #### 创建基本的 JSP 文件结构 为了构建基于 JSPWeb 应用程序,通常需要设置如下文件夹结构: ``` WebContent/ ├── WEB-INF/ │ ├── web.xml │ └── lib/ └── index.jsp ``` `index.jsp` 就是应用程序的主要入口点之一。需要注意的是,在 Spring Boot 环境里可能不再显式配置 `web.xml` 文件[^3];但对于传统的 Servlet 容器来说,这个 XML 配置文件仍然是必需的。 #### 编写简单的 JSP 页面 下面是一个非常基础的例子展示如何利用 JSP 来显示一条消息给访问者: ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <h1>Hello from JSP!</h1> <p>The current time is <%= new java.util.Date() %>.</p> </body> </html> ``` 这段代码展示了怎样通过 `<%= ... %>` 表达式标签向客户端发送当前时间的信息。此外还可以引入外部样式表和脚本资源来增强用户体验。 #### 结合 EL 表达式与 JSTL 标签库 除了内联表达式外,还建议采用 Expression Language(EL) 及 JSP Standard Tag Library(JSTL),它们提供了更简洁的方式处理数据绑定以及条件逻辑等问题。例如: ```jsp <c:if test="${not empty param.name}"> Hello ${param.name}! </c:if> <!-- 使用 c:url tag 处理 URL --> <a href="<c:url value='/home'/>">Home Page</a> ``` 这里 `${...}` 形式的语法就是 EL 表达式,而 `<c:if>` 则来自 JSTL 中的核心标签集(`jstl-core`)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值