zoukankan      html  css  js  c++  java
  • Spring学习总结-01

           既然要学习Spring,那我们就要了解什么是Spring,Spring是轻量级的JavaEE开源开发框架,Spring有两大核心:IOC(控制反转)和 AOP(面向切面编程),今天我们先来学习IOC(控制反转)

          所谓IOC(控制反转)简单来说就是将new 对象的控制权交给Spring去做,而不是程序员自己new 对象,IOC通过容器实现,将对象与对象进行解耦,Spring容器在初始化时先读取配置文件,根据配置文件(即XML文档)创建与组织对象存入容器中,程序使用时再从IOC容器取出需要的对象

          那我们要在XML文档配置什么呢,主要是配置Bean,Bean的定义信息和实现是分离的,Bean的定义主要是通过pojo定义类,而实现是在XML文档中通过具体的Bean来实现,下面我们来看一个例子:

    首先这是一个pojo的User类

    package xy.kc2021.spring01.pojo;
    
    public class User {
        private String name;
    
        public String getName() {
            return name;
        }
        
        public void setName(String name) {
            this.name = name;
        }
        
        public User(){
            System.out.println("User的无参构造");
        }
        
        public  void show(){
            System.out.println("name: "+name);
        }
        
    }

    在XML中我们可以通过Bean new一个User类的对象并注入name属性的值 ,这个过程相当于平时我们写的 User user = new User();    user.setName("哈哈");

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    
        <bean id="user" class="xy.kc2021.spring01.pojo.User">
            <property name="name" value="哈哈"></property>
        </bean>
    
    </beans>

    同时我们也可以通过读取XML中的Bean获得对象执行User类show()方法

    package xy.kc2021.spring01;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import xy.kc2021.spring01.pojo.User;
    
    public class Application {
        public static void main(String[] args) {
            ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
            User user = (User) applicationContext.getBean("user");
            user.show();
        }
    }
    

    首先通过读取配置文件,再通过getBean的方法获取Bean,最后Bean中获取user(User类的对象)

    最终输出结果为:

    调用了无参构造,并且执行show()方法,可见,User类对象user的创建、属性的装配交给了Bean,也就是对象的创建、管理被Spring控制并管理

    以后如果要实现不同的操作,只需要在XML配置文件中进行修改即可,不用修改程序。

    总结:所谓的IOC(控制反转),就是对象由Spring创建、管理、装配

  • 相关阅读:
    HelperC#常用的防sql注入的关键词检测
    工业自动化产线名词
    C#使用单例模式
    cmt焊接和mig焊区别
    数据库表命名规范
    UIImagePickerController类 照相 或者 从相册取相片 (iphone and ipad)
    UIActionSheet类 在 iphone和ipad 中的不同
    navigationBarrespondsToSelector方法 判断对象是否接受到了某个方法
    设置自定义UIButton的背景图片
    AVFoundation.framwork 及其 部分类的使用
  • 原文地址:https://www.cnblogs.com/yang2000/p/15259433.html
Copyright © 2011-2022 走看看