
以下是一个简单的 Spring MVC 示例,用于在浏览器中发起请求并展示个人简历信息。
1. 项目结构
|---------------------------------|
| src
|
| └── main
|
| ├── java
|
| │ └── com
|
| │ └── example
|
| │ ├── controller
|
| │ │ └── ResumeController.java
|
| │ └── model
|
| │ └── Resume.java
|
| └── webapp
|
| └── WEB-INF
|
| └── views
|
| └── resume.jsp
|
2. 模型类 Resume.java
java
|---------------------------------------------------------------------------------------------|
| package com.example.model;
|
| |
| public class Resume {
|
| private String name;
|
| private String email;
|
| private String phone;
|
| private String education;
|
| private String skills;
|
| |
| // 构造函数、getters 和 setters
|
| public Resume() {}
|
| |
| public Resume(String name, String email, String phone, String education, String skills) {
|
| this.name = name;
|
| this.email = email;
|
| this.phone = phone;
|
| this.education = education;
|
| this.skills = skills;
|
| }
|
| |
| // getters and setters
|
| public String getName() { return name; }
|
| public void setName(String name) { this.name = name; }
|
| // 其他getter和setter...
|
| }
|
3. 控制器类 ResumeController.java
java
|--------------------------------------------------------------|
| package com.example.controller;
|
| |
| import com.example.model.Resume;
|
| import org.springframework.stereotype.Controller;
|
| import org.springframework.ui.Model;
|
| import org.springframework.web.bind.annotation.GetMapping;
|
| |
| @Controller
|
| public class ResumeController {
|
| |
| @GetMapping("/resume")
|
| public String showResume(Model model) {
|
| Resume resume = new Resume(
|
| "张三",
|
| "zhangsan@example.com",
|
| "123-456-7890",
|
| "计算机科学硕士",
|
| "Java, Spring, MySQL"
|
| );
|
| model.addAttribute("resume", resume);
|
| return "resume";
|
| }
|
| }
|
4. 视图文件 resume.jsp
jsp
|---------------------------------------------------------------------|
| <%@ page contentType="text/html;charset=UTF-8" language="java" %>
|
| <html>
|
| <head>
|
| <title>个人简历</title>
|
| </head>
|
| <body>
|
| <h1>个人简历</h1>
|
| <p>姓名: ${resume.name}</p>
|
| <p>邮箱: ${resume.email}</p>
|
| <p>电话: ${resume.phone}</p>
|
| <p>教育背景: ${resume.education}</p>
|
| <p>技能: ${resume.skills}</p>
|
| </body>
|
| </html>
|
5. Spring MVC 配置
确保你的 web.xml
和 Spring 配置文件(如 mvc-dispatcher-servlet.xml
)已正确配置。
web.xml
xml
|------------------------------------------------------------------------------------|
| <web-app>
|
| <servlet>
|
| <servlet-name>mvc-dispatcher</servlet-name>
|
| <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
|
| <init-param>
|
| <param-name>contextConfigLocation</param-name>
|
| <param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value>
|
| </init-param>
|
| <load-on-startup>1</load-on-startup>
|
| </servlet>
|
| |
| <servlet-mapping>
|
| <servlet-name>mvc-dispatcher</servlet-name>
|
| <url-pattern>/</url-pattern>
|
| </servlet-mapping>
|
| </web-app>
|
mvc-dispatcher-servlet.xml
xml
|------------------------------------------------------------------------------------|
| <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"
|
| xmlns:mvc="http://www.springframework.org/schema/mvc"
|
| xsi:schemaLocation="
|
| http://www.springframework.org/schema/beans
|
| http://www.springframework.org/schema/beans/spring-beans.xsd
|
| http://www.springframework.org/schema/context
|
| http://www.springframework.org/schema/context/spring-context.xsd
|
| http://www.springframework.org/schema/mvc
|
| http://www.springframework.org/schema/mvc/spring-mvc.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>
|
6. 运行和测试
- 将项目部署到 Tomcat 或其他 Servlet 容器。
- 访问
http://localhost:8080/your-app-context/resume
。
7. 运行结果截图
-
浏览器中会显示如下内容:
|----------------------------|
|个人简历
|
|姓名: 张三
|
|邮箱: zhangsan@example.com
|
|电话: 123-456-7890
|
|教育背景: 计算机科学硕士
|
|技能: Java, Spring, MySQL
|
注意事项
- 确保你的开发环境已配置好 Spring MVC 和 JSP 支持。
- 如果使用 Maven 或 Gradle,确保相关依赖已正确引入。
- 视图解析器配置的路径和后缀需要与你的 JSP 文件位置和名称匹配。
通过以上步骤,你可以实现一个简单的 Spring MVC 应用,用于展示个人简历信息。