详解SpringMVC中Controller与JSP传值
在SpringMVC中,Controller与JSP之间的数据传递是非常常见的操作。本文将详细讲解如何在SpringMVC中实现Controller与JSP之间的数据传递,并提供两个示例说明。
实现步骤
下面是实现Controller与JSP之间的数据传递的详细步骤:
步骤一:创建Maven项目
首先,我们需要创建一个Maven项目。可以通过以下方式创建:
mvn archetype:generate -DgroupId=com.example -DartifactId=myproject -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
在上面的命令中,我们使用maven-archetype-webapp模板来创建一个名为myproject的Maven项目。
步骤二:添加依赖
在Maven项目中,我们需要添加SpringMVC的依赖。可以通过以下方式添加:
<dependencies>
<!-- SpringMVC -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.9</version>
</dependency>
</dependencies>
在上面的依赖中,我们添加了SpringMVC的依赖。
步骤三:配置web.xml
在Maven项目中,我们需要配置web.xml文件。可以通过以下方式配置:
<web-app>
<display-name>Archetype Created Web Application</display-name>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
在上面的配置中,我们定义了一个名为dispatcher的Servlet,并使用DispatcherServlet类来处理请求。我们还定义了一个名为dispatcher-servlet.xml的Spring配置文件,并将其作为参数传递给DispatcherServlet。
步骤四:配置dispatcher-servlet.xml
在Maven项目中,我们需要配置dispatcher-servlet.xml文件。可以通过以下方式配置:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
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"/>
<mvc:annotation-driven/>
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"/>
<property name="suffix" value=".jsp"/>
</bean>
</beans>
在上面的配置中,我们使用
步骤五:编写代码
在Maven项目中,我们需要编写代码来实现Controller与JSP之间的数据传递。下面是一个示例:
@Controller
public class UserController {
@GetMapping("/user")
public String getUser(Model model) {
User user = new User();
user.setName("John");
user.setAge(30);
model.addAttribute("user", user);
return "user";
}
}
在上面的示例中,我们定义了一个名为UserController的控制器类,并使用@Controller注将其标记为MVC的控制器。我们使用@GetMapping注解来处理GET请求。在getUser方法中,我们创建了一个名为user的User对象,并将其添加到Model中。最后,我们返回了一个名为user的JSP视图。
在JSP视图中,我们可以使用EL表达式来访问Model中的数据。下面是一个示例:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>User</title>
</head>
<body>
<h1>User Information</h1>
<p>Name: ${user.name}</p>
<p>Age: ${user.age}</p>
</body>
</html>
在上面的示例中,我们使用EL表达式${user.name}和${user.age}来访问Model中的数据。
示例
以下是两个示例演示如何在SpringMVC中实现Controller与JSP之间的数据传递:
示例一
-
创建一个名为myproject的Maven项目。
-
添加SpringMVC的依赖。
-
配置web.xml和dispatcher-servlet.xml文件。
-
创建一个名为UserController的控制器类,并添加getUser方法。
-
创建一个名为user.jsp的JSP视图文件。
-
打包项目并部署到Tomcat服务器上。
-
使用浏览器访问http://localhost:8080/myproject/user,查看是否能够成功访问。
示例二
-
创建一个名为myproject的Maven项目。
-
添加SpringMVC的依赖。
-
配置web.xml和dispatcher-servlet.xml文件。
-
创建一个名为UserController的控制器类,并添加getUser方法。
-
创建一个名为user.jsp的JSP视图文件。
-
使用Spring Boot打包项目。
-
将打包后的jar包上传到服务器。
-
在服务器上运行jar包。
-
使用浏览器访问http://localhost:8080/user,查看是否能够成功访问。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解springmvc 中controller与jsp传值 - Python技术站