idea构建maven+springmvc+tomcat的demo工程(小亮yuu)

原文地址:https://www.cnblogs.com/xiaoliangyuu/p/15488138.html

需要环境 jdk、maven、tomcat、idea,此次demo版本如下:

jdk 8
maven 3.5
tomcat 8.5
idea 2020.1.4

1、idea 点击 File->New ->Project,选择maven创建,并选择maven模板 maven-archetype-webapp(注意勾选Create from archetype,否则无法选择maven模板)

2、选择项目位置,填写maven三坐标GroupId/ArtifactId/Version

3、点击Next,预览如下图,点击Finish

4、打开pom.xml,添加spring依赖和springmvc依赖,并reload maven工程(idea可能会提醒,也可手动点击reload)如图:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0"
 3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 5     <modelVersion>4.0.0</modelVersion>
 6 
 7     <groupId>com.yl.example</groupId>
 8     <artifactId>spring-mvc-demo</artifactId>
 9     <version>1.0-SNAPSHOT</version>
10     <packaging>war</packaging>
11 
12     <name>spring-mvc-demo Maven Webapp</name>
13     <!-- FIXME change it to the project's website -->
14     <url>http://www.example.com</url>
15 
16     <properties>
17         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
18         <maven.compiler.source>1.8</maven.compiler.source>
19         <maven.compiler.target>1.8</maven.compiler.target>
20     </properties>
21 
22 
23     <dependencies>
24         <dependency>
25             <groupId>org.springframework</groupId>
26             <artifactId>spring-context</artifactId>
27             <version>5.2.7.RELEASE</version>
28         </dependency>
29         <dependency>
30             <groupId>org.springframework</groupId>
31             <artifactId>spring-webmvc</artifactId>
32             <version>5.2.7.RELEASE</version>
33         </dependency>
34     </dependencies>
35 </project>
pom.xml

5、新建文件夹

src/main/java
src/main/resources
src/main/webapp
src/main/webapp/WEB-INF
5.1、webapp即为web工程的目录文件,可自定义位置和名字,只要后面注意配置上对应目录就ok
5.2、标记java文件夹为 Sources Root,resources 文件夹为 Resources Root,方法如图:

 建好好目录结构如图:

6、WEB-INF目录新建文件 web.xml

 1 <!DOCTYPE web-app PUBLIC
 2         "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 3         "http://java.sun.com/dtd/web-app_2_3.dtd" >
 4 
 5 <web-app>
 6     <display-name>Archetype Created Web Application</display-name>
 7 
 8 
 9     <servlet>
10         <servlet-name>springmvc</servlet-name>
11         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
12         <init-param>
13             <param-name>contextConfigLocation</param-name>
14             <param-value>classpath:dispatcher-servlet.xml</param-value>
15         </init-param>
16     </servlet>
17 
18     <servlet-mapping>
19         <servlet-name>springmvc</servlet-name>
20         <url-pattern>/</url-pattern>
21     </servlet-mapping>
22 </web-app>
web.xml

7、web目录下新建文件index.jsp

1 <html>
2 <body>
3 <h2>Hello World!</h2>
4 </body>
5 </html>
index.jsp

8、resources目录下新建文件 dispatcher-servlet.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xmlns:context="http://www.springframework.org/schema/context"
 5        xmlns:mvc="http://www.springframework.org/schema/mvc"
 6        xmlns:aop="http://www.springframework.org/schema/aop"
 7        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
 8        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
 9        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
10        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">
11 
12     <context:component-scan base-package="com.yl.example"/>
13 
14     <!--开启注解驱动-->
15     <mvc:annotation-driven/>
16 
17     <!-- 定义视图解析器 -->
18     <bean id="velocityConfig"
19           class="org.springframework.web.servlet.view.InternalResourceViewResolver">
20         <property name="prefix" value="/" />
21         <property name="suffix" value="*.jsp" />
22     </bean>
23 
24 
25 </beans>
dispatcher-servlet.xml

9、src/main/java目录下新建包 com.yl.example,包下新建java文件 HelloController

 1 package com.yl.example;
 2 
 3 import org.springframework.web.bind.annotation.GetMapping;
 4 import org.springframework.web.bind.annotation.RestController;
 5 
 6 /**
 7  * @description:
 8  * @author: xiaoliang
 9  * @date: 2021/10/30 23:08
10  **/
11 @RestController
12 public class HelloController {
13 
14 
15     @GetMapping("/test")
16     public String test(){
17         return "hello spring-mvc";
18     }
19 
20 
21 }
HelloController

10、建好文件后目录结构如图:

 11、开始部署,点击右上角 Project Structure图标,弹出Project Structure 框。

12、依次点击Project、Modules、Artifacts标签核对如图:

 原文地址:https://www.cnblogs.com/xiaoliangyuu/p/15488138.html

 

小亮yuu

13、点击Modules -> + -> Web,如图

新建一个Web,如图

14、核对 Path 和 Web Resources Directory 图14,是否正确(Path指向web.xml,Resources Directory指向web工程目录)

我这里值如下:

  Path:F:1_idea_workspacemy_workspacespringboot-learningspring-mvc-demosrcmainwebappWEB-INFweb.xml
  Resources Directory:F:1_idea_workspacemy_workspacespringboot-learningspring-mvc-demosrcmainwebapp

15、点击最下面 create Artifact 按钮,生成 Artifact

 16、无需配置,默认就好,生成Artifact效果如图。点击 Apply,OK。

17、配置tomcat,点击 Add Configuration -> + -> Tomcat Server ->Local (小技巧:点击+后可直接输入搜索)

18、点击 Configuration 配置为自己的Tomcat,配置Tomcat界面,截图如下:

   

19、我这里是 Tomcat8.5。注意勾选 After Lauch,这样后面tomcat启动成功后会自动打开浏览器并跳转到对应网址

 20、点击 Depoyment -> + -> Artifact,添加我们刚刚配置的 Artifact

 

21、注意选择 spring-mvc-demo:war ,如图。点击Appy、OK。

 22、点击运行Tomcat

 23、启动tomcat成功后,target目录如下 (注意:lib文件夹下的jar包,有时候lib为空也可启动成功,与pom.xml文件的 <packaging>war</packaging> 有关)

24、启动成功,此时访问的是index.jsp的内容

 

25、访问 HelloController.java的内容

完整源码地址:

https://github.com/xiaoliangg/springboot-learning/tree/main/spring-mvc-demo

原文地址:https://www.cnblogs.com/xiaoliangyuu/p/15488138.html

如有疑问,可评论或github提issue,我尽量及时作答,谢谢!

原文地址:https://www.cnblogs.com/xiaoliangyuu/p/15488138.html