springIOC--学习和理解02--在容器中直接注册和生成并使用bean实例,完成bean之间的引用

1 项目结构如下

在这里插入图片描述
这里,业务层的UserService将引用dao层的UserDao组件

2 具体代码如下

//UserDao接口
package com.fhzheng.demo.dao;

public interface UserDao {

	public String getUserById(Integer id);
}
//UserDao实现
package com.fhzheng.demo.dao.impl;

import com.fhzheng.demo.dao.UserDao;

public class UserDaoImpl implements UserDao {

	@Override
	public String getUserById(Integer id) {
		String user="这是一个用户信息,他的编号是"+id;
		return user;
	}

}
//UserService接口
package com.fhzheng.demo.service;

public interface UserService {

	public String getUserById(Integer id);
}
//UserService实现
package com.fhzheng.demo.service.impl;

import com.fhzheng.demo.dao.UserDao;
import com.fhzheng.demo.service.UserService;

public class UserServiceImpl implements UserService {

	private UserDao userDao;
	
	
	public UserDao getUserDao() {
		return userDao;
	}


	public void setUserDao(UserDao userDao) {
		this.userDao = userDao;
	}


	@Override
	public String getUserById(Integer id) {
		String user = userDao.getUserById(id);
		return user;
	}

}

//在Spring配置文件中注册相应的组件,并完成组件之间的依赖注入
<?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">

    <!-- 注册 Hello 组件,并完成属性的赋值 -->
    <bean id="hello" class="com.fhzheng.demo.bean.Hello" >
        <property name="name" value="fhzheng"></property>
        <property name="age" value="30"></property>
    </bean>
    
    <!-- 注册 userDao 接口组件和 userService 接口组件,并完成依赖注入 -->
    <bean id="userDao" class="com.fhzheng.demo.dao.impl.UserDaoImpl"></bean>
    <bean id="userService" class="com.fhzheng.demo.service.impl.UserServiceImpl">
        <property name="userDao" ref="userDao"></property>
    </bean>
</beans>

//跑Junit测试
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringIocApplicationTests {
	
	private ApplicationContext context;
	
	@Before
	public void testBefore() {
		context = new ClassPathXmlApplicationContext("classpath:/applicationContext.xml");
	}
	@Test
	public void testSpringIOCDaoAndService() {
		
		// 业务,查看用户信息
		UserService userService = context.getBean(UserService.class);
		String user = userService.getUserById(55);
		System.out.println("用户信息是:"+user);
	}	

3 运行结果如下

在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值