Spring实战学习笔记-初知Spring

在学习任何一样事情前,我们都需要知道为何要学习他,他有什么优点?就像喜欢一个人一样,为何要喜欢他,一定是因为他身上的某个点戳中了你,所以才喜欢。

学习东西亦是如此,所以在学习Spring实战前,我们先了解下为何要学习Spring。

 

1.Spring是什么

一句话解释:Spring是一个全方位的应用程序框架

更详细的查看spring历史来源,可google

 

2.Spring的优点

最大优点是:简化开发(makes java simple)

细化优点(特性):

  • 基于POJO的轻量级和最小侵入型编程
  • 通过依赖注入和面向接口实现松耦合
  • 通过切面和惯例进行声明式编程
  • 通过切面和模版减少样板式代码

 

3.Spring的架构

  • A 表现层   web层    MVC是表现层的一个设计模型 
  • B 业务层  service层
  • C 持久层  dao层

 

4.Spring需要引入的依赖包

在pom中引入依赖时,往往是网上粘贴一堆依赖,但并不知道哪些到底需要引入,所以我们需要明确spring到底需要哪些jar包呢

这个图就很好的解释了我们到底需要哪些jar包,图中所有的矩形都对应一个jar包

下面我们一个一个来看:

1.Test

    <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>5.3.4</version>
            <scope>test</scope>
    </dependency>

在pom中引入依赖spring-test,可以看到该依赖引入了spring-core的jar包

 

2.Core Container

包含了beans,core,context和expression language这四个jar包

spring-core:依赖注入IoC与DI的最基本实现
spring-beans:Bean工厂与bean的装配
spring-context:spring的context上下文即IoC容器
spring-expression:spring表达式语言

以上均可单独引入,但spring-webmvc依赖中包含了以上依赖,所以可直接引入spring-webmvc

 

3.AOP

spring-aop:面向切面编程

spring-aspects:集成AspectJ
spring-instrument:提供一些类级的工具支持和ClassLoader级的实现,用于服务器
spring-instrument-tomcat:针对tomcat的instrument实现

    <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aop</artifactId>
            <version>5.3.4</version>
        </dependency>
    <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aspects</artifactId>
            <version>2.5.6</version>
        </dependency>


4.Data Access

spring-jdbc:jdbc的支持
spring-tx:事务控制
spring-orm:对象关系映射,集成orm框架
spring-oxm:对象xml映射
spring-jms:java消息服务

 

5.Web

spring-web:基础web功能,如文件上传
spring-webmvc:mvc实现
spring-webmvc-portlet:基于portlet的mvc实现
spring-struts:与struts的集成,不推荐,spring4不再提供

 

所以总结下来,当需要引入上面所有的jar包时,由于每个依赖又存在其他依赖,可引入如下依赖(data access不在范围中):


        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.3.4</version>
        </dependency>
        

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值