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应用程序。

相关推荐
ajsbxi6 小时前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet
记录成长java17 小时前
ServletContext,Cookie,HttpSession的使用
java·开发语言·servlet
长安初雪18 小时前
Request 和 Response 万字详解
计算机网络·servlet
A-bodgie1 天前
Spring 中的 Environment 对象
java·后端·spring·servlet·springboot
清风絮柳2 天前
25.停车场管理系统(基于web的Java项目)
毕业设计·j2ee·java项目·jsp·停车场管理系统
笔墨登场说说2 天前
JDK 里面的线程池和Tomcat线程池的区别
java·servlet·tomcat
听潮阁3 天前
【SpringCloud详细教程】-01-一文了解微服务
开发语言·spring boot·spring cloud·servlet·java-ee·mybatis
阑梦清川3 天前
JavaEE初阶-----servlet-api,Maven创建项目,部署,打包,测试全过程
servlet·java-ee·maven
阑梦清川3 天前
JavaEE初阶--servlet篇(三)HttpServlet/response/request对应方法使用
java·servlet·java-ee
awonw4 天前
[java][基础]HTTP&Tomcat&Servlet
java·http·servlet·tomcat