前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SpringMVC的视图控制器(三)

SpringMVC的视图控制器(三)

原创
作者头像
堕落飞鸟
发布2023-05-13 15:36:30
2960
发布2023-05-13 15:36:30
举报
文章被收录于专栏:飞鸟的专栏

接下来,我们需要创建一个名为 spring-config.xml 的 SpringMVC 配置文件,该文件将 InternalResourceViewResolver 添加到应用程序中,并将 HomeController 和 AboutController 添加到 DispatcherServlet 中。spring-config.xml 文件的内容如下:

代码语言:javascript
复制
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
                           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
                           http://www.springframework.org/schema/context
                           http://www.springframework.org/schema/context/spring-context-3.0.xsd
                           http://www.springframework.org/schema/mvc
                           http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
 
    <context:component-scan base-package="com.example.controller" />
    <mvc:annotation-driven />
 
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/views/" />
        <property name="suffix" value=".jsp" />
    </bean>
 
</beans>

在上面的代码中,我们首先使用 component-scan 元素扫描 com.example.controller 包中带有 @Controller 注解的类。然后,我们使用 annotation-driven 元素启用 SpringMVC 的注解驱动。最后,我们创建了一个 InternalResourceViewResolver,并将它的 prefix 属性设置为 "/WEB-INF/views/",将它的 suffix 属性设置为 ".jsp"。

现在,我们可以创建 HomeController 和 AboutController 类,这些类将处理 /home 和 /about URL,并返回视图名称:

代码语言:javascript
复制
@Controller
public class HomeController {
    
    @RequestMapping("/home")
    public String home() {
        return "home";
    }
    
}
代码语言:javascript
复制
@Controller
public class AboutController {
    
    @RequestMapping("/about")
    public String about() {
        return "about";
    }
    
}

在上面的代码中,我们创建了两个带有 @Controller 注解的类,分别用于处理 /home 和 /about URL。这些方法返回视图名称,而不是实际的视图。SpringMVC 将使用 InternalResourceViewResolver 将视图名称转换为实际的视图。

最后,我们将创建视图文件,这些文件将显示在浏览器中。在我们的例子中,我们将创建 home.jsp 和 about.jsp 文件,并将它们保存在 /WEB-INF/views/ 目录下。这些文件的内容可以自定义,但是下面是一个简单的示例:

home.jsp:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Home</title>
</head>
<body>
    <h1>Welcome to the Home Page!</h1>
</body>
</html>

about.jsp:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>About</title>
</head>
<body>
    <h1>About Us</h1>
    <p>We are a small team of developers based in the United States.</p>
</body>
</html>

现在,我们已经完成了一个简单的 SpringMVC 应用程序。启动应用程序后,当访问 /home URL 时,将显示 home.jsp 视图,当访问 /about URL 时,将显示 about.jsp 视图。我们已经在 web.xml 文件中将 DispatcherServlet 映射到 / 路径,所以我们可以直接访问应用程序的根路径,而不需要添加任何路径。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档