Spring实例化bean

一笑奈何 提交于 2020-02-13 08:13:38

package com.itany.test;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

编写配置文件beans.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-2.0.xsd">
<!-- id和name都能为bean取名,但是id不能包含特殊字符,name可以,因为id属性属于xml文档的属性
如果不包含特殊字符,建议使用id-->

<!--class为要创建的实现类-->
<bean id="personService" class="com.itany.service.impl.PersonServiceImpl"/>
</beans>

编写接口IPersonService 

package com.itany.service;

public interface IPersonService {

void save();
}

编写实现类PersonServiceImpl 

package com.itany.service.impl;

import com.itany.service.IPersonService;

public class PersonServiceImpl implements IPersonService {

public void save(){
System.out.println("你好");
}
}

测试,在控制台输出“你好”就表示成功

import com.itany.service.IPersonService;

import junit.framework.TestCase;

public class SpringTest extends TestCase {

//spring提供的
@Test
public void test1(){
ApplicationContext act=new ClassPathXmlApplicationContext("beans.xml");
IPersonService personService =(IPersonService) act.getBean("personService");
personService.save();
}
@Test
//自定义的
public void test2(){
ClassPathXmlApplicationContextDemo cpa=new ClassPathXmlApplicationContextDemo("src/beans.xml");
IPersonService personService=(IPersonService) cpa.getBean("personService");
personService.save();
}
}

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!