快速搭建SpringMVC工程
第一步:创建工程
选择项目骨架注意:IDEA根据maven archetype的本质,其实是执行mvn
archetype:generate命令,该命令执行时,需要指定一个archetype-catalog.xml文件。
该命令的参数-DarchetypeCatalog,可选值为:remote,internal
,local等,用来指定archetype-catalog.xml文件从哪里获取。 默认为remote,即从
http://repo1.maven.org/maven2/archetype-catalog.xml路径下载archetype-catalog.xml文件。 http://repo1.maven.org/maven2/archetype-catalog.xml 文件约为3-4M,下载速度很慢,导致创建过程卡住。 键archetypeCatalog 值internal
完成创建
第二步:创建Maven目录结构
2.1创建java文件夹存放类2.2使用同样的方式创建resources文件夹存放配置文件
2.3目前这两个文件是不可以创建我们想创建的文件,我们需要更改文件的用途
第三部:导入jar包。坐标引入依赖
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!--编译版本-->
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<!--spring版本锁定,下方可以直接引用-->
<spring.version>5.0.2.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
第四步:配置前端控制器
4.1其实前端控制器就是一个servlet,所以去我们的web.xml中配置。4.2 org.springframework.web.servlet.DispatcherServlet类是spring为我们提供好的一个类,因为我们已经导入对应的jar包了,所以我们可以直接使用。
创建spring配置文件springMvcConfig.xml
第五步:部署工程
第六步:编写代码进行测试
6.1首先,我们生成的index.jsp页面是没有表头信息的,所以我们需要手动添加上6.2创建控制器编写方法
6.3配置spring,开启注解扫描器(约束在下方,复制即可)
xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context"
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/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">
</beans> ```
6.4配置加载spring配置文件,不然我们的配置文件不会被加载,也不会起到任何作用 因此,我们要在web.xml中提供一组全局的初始化参数 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200907165640244.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0xqcDEwMDU=,size_16,color_FFFFFF,t_70#pic_center)
解析1:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200907165649680.png#pic_center)
指的是我们可以给DispatcherServlet类contextConfigLocation属性传值,也就是说把我们配置文件的路径给它。
解析2:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200907165659532.png#pic_center)
DispatcherServlet正常情况下是在第一次发送请求时创建,如果我们做了此配置在我们启动服务器时就可以创建此对象,因此在它创建时就会帮我们加载spring的配置文件。
6.6创建成功跳转页面跳转 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200907165717291.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0xqcDEwMDU=,size_16,color_FFFFFF,t_70#pic_center)
6.5修改控制器,让它成功后跳转至此页面 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200907165731659.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0xqcDEwMDU=,size_16,color_FFFFFF,t_70#pic_center)
6.6在我们的spring配置文件中配置视图解析器 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200907165743600.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0xqcDEwMDU=,size_16,color_FFFFFF,t_70#pic_center)
6.7编写index.jsp页面 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200907165756602.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0xqcDEwMDU=,size_16,color_FFFFFF,t_30#pic_center)
总结: