博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Maven创建一个Spring MVC Web 项目
阅读量:6935 次
发布时间:2019-06-27

本文共 7967 字,大约阅读时间需要 26 分钟。

使用Maven创建java web 项目(Spring MVC)用到如下工具:

1、Maven 3.2

2、IntelliJ IDEA 13

3、JDK 1.7

4、Spring 4.1.1 released

5、Tomcat7

6、Logback 1.0.13 日志输出组件

 

接下来开始演示如何用Maven模板创建web项目

1、使用maven-archetype-webapp模板快速创建web项目的骨架结构

打开控制台,进入到你想要创建web项目的目录,然后运行如下命令:

1 $ mvn archetype:generate -DgroupId=com.yanyd 2     -DartifactId=CounterWebApp 3     -DarchetypeArtifactId=maven-archetype-webapp 4     -DinteractiveMode=false

一个名为CounterWebApp的项目就被创建起来了,标准的web目录结构就会被自动创建,结构如下:

1 |____CounterWebApp2 | |____pom.xml3 | |____src4 | | |____main5 | | | |____resources6 | | | |____webapp7 | | | | |____index.jsp8 | | | | |____WEB-INF9 | | | | | |____web.xml

源码包java/com/yanyd并不会自动创建,需要我们自己手动创建,然后将在IDEA中将该目录变成src目录。

2、使用命令mvn idea:idea 把该项目变成IDEA支持的项目,然后导入中IDEA中进行编程。

接下来要在pom.xml文件中配置项目依赖的文件和编译、部署插件,内容如下:

1 
3
4.0.0
4
com.yanyd
5
CounterWebApp
6
war
7
1.0-SNAPSHOT
8
CounterWebApp Maven Webapp
9
http://maven.apache.org
10
11
1.7
12
4.1.1.RELEASE
13
1.2
14
4.11
15
1.0.13
16
1.7.5
17
18
19
20
junit
21
junit
22
${junit.version}
23
test
24
25 26
27
28
org.springframework
29
spring-core
30
${spring.version}
31
32
33
commons-logging
34
commons-logging
35
36
37
38 39
40
org.slf4j
41
jcl-over-slf4j
42
${jcl-over-slf4j.version}
43
44 45
46
ch.qos.logback
47
logback-classic
48
${logback.version}
49
50 51
52
org.springframework
53
spring-web
54
${spring.version}
55
56 57
58
org.springframework
59
spring-webmvc
60
${spring.version}
61
62 63
64
65
jstl
66
jstl
67
${jstl.version}
68
69 70
71
72
73
CounterWebApp
74
75 76
77
78
org.apache.maven.plugins
79
maven-compiler-plugin
80
3.2
81
82
${jdk.version} 83
${jdk.version}
84
85
86 87
88
89
org.apache.tomcat.maven
90
tomcat7-maven-plugin
91
2.2
92
93
94
http://localhost:8080/manager/text
95
Tomcat7Server
96
/CounterWebApp
97
98
99
100
101

3、编写源文件,测试Spring MVC框架是否正常,最终的文件结构如下:

1 |____pom.xml 2 |____src 3 | |____main 4 | | |____java 5 | | | |____com 6 | | | | |____yanyd 7 | | | | | |____controller 8 | | | | | | |____BaseController.java 9 | | |____resources10 | | | |____logback.xml11 | | |____webapp12 | | | |____WEB-INF13 | | | | |____mvc-dispatcher-servlet.xml14 | | | | |____pages15 | | | | | |____index.jsp16 | | | | |____web.xml

开始写Spring MVC控制类,BaseController.java:

