[转载]架构指南 : Java1.7+Eclipse luna + Maven 3.2.5 +spring 4.1.4

简介:

1、 环境配置

a)         Java 1.7

b)         Eclipse luna

c)         Maven3.2.5

d)         spring 4.1.4

2、 创建maven工程

a)         打开eclipse,file->new->project->Maven->Maven Project

 

b)         下一步

 

c)         选择创建的工程为webapp,下一步

 

d)         填写项目的group id和artifact id。一般情况下,group id写域名的倒序,artifact id写项目名称即可。最后点完成。

 

e)   最初建好后,项目目录结构如下

 

f)  一般的项目目录中,在java Resources目录下,还有src/main/java,src/main/test/java,src/main/test/resources这三个source folder,需要手动创建。在下面的步骤中会讲到如何补齐这三个目录。

 

3、 修改项目基本设置

a)    右键此项目名称->Properties->Java Build path,点击source标签。

 

b)  提示 hello/src/main/java (missing)和hello/src/test/java (missing)。一般的项目目录中,在java Resources目录下,还会有src/main/test/resources这个source folder。将missing的先删除,再重新创建,缺少的直接创建。点右键操作按键进行删除和添加。

 

c)  修改完整,效果如下图

 

d)         接下来再修改libraries的配置,jre使用1.7版本。选中JRE System Library->edit ,更换版本。

 

e)         再修改一下order and export里的配置,主要是调整这四个目录的显示顺序,调为自己喜欢的顺序即可

 

f)          接下来再修改project facets,先将java修改为1.7。

 

Dynamic Web Module无法在这里直接修改为3.0,需要打开工程目录下有一个.settings文件夹,打开org.eclipse.wst.common.project.facet.core.xml,做如下修改:

<installed facet="jst.web" version="3.0"/>

 

重启eclipe就可以看到更改生效了。

4、 Eclipse中maven的配置

a)           window->properties->maven,勾选 download repository index updates on startup

 

  

5、 简单Spring mvc的配置

a)         打开项目中的pom.xml文件,并点击Dependencies标签,点击add添加新的依赖

b)         如果知道依赖的group id和artifact id,可以直接填写,如果不清楚,可以输入关键字进行查询,或是到http://search.maven.org网站查询

 

c)         需要添加的依赖有:spring-webmvc,版本为4.1.4. RELEASE。完整的POM.XML文件内容如下:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
< 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.springstudy</ groupId >
 
   < artifactId >study</ artifactId >
 
   < packaging >war</ packaging >
 
   < version >0.0.1-SNAPSHOT</ version >
 
   < name >study Maven Webapp</ name >
 
   < url >http://maven.apache.org</ url >
 
   < properties >
 
                    < spring.version >4.1.4.RELEASE</ spring.version >
 
          </ properties >
 
   < dependencies >
 
     < dependency >
 
       < groupId >junit</ groupId >
 
       < artifactId >junit</ artifactId >
 
       < version >3.8.1</ version >
 
       < scope >test</ scope >
 
     </ dependency >
 
     < dependency >
 
     < groupId >org.springframework</ groupId >
 
     < artifactId >spring-webmvc</ artifactId >
 
     < version >${spring.version}</ version >
 
     </ dependency >
 
   </ dependencies >
 
   < build >
 
     < finalName >study</ finalName >
 
   </ build >
 
</ project >

  

d)         打开src/main/webapp/WEB-INF/web.xml文件,最终修改如如下内容:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<? xml  version="1.0" encoding="UTF-8"?>
 
< web-app  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 
          xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
 
          xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
 
          id="study" version="2.5">
 
          < display-name >Archetype Created Web Application</ display-name >
 
          < description >sprintMVC环境搭建</ description >
 
          <!-- 加载Spring配置文件 -->
 
          < context-param >
 
                    < param-name >contextConfigLocation</ param-name >
 
                    < param-value >classpath:/configs/spring-*.xml</ param-value >
 
          </ context-param >
 
          <!-- Spring监听 -->
 
          < listener >
 
                    < listener-class >org.springframework.web.context.ContextLoaderListener</ listener-class >
 
          </ listener >
 
          <!-- Spring MVC配置 -->
 
          < servlet >
 
                    < servlet-name >Dispatcher</ servlet-name >
 
                    < servlet-class >org.springframework.web.servlet.DispatcherServlet</ servlet-class >
 
                    <!-- 自定义spring mvc的配置文件名称和路径 -->
 
                    < init-param >
 
                             < param-name >contextConfigLocation</ param-name >
 
                             < param-value >classpath:configs/spring-servlet.xml</ param-value >
 
                    </ init-param >
 
                    < load-on-startup >1</ load-on-startup >
 
          </ servlet >
 
          <!-- spring mvc 请求后缀 -->
 
          < servlet-mapping >
 
                    < servlet-name >Dispatcher</ servlet-name >
 
                    < url-pattern >/</ url-pattern >
 
          </ servlet-mapping >
 
          < welcome-file-list >
 
                    < welcome-file >index.jsp</ welcome-file >
 
          </ welcome-file-list >
 
