Maven+Spring
Maven+Spring
关于Maven
Maven是一个用于项目构建的工具,通过它便捷的管理项目的生命周期。即项目的jar包依赖,开发,测试,发布打包。
做过.NET的人应该会联想到Nuget,是的Maven其实就是java的Nuget。最主要的是用来管理包,有了maven我们就不需要单独下载jar包,只需要在配置文件pom.xml中配置jar包的依赖关系,就可以自动的下载jar包到我们的项目中。这样有助于协同开发,自己下载包可能会有版本问题。
创建一个Maven项目
我使用的eclipse有自带的maven插件,因此直接创建就可以了。这里就不介绍如何安装maven了。如何安装maven请参考Eclipse安装Maven插件 但是我知道Eclipse 版本4以上的都自带Maven插件了,其他版本我不了解。
1、创建一个maven项目。File->New->Other->Maven会出现下面的界面
2、选择Maven Project,点击Next,出现项目类型选择,看你的项目,下面绿色箭头和橙色箭头分别对应的是一个Java Project和Jave web项目
3、我这边选择maven-archetype-quickstart做一个Java Project项目,点击Next,填写Group Id和Artifact Id,Version用默认的就可以了
4、点击Finish之后会项目就建好了。会出现下面类似的项目结构,最后又一个Pom.xml包管理的文件
编写一个Spring的项目
1、导入spring所需要的包,点击pom.xml文件出现下面的界面,选择Dependencies然后点击Add
2、点击Add之后会出现,在下面的查找文本框中输入你想要的包名就可以啦
我们spring项目需要这些jar:
org.springframework.aop
org.springframework.aspects
org.springframework.beans
org.springframework.context
org.springframework.context.support
org.springframework.core
org.springframework.expression
此外,为了打印信息,还需要一个Apache Commons Logging API,最新版是commons-logging-1.2
引入所需要的jar之后我们就可以开始第一个spring的项目了,在src/main/java目录下的com.test.first-maven包下新建HelloWorld.java
1
2
3
4
5
6
7
8
9
10
11
|
public class HelloWorld { private String name; public void setName(String name) { this .name = name; } public void printHello() { System.out.println( "Spring 3 : Hello ! " + name); } } |
你会发现com.test.first-maven下包含一个已经创建好的App.java的入口类,修改为
1
2
3
4
5
6
7
8
9
10
11
12
|
import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class App { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext( "SpringBeans.xml" ); HelloWorld obj = (HelloWorld) context.getBean( "helloBean" ); obj.printHello(); } } |
3、接下来,我们需要新建一个XML文件来配置bean,这个XML的作用是集中在一个地方,配置和管理所有的bean。有关bean可以参考Spring中bean的配置
新建一个Source Folder来放xml等静态文件src/main/resources,并新建SpringBeans.xml(名字可以随意取)
1
2
3
4
5
6
7
8
9
10
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans < bean id="helloBean" class="com.mkyong.core.HelloWorld"> < property name="name" value="huaizuo" /> </ bean > </ beans > |
ClassPathXmlApplicationContext类是用来获取src下的xml文件的,在App.java有调用,这样我们就创建完我们的第一个maven-spring了。
4、运行,右键点击项目> Run As > Java Application
。
1
|
Spring 3 : Hello ! huaizuo |
参考资料
关于Maven的介绍
http://www.cnblogs.com/xing901022/p/4170248.html
如何安装Maven
http://dead-knight.iteye.com/blog/1841658
如何用Maven下载jar
http://liukai.iteye.com/blog/973120
如何运行一个Maven的web项目
http://flashdream8.iteye.com/blog/1910092
关于spring
http://www.importnew.com/13246.html
Maven+Spring的更多相关文章
- IntelliJ IDEA上创建maven Spring MVC项目
IntelliJ IDEA上创建Maven Spring MVC项目 各软件版本 利用maven骨架建立一个webapp 建立相应的目录 配置Maven和SpringMVC 配置Maven的pom.x ...
- Maven+Spring+Hibernate+Shiro+Mysql简单的demo框架(二)
然后是项目下的文件:完整的项目请看 上一篇 Maven+Spring+Hibernate+Shiro+Mysql简单的demo框架(一) 项目下的springmvc-servlet.xml配置文件: ...
- maven,spring,mybatis集成错误
maven,spring,mybatis集成的时候单元测试junit测试没问题,但mvn jetty:run 就报错误 错误: org.apache.ibatis.binding.BindingExc ...
- maven Spring MVC项目
IntelliJ IDEA上创建maven Spring MVC项目 各软件版本 利用maven骨架建立一个webapp 建立相应的目录 配置Maven和SpringMVC 配置Maven的pom.x ...
- mybatis学习笔记(五) -- maven+spring+mybatis从零开始搭建整合详细过程(附demo和搭建过程遇到的问题解决方法)
文章介绍结构一览 一.使用maven创建web项目 1.新建maven项目 2.修改jre版本 3.修改Project Facts,生成WebContent文件夾 4.将WebContent下的两个文 ...
- 用Eclipse 搭建一个Maven Spring SpringMVC 项目
1: 先创建一个maven web 项目: 可以参照之前的文章: 用Maven 创建一个 简单的 JavaWeb 项目 创建好之后的目录是这样的; 2: 先配置maven 修改pom.xml & ...
- ssm maven spring AOP读写分离
ssm maven spring AOP读写分离 总体流程 配置最开始写在pom.xml文件,解析到数据库配置文件,再解析到spring配置文件. 自定义注解DataSource:通过这个注解并且在s ...
- mybatis学习笔记(六) -- maven+spring+mybatis从零开始搭建整合详细过程(下)
继续 mybatis学习笔记(五) -- maven+spring+mybatis从零开始搭建整合详细过程(上) 五.使用监听器启动Spring容器 1.修改pom.xml文件,添加Spring-we ...
- idea+maven+spring+cxf创建webservice应用(二)生成客户端程序
idea+maven+spring+cxf创建webservice应用(二)生成客户端程序,以上一篇为基础"idea+maven+spring+cxf创建webservice应用" ...
随机推荐
- cocos2dx-lua牧场小游戏(一)
环境: cocos2dx-3.0rc2, xcode5.0 一.lua项目建立參考 http://blog.csdn.net/daydayup_chf/article/details/249641 ...
- hdu 4836 The Query on the Tree(线段树or树状数组)
The Query on the Tree Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- java正則表達式的坑
java中正則表達式比較有意思,这里列举几个常见的坑 1.[]符号,中括号表示当中的数据都是或的关系 假设[\\w+]是匹配条件 abc能否够匹配的到呢? 首先\\w(注意这里没有中括号)表示a-z ...
- HDU 2451 Simple Addition Expression(组合数学)
主题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2451 Problem Description A luxury yacht with 100 pass ...
- bestcoder Round#52 1001(最短路+状压dp)
求从1点出发,走遍所有的点,然后回到1点的最小代价. 每个点可以走若干遍. 如果每个点只能走一遍,那么设dp[i][s]为走完s状态个点(s是状态压缩),现在位于i的最小花费. 然后枚举从哪个点回到原 ...
- Kinect的学习笔记发展(一)Kinect引进和应用
Kinect的学习笔记发展(一)Kinect引进和应用 zouxy09@qq.com http://blog.csdn.net/zouxy09 一.Kinect简单介绍 Kinectfor Xbox ...
- Windows Phone开发(20):当MediaElement和VideoBrush合作的时候
原文:Windows Phone开发(20):当MediaElement和VideoBrush合作的时候 前面说的那么多控件都是"静态"的,都是"哑吧"的,今天 ...
- WEB网站性能优化
最近做了一个WEB现场.幸运的是,一开始.但后来越来越慢,特别是在调试模式,,这肯定是我们的代码有问题.但是即使业务不是非常复杂的也非常慢,我们就想当然的觉得我们的代码没问题,可最后证明还是我们的代码 ...
- Nginx+Varnish
Nginx+Varnish 实现动静分离,为服务器分流,降低服务器负载 相必大家在看加快网站响应速度方面的文章时,都提过这么一条:动静分离.那怎样实现动静分离呢,这里笔者就亲自搭建相关服务实现动静分离 ...
- 客户端上显示csdn上的各类别下的的文章列表 (制作csdn app 三)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/23597229 今天将在Android 使用Fragment,ViewPagerI ...