1 package com.yanyd.controller; 2  3 import org.slf4j.Logger; 4 import org.slf4j.LoggerFactory; 5 import org.springframework.stereotype.Controller; 6 import org.springframework.ui.ModelMap; 7 import org.springframework.web.bind.annotation.PathVariable; 8 import org.springframework.web.bind.annotation.RequestMapping; 9 import org.springframework.web.bind.annotation.RequestMethod;10 11 /**12  * Created by Administrator on 15-1-31.13  */14 /*There must be a Controller annotation or the application will doesn't work .*/15 @Controller16 public class BaseController {17     private static int counter=0;18     private static final String VIEW_INDEX="index";19     private static final Logger logger= LoggerFactory.getLogger(BaseController.class);20 21     @RequestMapping(value = "/" ,method = RequestMethod.GET)22     public String welcome(ModelMap model){23         model.addAttribute("message","Welcome");24         model.addAttribute("counter",++counter);25         logger.debug("[Welcome counter :{}",counter);26         return VIEW_INDEX;//返回index.jsp27     }28 29     @RequestMapping(value = "/{name}" ,method = RequestMethod.GET)30     public String welcome(@PathVariable String name , ModelMap model){31         model.addAttribute("message","Welcome "+name);32         model.addAttribute("counter",++counter);33         logger.debug("[Welcome counter :{}",counter);34         return VIEW_INDEX;//返回index.jsp35     }36 }

有一点要注意的就是Controller注解一定写,否则部署后访问时会出现404,一直找不到问题在哪!

接着写Spring的配置文件,mvc-dispatcher-servlet.xml:

1 
9 10
11
12
13
/WEB-INF/pages/
14
15
16
.jsp
17
18
19

最后要在web.xml文件中把Spring框架集成进来并配置监听器:

1 
6 7
Counter Web Application
8 9
10
mvc-dispatcher
11
org.springframework.web.servlet.DispatcherServlet
12
1
13
14
15
mvc-dispatcher
16
/
17
18 19
20
contextConfigLocation
21
/WEB-INF/mvc-dispatcher-servlet.xml
22
23 24
25
org.springframework.web.context.ContextLoaderListener
26
27

为了避免我们的jsp文件被直接访问,需要在WEB-INF目录下创建一个pages目录,并把jsp文件放入里面,index.jsp内容如下:

1 2 3 

Maven + Spring MVC Web Project Example

4

Hello World!

5

Message:${message}

6

Counter:${counter}

7 8

为了让日志输出组件起作用,还需在resources目录下创建一个日志输出的配置文件logback.xml:

1 
2
3 4
5
6 7
8 %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n 9
10 11
12
13 14
16
17
18 19
20
21
22 23

4、部署web项目

方法1:mvn package,把生成的war文件部署到tomcat里。

方法2:mvn idea:idea,把项目转成支持IDEA的项目后直接在IDEA中部署。

方法3:mvn tomcat:run,如果已经在pom文件里配置了tomcat部署插件,直接运行该命令,会把项目部署到8080端口。

5、访问项目

http://localhost:8080/CounterWebApp/

http://localhost:8080/CounterWebApp/yanyd

 

如果内容正常输出,那么就是部署成功,项目结构也没问题!

转载于:https://www.cnblogs.com/zhaoyan001/p/7513929.html

你可能感兴趣的文章
HTML5--Video
查看>>
UVM中的regmodel建模(三)
查看>>
如何查看LoadRunner虚拟用户(vuser)类型
查看>>
oracle截取字符串区间段的一部分字符串
查看>>
Ubuntu Gnome 14.04.2 lts 折腾笔记
查看>>
前台的js对象数组传到后台处理。在前台把js对象数组转化为json字符串,在后台把json字符串解析为List<>...
查看>>
HTML目录
查看>>
【Hibernate学习笔记-5】@Formula注解的使用
查看>>
java ClassLoader static
查看>>
公司交换机arp 绑定操作
查看>>
东大oj-1511: Caoshen like math
查看>>
在.NET4.5项目中添加HttpClient引用的办法
查看>>
[Android]基于RxJava、RxAndroid的EventBus实现
查看>>
八排序算法
查看>>
.NET/MVC-ViewBag、ViewData、TempData区别
查看>>
Android开发之Bitmap.Config.RGB_565
查看>>
android 实现2张图片层叠效果
查看>>
BI项目记笔记索引
查看>>
OpenCV-CL: OpenCL加速计算机视觉技术
查看>>
用SignalR做类似QQ登录的应用
查看>>