Spring基础:快速入门spring(1):基础概念

这里写图片描述

作为流行了10年以上的老将,spring依然精神矍铄,影响不减。本文将对spring很基础的概念进行介绍以及为学习spring最核心和基础的知识作环境搭建的准备。

Spring官网

http://docs.spring.io/

简介

Spring为JAVA企业级应用提供了一个较为复杂框架流行框架。spring到底能做什么,或者说spring现在能做什么?

这里写图片描述

除了spring framework之外还有spring boot/spring data/spring cloud/… 快接近无所不包了。已经非常复杂和活跃。

这里写图片描述

Spring framework

就像上面提到的那样,Spring有很多project(http://spring.io/projects),
spring framework只是其中的一个(http://projects.spring.io/spring-framework/)。

API & Reference

目前Current GA 是4.3.4,对应的API和Reference如下。作为第一参考资料,碰到问题的时候Reference -〉API的顺序进行查询。

项目详细地址
APIhttp://docs.spring.io/spring/docs/current/javadoc-api/
Referencehttp://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/

工具

工欲善其事,必先利其器。可以使用STS/NeatBean/IDEA直接下载来使用即可。

STS

spring官方推荐,对工具没有特别的喜好,可以使用STS。其本身就是spring在Eclipse上简单组装的。

项目详细地址
STShttp://spring.io/tools/sts/all

IDEA

IDEA是收费的软件,但是可以使用其社区版,基础功能都已经包含,是很多java程序员的最爱。

Eclipse

很多人已经对Eclipse有了很多自定义的设定,对他们来说,spring只是很小的一部分。而实际项目中的开发更为如此,所以本文使用Eclipse中更新STS插件的方式进行安装。

Eclipse 4.6 Neon

项目详细地址
Neonhttps://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/neon/1a/eclipse-jee-neon-1a-win32-x86_64.zip

更新方式

项目详细地址
sts插件http://dist.springsource.com/release/TOOLS/update/e4.6/

Maven/Gradle

使用Maven或者Gradle管理依赖关系非常的方便,如果你还是习惯于使用ant,那也可以,但是ant不能直接提供依向Maven或者Gradle那样的依赖关系的自动管理的功能。比如4.3.4的简单地spring的依赖关系可以写成如下所示:

Maven dependency

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>4.3.4.RELEASE</version>
    </dependency>
</dependencies>

Gradle Dependency

dependencies {
    compile 'org.springframework:spring-context:4.3.4.RELEASE'
}

这些在Spring的Reference中都可轻松查询到(https://projects.spring.io/spring-framework/

IOC & DI

IOC和DI基本上是一个意思,在spring最初引入的时候,把这种控制的方式称为IoC(Inversion of Control)。但是后来Martin Fowler等认为其实没有反转任何事情,其做的事情只是将注入了依赖关系所以称之为Dependency Injection,个人认为文字游戏的成份稍多。
A类的对象通过调用B类对象的方法来实现某一功能,在spring中是可以通过Injection的方式来实现的。作为入门者需要理解的是如果没有IOC应该怎么做呢,在Spring中被称为Dependency的可能就是一个简单的属性或者方法参数等等等,简单地来说,通过调用setter方法或者构造函数等等,这个就是IOC/DI方式。而通过只在Meta数据中描述实际的类的依赖关系,spring负责把这些拧在一起,同时负责管理其lifecycle,解放了不少的工作,提高了开发的效率。

环境准备

为了更加清楚,使用Eclipse直接倒入spring的库的方式。熟悉的可以直接跳过。

下载spring库

项目详细地址
libhttp://repo.spring.io/release/org/springframework/spring/
目前最新版本http://repo.spring.io/release/org/springframework/spring/4.3.4.RELEASE/

准备步骤

Step 1:使用Eclipse创建一个Java项目
Step 2:创建一个lib目录
Step 3:将上面下载下来的spring的库文件全部拷贝到lib目录中
Step 4:在项目上右键->属性后将lib文件夹下的文件全部加入

  • 35
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值