Spring框架


优点

1、非侵入式开发

2、方便解耦,简化开发

3、支持AOP

4、支持声明式的事务处理

5、方便程序的测试

6、方便集成各种优秀框架

7、降低JAVAEE API的使用难度

体系结构

采用了分层框架,一系列的功能要素被分成20个模块,又把这20个模块分成了四个部分:1、核心模块;2、数据处理;3、web;4、其他

1、核心容器

Beans:提供了BeanFactory,spring将管理对象成为Bean

Core:提供了Spring框架的基本组成部分,包括IoC和DI功能。IoC控制反转,DI

Context:建立再Core和Beans模块的基础上,他是访问,定义以及配置的任何对象的媒介

SpEL:Spring3.0之后新增的模块是运行时查询和操作对象的强大的表达式语言

2、数据处理

JDBC:提供了一个JDBC的一个抽象层的一个封装,大幅度减少再开发过程中对数据库操作的编码

ORM:对象关系映射:对流行的关系对象映射API,包括JPA,JDO和Hibernate提供了集成层支持

oxm: 提供了一个支持对象/XML映射层的抽象层实现,如JAXB,Castor,XMLBeans,JiBX和XStream

JMS: 指java信息床底服务,包含使用和产生信息的特性,自4.1版本之后支持域Spring-message模块集成

Transaction:支持对实现特殊接口以及所有POJO类的编程和声明式的事务管理

3、Web

Servlet:也称Spring-webmvc模块,包含Spring模型-视图-控制器(MVC)和REST Web Services实现的Web程序

Web:提供了基本的Web开发集成特性,如:文件上传,使用servlet监听器来初始化IoC容器以及Web应用上下文。

portlet:提供了再protlet环境中使用MVC实现,类似于Servlet模块的功能

4、其他模块

AOP:提供了面向切面编程实现,允许定义方法拦截器和切入点,将代码按照功能进行分离,降低耦合性

Aspects:提供了与AspectJ的集成功能,ApsectJ是一个功能强大且成熟的面向切面编程(AOP)框架

Test:提供了单元测试和集成测试的支持

项目搭建

Spring项目创建步骤及可能的错误

狂神说java

ioc本质

无论怎么增加接口事项类,主动权在用户,用户选择调用什么

# userServiceImpl
public class userServiceimpl implements userService{
    private userdao userdao;
    //利用set进行动态值的注入
    public void setUserdao(userdao userdao) {
        this.userdao = userdao;
    }
    @Override
    public void getuser() {
        userdao.getuser();
    }
}

# mytest
public class mytest {
    public static void main(String[] args) {
        //用户实际调用的是业务层,dao层他们不接触
        userServiceimpl userServiceimpl=new userServiceimpl();
        userServiceimpl.setUserdao(new usermysqlimpl());
        userServiceimpl.getuser();
        
    }
}

HelloSpring


文章作者: 毛豆不逗比
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 毛豆不逗比 !
  目录
{% include '_third-party/exturl.swig' %} {% include '_third-party/bookmark.swig' %} {% include '_third-party/copy-code.swig' %} + {% include '_custom/custom.swig' %}