</ web-app >

  

e)         在Java Resources/scr/main/resources目录下,创建configs文件夹,以便存放在web.xml中声明的配置路径

 

f)          在Java Resources/scr/main/resources/configs目录下,创建spring-servlet.xml,内容如下:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?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:jee= "http://www.springframework.org/schema/jee"
 
          xmlns:context= "http://www.springframework.org/schema/context"  xmlns:p= "http://www.springframework.org/schema/p"
 
          xmlns:mvc= "http://www.springframework.org/schema/mvc"  xmlns:util= "http://www.springframework.org/schema/util"
 
          xsi:schemaLocation="http: //www.springframework.org/schema/beans
 
                                            http: //www.springframework.org/schema/beans/spring-beans-4.1.xsd
 
                                                    http: //www.springframework.org/schema/context
 
                                                    http: //www.springframework.org/schema/context/spring-context-4.0.xsd
 
                                                    http: //www.springframework.org/schema/jee
 
                                                         http: //www.springframework.org/schema/jee/spring-jee-4.1.xsd
 
                                                         http: //www.springframework.org/schema/mvc
 
                                                    http: //www.springframework.org/schema/mvc/spring-mvc-4.1.xsd
 
                                                    http: //www.springframework.org/schema/util
 
                                                    http: //www.springframework.org/schema/util/spring-util-4.1.xsd">
 
  
 
         
 
          <context:annotation-config/>
 
          <context:component-scan base- package = "com.springstudy.controller"  />
 
          <mvc:annotation-driven />
 
         
 
          <mvc:resources mapping= "/styles/**"  location= "/styles/"  />
 
          <mvc:resources mapping= "/scripts/**"  location= "/scripts/"  />
 
          <mvc:resources mapping= "/images/**"  location= "/images/"  />
 
  
 
          <bean
 
                    class = "org.springframework.web.servlet.view.InternalResourceViewResolver" >
 
                    <property name= "prefix"  value= "/WEB-INF/views/"  />
 
                    <property name= "suffix"  value= ".jsp"  />
 
          </bean>
 
</beans>

  

 

g)         创建controller包,在spring-servlet.xml文件中,<context:component-scan base-package="com.springstudy.controller" />已经指定了路径

 

h)         在src/main/webapp/WEB-INF目录下,创建views文件,在spring-servlet.xml文件中,<property name="prefix" value="/WEB-INF/views/" />已指定了视图文件路径

 

i)           创建第一个controller文件HelloController.java,完整的文件内容如下:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package  com.springstudy.controller;
 
  
 
import  org.springframework.stereotype.Controller;
 
import  org.springframework.web.bind.annotation.RequestMapping;
 
import  org.springframework.web.servlet.ModelAndView;
 
  
 
@Controller
 
public  class  HelloController {
 
  
 
          @RequestMapping ( "/hello" )
 
          public  ModelAndView hello(){
 
                    ModelAndView mv = new  ModelAndView();
 
                    mv.addObject( "spring" "spring mvc" );
 
                    mv.setViewName( "hello" );
 
                    return  mv;
 
          }
 
}

  

j)           添加src/main/webapp/WEB-INF/views/hello.jsp文件,内容如下:

1
2
3
4
5
6
7
8
9
10
<! DOCTYPE  html>
 
< html >
          < head >
                    < meta  charset="utf-8">
                    < title >sprint hello</ title >
          </ head >
          < body >hello ${spring}!
          </ body >
</ html >

  

6、 将项目发布到tomcat

a)         在eclipse中添加tomcat 7

b)         在tomcat添加完成后,双击,设置overview选项卡中Server Locations的设置。

                      i.    将 Use Tomcat installation(takes control of Tomcat installation)选中

                      ii.    将Deploy path的内容改为:webapps

                      iii.    保存

c)         右键tomcat,Add and Remove… ,添加study

 

d)         启动tomcat

 

e)         浏览器打开http://localhost:8080/study/hello,访问成功!如下图

 

 

