网站建设资讯

NEWS

网站建设资讯

快速入门SpringFramework5.X以及核心IOC和DI-创新互联

文章目录
  • 什么是spring框架?
  • 快速创建Spring项目
  • ApplicationContext.xml配置文件
  • spring的IOC设计思想
    • 什么是IOC(Inverse of Control控制反转)?
    • spring的依赖注入
    • 什么是DI(Dependency Injection依赖注入)?

创新互联建站自2013年创立以来,是专业互联网技术服务公司,拥有项目成都做网站、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元甘孜州做网站,已为上家服务,为甘孜州各地企业和个人服务,联系电话:18980820575什么是spring框架?

轻量级的 DI / IOC 和 AOP 容器的开源框架

spring的优点:
1、管理创建和组装对象之间的依赖关系
使⽤前:⼿⼯创建
使⽤后:Spring创建,⾃动注⼊

2、⾯向切⾯编程(AOP):可以解耦核⼼业务和边缘业务的关系
场景:⽤户调⽤下单购买视频接⼝,需要判断登录,拦截器是AOP思想的⼀种实现
使⽤前:代码写逻辑,每次下单都调⽤⽅法判断,多个⽅法需要判断登录则都需要登录⽅法判断
使⽤后:根据⼀定的⽅法或者路径规则进⾏判断是否要调⽤,降低代码耦合度

3、包含java⼤型项⽬⾥⾯常⻅解决⽅案 web层、业务层、数据访问层等

4、极其便利的整合其他主流技术栈,⽐如redis、mq、mybatis、jpa

5、社区庞⼤和活跃,在微服务、⼤数据、云计算都有对应的组件

快速创建Spring项目

1、Maven依赖

org.springframeworkspring-context5.2.5.RELEASEorg.springframeworkspring-core5.2.5.RELEASEorg.springframeworkspring-beans5.2.5.RELEASE

2、添加配置⽂件applicationContext.xml

3、创建javabean

package net.xdclass.sp.domain;

public class Video {
    private int id;
    private String title;

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
}

4、获取bean

public class App {

    public static void main(String [] args){

        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
        Video  video = (Video)applicationContext.getBean("video");
        System.out.println(video.getTitle());
    }
}

在这里插入图片描述

ApplicationContext.xml配置文件

bean标签中:
id属性:指定Bean的名称,在Bean被别的类依赖时使⽤
name属性:用于指定Bean的别名,如果没有id,也可以⽤name
class属性:用于指定Bean的来源,要创建的Bean的class类,需要全限定名

spring的IOC设计思想 什么是IOC(Inverse of Control控制反转)?

是⼀种设计思想将原本在程序中⼿动创建对象的流程,交由Spring框架来管理核心:把创建对象的控制权反转给Spring框架,对象的⽣命周期由Spring统⼀管理

把Spring IOC 当成⼀个容器,里面存储管理的对象称为Bean,类实例

将需要手动new类实例对象的部分交给容器来实现:
在这里插入图片描述

spring的依赖注入 什么是DI(Dependency Injection依赖注入)?

IOC容器在运⾏期间,动态地将对象某种依赖关系注⼊到对象之中,⽐如视频订单对象,依赖用视频对象

VideoOeder实体类中包含Video类对象:

public class VideoOrder {
    private int id;
    private String outTradeNo;
    private Video video;

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getOutTradeNo() {
        return outTradeNo;
    }
    public void setOutTradeNo(String outTradeNo) {
        this.outTradeNo = outTradeNo;
    }
    public Video getVideo() {
        return video;
    }
    public void setVideo(Video video) {
        this.video = video;
    }

    @Override
    public String toString() {
        return "VideoOrder{" +
                "id=" + id +
                ", outTradeNo='" + outTradeNo + '\'' +
                ", video=" + video +
                '}'+'\n';
    }
}

在applicationContext.xml配置文件添加bean并进行注入:

完成注入,运行查看结果:

ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
VideoOrder videoorder=(VideoOrder) applicationContext.getBean("videoorder");
System.out.println(videoorder.getOutTradeNo());
System.out.println(videoorder.getVideo().getTitle());

在这里插入图片描述

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站标题:快速入门SpringFramework5.X以及核心IOC和DI-创新互联
转载来源:http://njwzjz.com/article/heioi.html