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应用" ...
随机推荐
- 你真的了解try{ return }finally{}中的return?(转)
今天去逛论坛 时发现了一个很有趣的问题: 谁能给我我解释一下这段程序的结果为什么是:2.而不是:3 代码如下: class Test { public int aaa() { int x = 1; t ...
- LeetCode——Valid Sudoku
Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules. The Sudoku board could be ...
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(十) Configuration Application Block 到目前为止,我们使用的模块都是在同一个配置 ...
- java split小结(转)
2016.03.27下午参加华为机试,简单扫了一眼几个题的标题,选择了一道字符串问题,其实该题非常非常的简单,可以说是简单的不能再简单了,而且有很多种解法,上机时我选择了直接借用java提供的一些函数 ...
- Quasi-Newton Method--LBFGS
Quasi-Newton Method Quasi-Newton Method每一步计算过程中仅涉及到函数值和函数梯度值计算,这样有效避免了Newton Method中涉及到的Hessian矩阵计算问 ...
- poj1185炮兵阵地
#include <iostream> #include <cstdio> #include <cmath> #include <algorithm> ...
- 分布式MySQL数据库TDSQL架构分析
摘要:腾讯计费平台部为了解决基于内存的NoSQL解决方式HOLD平台在应对多种业务接入时的不足.结合团队在MySQL领域多年应用和优化经验,终于在MySQL存储引擎基础上,打造一套分布式SQL系统TD ...
- [置顶] 最优间隔分类器、原始/对偶问题、SVM的对偶问题——斯坦福ML公开课笔记7
转载请注明:http://blog.csdn.net/xinzhangyanxiang/article/details/9774135 本篇笔记针对ML公开课的第七个视频,主要内容包括最优间隔分类器( ...
- Net 高效开发
Net 高效开发之不可错过的实用工具 工欲善其事,必先利其器,没有好的工具,怎么能高效的开发出高质量的代码呢?本文为各ASP.NET 开发者介绍一些高效实用的工具,涉及SQL 管理,VS插件,内存 ...
- Android Volley 之自定义Request
转载标明出处:http://blog.csdn.net/lmj623565791/article/details/24589837 今天群里一哥们需要自定义Volley的Request的例子,于是产生 ...