首页 > 编程语言 > 详细

maven同springmvc的入门配置

时间:2020-11-21 22:40:16      阅读:31      评论:0      收藏:0      [点我收藏+]

maven同springmvc的入门配置

制作人:全心全意

springmvc项目的配置

创建spring的核心配置文件(springmvc.xml,可自定义名称)

<?xml version="1.0" encoding="UTF-8"?>
<!-- 引入头文件开始 -->
<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">
</beans>
<!-- 引入头文件结束 -->

  

配置前端控制器(web.xml)

	<!-- 配置前端控制器开始 -->
	<servlet>
		<servlet-name>springmvc</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

		<!-- 加载springmvc.xml文件 -->
		<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>springmvc</servlet-name>
		<url-pattern>*.action</url-pattern>
		<!-- 
			*.action:访问以action为结尾,由DispatcherServlet进行解析
			/:所有地址,都由DispatcherServlet进行解析,不使用(例如,访问图片不可解析) 
			/*:此处不正确的配置,会形成页面和解析器的死循环 -->
	</servlet-mapping>
	<!-- 配置前端控制器结束 -->

  

创建控制器

#===================User对象开始=======================================
package com.zq.bean;

public class User {
	private String username;
	private Integer age;
	private Integer sex;

	public User() {

	}

	public User(String username, Integer age, Integer sex) {
		super();
		this.username = username;
		this.age = age;
		this.sex = sex;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public Integer getAge() {
		return age;
	}

	public void setAge(Integer age) {
		this.age = age;
	}

	public Integer getSex() {
		return sex;
	}

	public void setSex(Integer sex) {
		this.sex = sex;
	}

}

#===================User对象结束=======================================
#===================User1Controller开始=======================================
package com.zq.user;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

import com.zq.bean.User;

public class User1Controller implements Controller {

	@Override
	public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
		// 生成用户列表
		List<User> users = new ArrayList<>();
		for (int i = 1; i <= 20; i++) {
			users.add(new User("username" + i, i, 0));
		}

		// 封装页面的地址和要传入页面的数据
		ModelAndView modelAndView = new ModelAndView();
		modelAndView.addObject("users", users); // 向页面传入内容
		// 跳转的页面,默认为转发
		modelAndView.setViewName("list.jsp");
		// modelAndView.setViewName("redirect:list.jsp"); //重定向
		return modelAndView;
	}

}

#===================User1Controller结束=======================================
#===================User2Controller开始=======================================
package com.zq.user;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.HttpRequestHandler;

import com.zq.bean.User;

public class User2Controller implements HttpRequestHandler {

	@Override
	public void handleRequest(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// 生成用户列表
		List<User> users = new ArrayList<>();
		for (int i = 1; i <= 20; i++) {
			users.add(new User("username" + i, i, 0));
		}

		// 封装页面的地址和要传入页面的数据
		request.setAttribute("users", users); // 向页面传入内容
		// 跳转的页面,默认为转发
		request.getRequestDispatcher("list.jsp").forward(request, response);
	}

}
#===================User2Controller结束=======================================

  

配置控制器(springmvc.xml)

	<!-- 配置控制器开始 -->
	<bean id="user1Controller" name="/user1Controller.action"
		class="com.zq.user.User1Controller"></bean>
	<!-- 配置控制器结束 -->

  

配置控制器映射器

	<!-- 配置控制器映射器开始 -->
	<!-- 两种控制器映射器
	 	org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping:将bean的name作为url进行查找,也就是handler必须配置name属性 
		org.springframework.web.servlet.handler.SimpleUrlHandlerMapping:可以配置多个url能够访问 -->
	<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean>

	<!-- 配置控制器映射器结束 -->

  

配置控制器适配器

	<!-- 配置控制器适配器开始 -->
	<!-- 
		两种控制器适配器
		org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter:Controller实现的是Controller接口
		org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter:Controller实现的是HttpRequestHandler接口,例如User2Controller
	 -->
	 <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"></bean>

	<!-- 配置控制器适配器结束 -->

  

配置视图解析器:

	<!-- 配置视图解析器开始 -->
	<bean
		class="org.springframework.web.servlet.view.InternalResourceViewResolver"></bean>
	<!-- 配置视图解析器结束 -->

  

配置测试页面

#=================list.jsp页面开始===================================
<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>用户列表</title>
</head>
<body>
	<table width="60%" align="center" border="1" cellpadding="5">
		<tr>
			<th>用户名</th>
			<th>年龄</th>
			<th>性别</th>
		</tr>
		<c:forEach var="sn" items="${ users }">
			<tr>
				<td align="center">${ sn.username }</td>
				<td align="center">${ sn.age }</td>
				<td align="center">${ sn.sex }</td>
			</tr>
		</c:forEach>
	</table>
</body>
</html>
#=================list.jsp页面结束===================================

  

注意:pom.xml所有spring的插件版本号都应一致

#===================pom.xml开始================================================
<project xmlns="http://maven.apache.org/POM/4.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.zq.test</groupId>
	<artifactId>zq-maven-test</artifactId>
	<packaging>war</packaging>
	<version>1.0</version>
	<name>zq-maven-test Maven Webapp</name>
	<url>http://maven.apache.org</url>

	<properties>
		<spring.version>5.2.10.RELEASE</spring.version>
	</properties>

	<dependencies>



		<!-- https://mvnrepository.com/artifact/log4j/log4j -->
		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>1.2.17</version>
		</dependency>

		<!-- https://mvnrepository.com/artifact/javax.servlet/jstl -->
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>jstl</artifactId>
			<version>1.2</version>
		</dependency>

		<!-- https://mvnrepository.com/artifact/taglibs/standard -->
		<dependency>
			<groupId>taglibs</groupId>
			<artifactId>standard</artifactId>
			<version>1.1.2</version>
		</dependency>




		<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.1.0</version>
			<scope>provided</scope>
		</dependency>

		<!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
		<dependency>
			<groupId>javax.servlet.jsp</groupId>
			<artifactId>javax.servlet.jsp-api</artifactId>
			<version>2.2.1</version>
			<scope>provided</scope>
		</dependency>




		<!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>${spring.version}</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${spring.version}</version>
		</dependency>



	</dependencies>
	<build>
		<finalName>zq-maven-test</finalName>
	</build>
</project>


#===================pom.xml结束================================================

  

maven同springmvc的入门配置

原文:https://www.cnblogs.com/zhangquan-yw/p/14017248.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!