eclipse java 实例化_在eclipse中配置一个简单的spring入门项目

本文介绍了如何在Eclipse中配置一个简单的Spring入门项目,讲解了Spring的核心——控制反转(IoC)和面向切面(AOP)概念,并通过实例展示了如何创建接口、实现类,以及配置XML文件进行对象注入。
摘要由CSDN通过智能技术生成

spring是一个很优秀的基于Java的轻量级开源框架,为了解决企业级应用的复杂性而创建的,spring不仅可用于服务器端开发,从简单性、可测试性和松耦合性的角度,任何java应用程序都可以利用这个思路进行开发,Spring的核心就是控制反转(IoC)和面向切面(AOP),总的来说,Spring是一个分层的Java轻量级框架

所谓控制反转就是利用某种技术实现低耦合,对象之间相互的依赖关系是通过被动的方式传递进来,而不是对象主动进行另外对象的使用和查找,就是说控制权交给了容器,在初始化的时候,容器将实例化好的对象不用请求就主动传递过来,开发过程中不用进行任何的实例化对象就可以使用对象的方法,使用起来也感觉更加的轻松,所有的对象在spring中都是一个bean,spring提供了一种完善的javabean的依赖管理,实际上就是常说的依赖注入,是通过依赖注入的方式实现了控制反转的操作

面向切面就是通过分离应用程序的业务逻辑和系统级服务,进行高内聚性的开发,应用对象只完成自己该完成的业务逻辑操作,其他的完全不必考虑,例如系统日志或其他事务等系统服务级操作对象完全不必关心,这样模块化更加清晰,更加适用于逻辑复杂的业务系统

刚接触spring时会出现很多不好理解的概念,下面从一个最简单的例子开始,进入spring的学习,让spring更加的形象

首先去spring官网下载spring framework框架,官网地址就是spring.io,一个非常简洁的页面

dc48ad766eba0ff3a44715ed5de66b8f.png

然后点击导航栏的PROJECTS,看到一些比较大块的项目,单击SPRING FRAMEWORK

c0f156c7b7e7c22c2832f0ced6f13166.png

然后就进入了spring framework的首页,网址是http://projects.spring.io/spring-framework/,向下拉右面有一些介绍文档点击超链接就可以,或者点击下面的"the modules section fo the reference documentation"超链接查看文档

3ddb46adf7d6812a33ed9c0cffa459c2.png

然后,就看到了很有名的一张图片就是spring framework框架的架构原理图

5b21806da1d39e49d9902a59310c877f.png

通过这张图可以清楚的看出spring的大体构成,继续下拉页面,点击超链接:http://repo.spring.io/release/org/springframework/spring/

f4335fc40b65b1f1ded636e6cf32f083.png

这个就是最后的下载地址了,里面有所有的历史版本,自己可以根据需要选择下载,

7ece7cb4d573fbaa7dcd29cf59e176c8.png

我这里下载的是最新的spring framework 4.2.4完整版本:spring-framework-4.2.4.RELEASE-dist.zip,也就是第一个,下载之后解压出来即可

112ee68ee468b8ceb2e184f051bb05ea.png

解压好之后,打开下面的libs目录,这里面就是spring framework所有的jar包了,我们打开eclipse建立一个项目,普通项目或者web项目都可以

然后,我们复制必要的jar包,放到项目的某一个指定目录下或者web项目的lib目录下,需要的jar包如下图:

a682caa3e5437c633aa5f4aa732b78e1.png

这些就是项目所必须的jar包,需要扩展功能可以根据实际需要导入,复制之后如果是web项目会自动导入到项目,如果是普通项目则需要Build Path导入一下就可以使用了,其中junit-4.1.0.jar不是必须的,这只是单元测试所需要的一个jar包;commons-logging-1.2.jar项目中是没有的,它是Apache的日志管理工具,spring为了所有的java应用程序进行统一的日志接口管理,所以需要下载commons-logging.jar这个包,下载地址是:http://commons.apache.org/proper/commons-logging/index.html,进入后点击Download下载就行,然后和spring的包一起导入

包都导入完毕了,接下来实现一个很简单的功能,我们建立一个接口,实现的就是输出一句话,代码如下:

1 packagenet.zengzhiying.spring;2

3 public interfaceIHelloMessage {4 publicString sayHello();5 }

有两个类分别实现这个接口,分别返回中文的"大家好!"和英文的"HelloWorld!",代码如下:

1 packagenet.zengzhiying.spring;2

3 public class HelloChina implementsIHelloMessage {4

5 @Override6 publicString sayHello() {7 return "大家好!";8 }9

10 }

1 packagenet.zengzhiying.spring;2

3 public class HelloWorld implementsIHelloMessage {4

5 @Override6 publicString sayHello() {7 return "HelloWorld!";8 }9

10 }

按照一般的使用,我们会分别实例化对象调用里面的方法使用,或者利用多态的概念通过接口来统一实例化对象使用里面的方法,其实有了spring就不用了,我们现在建立一个实体的类,用来放置接口实例化出的对象,

1 packagenet.zengzhiying.spring;2

3 public classPerson {4 privateIHelloMessage helloMessage;5

6 publicPerson() {7

8 }9

10 //带参构造器注入

11 publicPerson(IHelloMessage helloMessage) {12 this.helloMessage =helloMessage;13 }14

15 publicIHelloMessage getHelloMessage() {16 returnhelloMessage;17 }18

19 public voidsetHelloMessage(IHelloMessage helloMessage) {20 this.helloMessage =helloMessage;21 }22

23 publicString sayHello() {24 return this.helloMessage.sayHello();25 }26

27 }

这个类就是一个Bean,一般的规范就是属性私有,并且设置get/set方法,分别有无参的和带参的构造方法,方便使用构造器进行对象的注入,这些类编写完了,然后我们在项目根目录下编写一个配置文件helloMessage.xml,就是这个核心的配置文件,交代了spring应该怎么样对容器中的对象进行管理,所以说这个xml配置文档是spring的最重要的部分之一,我们配置代码如下:

1 <?xml version="1.0" encoding="UTF-8"?>

2 "http://www.springframework.org/dtd/spring-beans.dtd">

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

除了通用的头部声明外,所有的配置代码都写到里面,就是我们需要控制反转的所有类,然后后面需要向Person中进行对象的注入,可以用过get/set方法进行注入,也可以通过构造方法进行注入,name就是注入的属性名,ref就是需要将哪个类的实例化对象注入进去,这样就完成了简单的配置,也不难理解

接下来我们配置主类,用来执行相应的方法,代码如下:

1 packagenet.zengzhiying.spring;2

3 importorg.springframework.beans.factory.BeanFactory;4 importorg.springframework.beans.factory.xml.XmlBeanFactory;5 importorg.springframework.core.io.FileSystemResource;6 importorg.springframework.core.io.Resource;7

8 public classMain {9

10 public static voidmain(String[] args) {11 //引入配置文件

12 Resource r = new FileSystemResource("helloMessage.xml");13 //加载配置文件

14 BeanFactory f = newXmlBeanFactory(r);15 //获取Person实例

16 Person person = (Person) f.getBean("person");17 String s =person.sayHello();18 System.out.println(s);19 }20

21 }

现在只需要引入并加载配置文件,调出bean对象,然后就可以任意使用所有的类中的方法了,可以通过注入不同的类实现不同的操作,结果如下:

481894947def657d44a436498c913e6b.png

同样的,现在我们也可以通过注入HelloChina类来输出大家好!实现起来也比较简单

以上就是一个简单的spring初学小例子,体现了依赖注入的方式和控制反转的思想,spring让复杂应用的开发变得清晰简单了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值