SpringMVC
Spring MVC是Spring提供的一个强大而灵活的web框架。借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单。这些控制器一般不直接处理请求,而是将其委托给Spring上下文中的其他bean,通过Spring的依赖注入功能,这些bean被注入到控制器中。
Spring MVC主要由DispatcherServlet、处理器映射、处理器(控制器)、视图解析器、视图组成。他的两个核心是两个核心:
处理器映射:选择使用哪个控制器来处理请求
视图解析器:选择结果应该如何渲染
通过以上两点,Spring MVC保证了如何选择控制处理请求和如何选择视图展现输出之间的松耦合。
1.file new project 选择maven 先勾选这个
![](https://i-blog.csdnimg.cn/blog_migrate/98ccb89eaf237872e2b0ec6713cbbf97.png)
然后找到箭头所指
![](https://i-blog.csdnimg.cn/blog_migrate/9c7e24d2489e15813341f283bfaa7ac3.png)
点击Next
![](https://i-blog.csdnimg.cn/blog_migrate/cd013793ab91b953bd64779648e9bf35.png)
修改完成后点击Finish
这里出现的需要你手动更改一下 Maven 的路径 用户设置文件和本地maven仓库 可以找到你本机对应maven 的路径
![](https://i-blog.csdnimg.cn/blog_migrate/53375113680529bb2b3c2daf8f3ef7d9.png)
这个是我电脑设置的maven仓库
然后点击完成,如图是正在给本地仓库下载包
下载完成之后,看一看咱们的main 文件里有没有java,test,resources 文件夹 没有的话就一一创建。然后使用下图的方法修改对应包的颜色
![](https://i-blog.csdnimg.cn/blog_migrate/878c882ccef2944e441cfddaf48efd12.png)
接下来打开pom.xml 文件 导入依赖 下方是我导入的所有依赖
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.1.19.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.18</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.11.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.11.0</version>
</dependency>
</dependencies>
下载完成后,可以看到External Library下多了很多文件
接下来就是添加MVC框架,项目总包上右击 后 点击Add framework support
将Spring 及以下的Spring MVC 进行勾选 如图 然后点击ok 如果Spring 及Spring MVC 找不到接着往下看 有解决方法
![](https://i-blog.csdnimg.cn/blog_migrate/0d47fa34c3288dbe82cb967c800c0b6b.png)
如果在Add framework support中找不到Spring,那是因为项目中可能已经存在Spring相关文件,但不一定是完善的。因此我们要将已经存在的Spring给删掉,重新添加,方法如下:
点击File,选择Project Structure,选择Facets,就会看到有一个Spring啦,右击它,点删除,然后再重新Add framework support,Spring就好了。
![](https://i-blog.csdnimg.cn/blog_migrate/8a24507d6cfb24e5c20c1c802c8b997d.png)
添加完成MVC框架后,如图会出现多出来的两个配置xml文件
![](https://i-blog.csdnimg.cn/blog_migrate/8a3f27953a1a338052fd7123fe3663dd.png)
这个是我当前的所有目录
接下来先点击打开web.xml,这是自动生成的,我的上面是直接报错 下方紧接着有提供代码 直接复制粘贴
![](https://i-blog.csdnimg.cn/blog_migrate/0be19151b2927358ae62cb2e2ab700bd.png)
1 <?xml version="1.0" encoding="UTF-8"?>
2 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
5 version="3.1">
6
7 <display-name>Archetype Created Web Application</display-name>
8 <!--welcome pages-->
9 <welcome-file-list>
10 <welcome-file>index.jsp</welcome-file>
11 </welcome-file-list>
12
13 <!--配置springmvc DispatcherServlet-->
14 <servlet>
15 <servlet-name>springMVC</servlet-name>
16 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
17 <init-param>
18 <!--配置dispatcher.xml作为mvc的配置文件-->
19 <param-name>contextConfigLocation</param-name>
20 <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
21 </init-param>
22 <load-on-startup>1</load-on-startup>
23 <async-supported>true</async-supported>
24 </servlet>
25
26 <!--<servlet>-->
27 <!--<servlet-name>EmpServlet</servlet-name>-->
28 <!--<servlet-class>com.gx.filter.EmpServlet</servlet-class>-->
29 <!--</servlet>-->
30
31 <servlet-mapping>
32 <servlet-name>springMVC</servlet-name>
33 <url-pattern>/</url-pattern>
34 </servlet-mapping>
35 <!--把applicationContext.xml加入到配置文件中-->
36 <context-param>
37 <param-name>contextConfigLocation</param-name>
38 <param-value>/WEB-INF/applicationContext.xml</param-value>
39 </context-param>
40 <listener>
41 <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
42 </listener>
43 </web-app>
配置dispatcher-servlet.xml,负责mvc的配置代码如下
<?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:mvc="http://www.springframework.org/schema/mvc"
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/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<!--此文件负责整个mvc中的配置-->
<!--启用spring的一些annotation -->
<context:annotation-config/>
<!-- 配置注解驱动 可以将request参数与绑定到controller参数上 -->
<mvc:annotation-driven/>
<!--静态资源映射-->
<!--本项目把静态资源放在了webapp的statics目录下,资源映射如下-->
<mvc:resources mapping="/css/**" location="/static/css/"/>
<mvc:resources mapping="/js/**" location="/static/js/"/>
<mvc:resources mapping="/image/**" location="/static/images/"/>
<mvc:default-servlet-handler /> <!--这句要加上,要不然可能会访问不到静态资源,具体作用自行百度-->
<!-- 对模型视图名称的解析,即在模型视图名称添加前后缀(如果最后一个还是表示文件夹,则最后的斜杠不要漏了) 使用JSP-->
<!-- 默认的视图解析器 在上边的解析错误时使用 (默认使用html)- -->
<bean id="defaultViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/views/"/><!--设置JSP文件的目录位置-->
<property name="suffix" value=".jsp"/>
<property name="exposeContextBeansAsAttributes" value="true"/>
</bean>
<!-- 自动扫描装配 -->
<context:component-scan base-package="com.Demo.controller"/>
</beans>
配置applicationContext.xml,负责一些非MVC组件的配置,代码送上
<?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 http://www.springframework.org/schema/context/spring-context.xsd">
<context:component-scan base-package="com.Demo"/>
</beans>
到此,咱们整个mvc框架配置就结束了,然后就可以敲代码了。
使用idea基于maven创建SpringMVC项目_非凡的博客-CSDN博客 转载于非凡的博客 原博客链接