本文转自二郎三郎博客园博客,原文链接:http://www.cnblogs.com/haore147/p/5473744.html,如需转载请自行联系原作者
相关文章
|
9天前
|
Cloud Native Java 对象存储
面向未来的架构设计:Spring Cloud和Netflix OSS在云原生环境下的发展趋势
展望未来,随着5G、边缘计算等新技术的兴起,微服务架构的设计理念将会更加深入人心,Spring Cloud和Netflix OSS也将继续引领技术潮流,为企业带来更为高效、灵活且强大的解决方案。无论是对于初创公司还是大型企业而言,掌握这些前沿技术都将是在激烈市场竞争中脱颖而出的关键所在。
22 0
|
20天前
|
缓存 前端开发 Java
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
Soring Boot的起步依赖、启动流程、自动装配、常用的注解、Spring MVC的执行流程、对MVC的理解、RestFull风格、为什么service层要写接口、MyBatis的缓存机制、$和#有什么区别、resultType和resultMap区别、cookie和session的区别是什么?session的工作原理
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
|
20天前
|
缓存 Java 数据库
【Java面试题汇总】Spring篇(2023版)
IoC、DI、aop、事务、为什么不建议@Transactional、事务传播级别、@Autowired和@Resource注解的区别、BeanFactory和FactoryBean的区别、Bean的作用域,以及默认的作用域、Bean的生命周期、循环依赖、三级缓存、
【Java面试题汇总】Spring篇(2023版)
|
10天前
|
人工智能 开发框架 Java
重磅发布!AI 驱动的 Java 开发框架:Spring AI Alibaba
随着生成式 AI 的快速发展,基于 AI 开发框架构建 AI 应用的诉求迅速增长,涌现出了包括 LangChain、LlamaIndex 等开发框架,但大部分框架只提供了 Python 语言的实现。但这些开发框架对于国内习惯了 Spring 开发范式的 Java 开发者而言,并非十分友好和丝滑。因此,我们基于 Spring AI 发布并快速演进 Spring AI Alibaba,通过提供一种方便的 API 抽象,帮助 Java 开发者简化 AI 应用的开发。同时,提供了完整的开源配套,包括可观测、网关、消息队列、配置中心等。
535 5
|
21天前
|
Java 数据库连接 API
【Java笔记+踩坑】Spring Data JPA
从常用注解、实体类和各层编写方法入手,详细介绍JPA框架在增删改查等方面的基本用法,以及填充用户名日期、分页查询等高级用法。
【Java笔记+踩坑】Spring Data JPA
|
21天前
|
Java 数据库连接 Maven
【Java笔记+踩坑】Maven高级
分模块开发、依赖传递与冲突问题、 可选依赖和排除依赖、聚合和继承、属性、多环境配置与应用、私服安装和使用
【Java笔记+踩坑】Maven高级
|
21天前
|
Java 数据库连接 数据格式
【Java笔记+踩坑】Spring基础2——IOC,DI注解开发、整合Mybatis,Junit
IOC/DI配置管理DruidDataSource和properties、核心容器的创建、获取bean的方式、spring注解开发、注解开发管理第三方bean、Spring整合Mybatis和Junit
【Java笔记+踩坑】Spring基础2——IOC,DI注解开发、整合Mybatis,Junit
|
28天前
|
缓存 Java 应用服务中间件
随着微服务架构的兴起,Spring Boot凭借其快速开发和易部署的特点,成为构建RESTful API的首选框架
【9月更文挑战第6天】随着微服务架构的兴起,Spring Boot凭借其快速开发和易部署的特点,成为构建RESTful API的首选框架。Nginx作为高性能的HTTP反向代理服务器,常用于前端负载均衡,提升应用的可用性和响应速度。本文详细介绍如何通过合理配置实现Spring Boot与Nginx的高效协同工作,包括负载均衡策略、静态资源缓存、数据压缩传输及Spring Boot内部优化(如线程池配置、缓存策略等)。通过这些方法,开发者可以显著提升系统的整体性能,打造高性能、高可用的Web应用。
58 2
|
9天前
|
Cloud Native Java 对象存储
揭秘微服务架构之争:Spring Cloud与Netflix OSS巅峰对决,谁将称霸弹性云原生时代?
近年来,微服务架构成为企业应用的主流设计模式。本文对比了两大热门框架Spring Cloud和Netflix OSS,探讨其在构建弹性微服务方面的表现。Spring Cloud依托Spring Boot,提供全面的微服务解决方案,包括服务注册、配置管理和负载均衡等。Netflix OSS则由一系列可独立或组合使用的组件构成,如Eureka、Hystrix等。两者相比,Spring Cloud更易集成且功能完善,而Netflix OSS则需自行整合组件,但灵活性更高。实际上,两者也可结合使用以发挥各自优势。通过对两者的对比分析,希望为企业在微服务架构选型上提供参考。
29 0
|
2月前
|
消息中间件 Kafka Java
Spring 框架与 Kafka 联姻,竟引发软件世界的革命风暴!事件驱动架构震撼登场!
【8月更文挑战第31天】《Spring 框架与 Kafka 集成:实现事件驱动架构》介绍如何利用 Spring 框架的强大功能与 Kafka 分布式流平台结合,构建灵活且可扩展的事件驱动系统。通过添加 Spring Kafka 依赖并配置 Kafka 连接信息,可以轻松实现消息的生产和消费。文中详细展示了如何设置 `KafkaTemplate`、`ProducerFactory` 和 `ConsumerFactory`,并通过示例代码说明了生产者发送消息及消费者接收消息的具体实现。这一组合为构建高效可靠的分布式应用程序提供了有力支持。
85 0

推荐镜像

更多
下一篇
无影云桌面