Java+Spring+Bean+注入方式

1、首先準備共享文件
調用方法Client端Client.java:

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Client {
    public static void main(String[] args) {
        //創建容器
        ClassPathXmlApplicationContext cac = new ClassPathXmlApplicationContext("service.xml");
        //獲取bean對象
        CustomerServiceImpl cs = (CustomerServiceImpl) cac.getBean("CustomerServiceImpl");
        //調用方法
        cs.saveCustomer();
    }
}

接口文件CustomerService.java:

public interface CustomerService {
    void saveCustomer();
}

2、構造函數方式注入:
Spring配置文件,Service.xml:

<?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="CustomerServiceImpl" class="CustomerServiceImpl">
        <constructor-arg name="name" value="zhangsan"></constructor-arg>
        <constructor-arg name="age" value="3"></constructor-arg>
    </bean>

</beans>

注入bean類文件:CustomerServiceImpl.java

public class CustomerServiceImpl implements CustomerService {
    private String name ;
    private Integer age;

    public CustomerServiceImpl(String name, Integer age) {
        this.name = name;
        this.age = age;
    }

    @Override
    public void saveCustomer() {
        System.out.println("CustomerServiceImpl-saveCustomer-" + name + "-" + age);
    }
}

3、set方法注入
Spring配置文件,Service.xml:

<?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="CustomerServiceImpl" class="CustomerServiceImpl">
    <property name="name" value="李四"></property>
    <property name="age" value="10"></property>
</bean>

</beans>

注入bean類文件:CustomerServiceImpl.java:

public class CustomerServiceImpl implements CustomerService {
    private String name ;
    private Integer age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    @Override
    public void saveCustomer() {
        System.out.println("CustomerServiceImpl-saveCustomer-" + name + "-" + age);
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章