spring-webmvc使用JSP作为视图

1、pom.xml

XML 复制代码
  <dependencies>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
    </dependency>
    <dependency>
      <groupId>jakarta.platform</groupId>
      <artifactId>jakarta.jakartaee-web-api</artifactId>
    </dependency>

    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
    </dependency>

    <!-- jsp需要依赖! jstl-->
    <dependency>
      <groupId>jakarta.servlet.jsp.jstl</groupId>
      <artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
      <version>3.0.0</version>
    </dependency>
  </dependencies>

2、home.jsp

html 复制代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
        <%=request.getAttribute("nickName")%><br>
        <h1>Hello ${nickName}</h1>
</body>
</html>

3、springmvc.xml

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">

        <context:component-scan base-package="com.atguigu.controller"/>

       <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
           <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
           <property name="prefix" value="/WEB-INF/views/"/>
           <property name="suffix" value=".jsp"/>
       </bean>

</beans>

4、web.xml

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
	version="4.0">

	<servlet>
		<servlet-name>DispatcherServlet</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>classpath:springmvc.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet-mapping>
		<servlet-name>DispatcherServlet</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>

</web-app>

5、Hello01Controller.java

java 复制代码
package com.atguigu.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/hello01")
public class Hello01Controller {

    @RequestMapping("/h01")
    public String h01(Model model) {
        System.out.println("hello jsp!");
        model.addAttribute("nickName", "鸠摩智");
        //此处的home称之为    逻辑视图名称
        //物理视图名称 = 前缀 + 逻辑视图名称 + 后缀
        //物理视图名称 = /WEB-INF/views/ +  home  + .jsp
        return "home";
    }
}

6、JSTL

JSTL(JavaServer Pages Standard Tag Library)是一个用于简化JavaServer Pages(JSP)页面开发的标签库。它提供了一组标准标签和函数,可以帮助开发人员在JSP页面中更方便地处理常见的Web应用程序开发任务。

Jstl标签库主要包括以下几部分:

  1. Core标签库(c:):提供了一组基本的标签,用于处理页面中的文本、URL、条件判断、循环等常见任务。
  2. Formatting标签库(fmt:):提供了一些用于处理国际化和本地化的标签,如日期格式化、消息格式化等。
  3. SQL标签库(sql:):提供了一些用于处理数据库访问的标签,如查询、更新等。
  4. XML标签库(x:):提供了一些用于处理XML数据的标签,如解析XML、遍历XML等。

使用Jstl标签库可以让开发人员更方便地编写Jsp页面,而不需要编写大量的Java代码。它提供了一些简单的标签来处理常见的Web应用程序开发任务,使得页面更加简洁、易于维护和修改。同时,Jstl还支持自定义标签,允许开发人员扩展Jstl的功能,以满足特定的需求。

总之,Jstl是一个非常有用的标签库,可以帮助开发人员更快速、更高效地开发JavaWeb应用程序。

相关推荐
合作小小程序员小小店2 天前
网页开发,在线%新版本旅游管理%系统,基于eclipse,html,css,jquery,servlet,jsp,mysql数据库
java·数据库·eclipse·html·intellij-idea·旅游·jsp
8***a8152 天前
从0到1部署Tomcat和添加servlet(IDEA2024最新版详细教程)
hive·servlet·tomcat
6***94153 天前
报错The default superclass, “jakarta.servlet.http.HttpServlet“(已经配置好tomcat)
http·servlet·tomcat
天若有情6733 天前
笑喷!乌鸦哥版demo函数掀桌怒怼主函数:难办?那就别办了!
java·前端·servlet
LSL666_4 天前
1 概述及简单登录(不涉及数据库)
数据库·servlet
合作小小程序员小小店4 天前
网页开发,在线%旧版本旅游管理%系统,基于eclipse,html,css,jquery,servlet,jsp,mysql数据库
java·数据库·servlet·eclipse·jdk·旅游·jsp
老板多放葱和香菜5 天前
1大数据平台及组件搭建https://baijiahao.baidu.com/s?id=1849543147230084630
java·大数据·servlet
百***35945 天前
从0到1部署Tomcat和添加servlet(IDEA2024最新版详细教程)
hive·servlet·tomcat
CodeZ-Hao7 天前
gitea启用状态检查结合jenkins工作流实现pr门禁
servlet·jenkins·gitea
怒放de生命20107 天前
使用jenkins最新版操作指南
运维·servlet·jenkins