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应用" ...
随机推荐
- SWT中的GridLayout(转)例子不错
GridLayout 是一个非常强大的布局管理器,它可以实现很多复杂的布局,名字中暗示它将所有控件放置在类似网格的布局中.^__^GridLayout 有两个构造函数. GridLayout的构造函数 ...
- shufe前辈名师
前辈名师 姓名 现职/原职 郭秉文 中国现代大学之父.国立东南大学校长.哥伦比亚大学教育学博士,该校第一任校长.为了纪念郭秉文先生,勉励优秀学子,郭夏瑜女士在上海财经大学等校设立了“郭秉文奖学金” 马 ...
- php-GD库的函数(二)
<?php //imagecopy — 拷贝图像的一部分粘贴到某图像上 /*bool imagecopy ( resource $dst_im , resource $src_im , int ...
- hdu 4472 Count (递推)
Count Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- html网页特殊符号代码
HTML特殊字符编码大全:往网页中输入特殊字符,需在html代码中加入以&开头的字母组合或以&#开头的数字.下面就是以字母或数字表示的特殊符号大全. ...
- ArcGIS SDE 10.1 for Postgresql 服务连接配置
去年写了ArcGIS 10.1 如何连接Postgresql 数据库(http://blog.csdn.net/arcgis_all/article/details/8202709)当时采用的也是Ar ...
- Python 的PyCurl模块使用
PycURl是一个C语言写的libcurl的python绑定库.libcurl 是一个自由的,并且容易使用的用在客户端的 URL 传输库.它的功能很强大,PycURL 是一个非常快速(参考多并发操作) ...
- EasyUI基础searchbox&progressbar(搜索框,进度条)
easyui学习的基本组成部分(八个部分)硕果仅存searchbox和pargressbar.tooltip该,有一点兴奋.本文将偏向searchbox和pargressbar做一个探讨.鉴于双方的内 ...
- 怎么确定你的CPU是否支持64位虚拟化
http://www.grc.com/securable.htm 第一个64位表示你的电脑最多支持多少位的系统,32或者64. 第二个表示你的硬件是否支持DEP?Yes,支持.No,不支持.OFF,表 ...
- enumerateObjectsUsingBlock、enumerateObjectsWithOptions、enumerateObjectsAtIndexes、makeObjectsPerfor使用
OC至 NSArray它提供了一个方便的遍历block,以下具体说明 第一.enumerateObjectsUsingBlock NSArray *array=@[@"aa",@& ...