Spring的依赖注入与控制反转,java高级开发笔试题

这篇博客详细介绍了Spring框架中的依赖注入(DI)和控制反转(IoC)概念,包括通过XML配置文件实现的构造函数注入、接口注入,以及使用注解@Autowire的注解注入方式。此外,还提供了相关的Java代码示例,帮助读者深入理解这些概念在实际开发中的应用。
摘要由CSDN通过智能技术生成

}

}

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”

xmlns:context=“http://www.springframework.org/schema/context”

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-2.5.xsd ">

2、构造函数注入


User.java

public class User{

private String name;

private Integer age;

//关于name,age的getter/setter方法省略

public User(String name,int age){

this.name = name;

this.age = age;

}

}

通过Spring配置文件来注入这User这个对象

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns=“http://www.springframework.org/schema/beans”

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”

xmlns:context=“http://www.springframework.org/schema/context”

xsi:schemaLocation="http://www.springframework.org/

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

schema/beans

http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-2.5.xsd ">

<constructor-arg type=“java.lang.Integer” index=“1” value="20>

3、接口注入(这个现在基本不用)


public class UserServiceImpl implements UserService{

private UserDao userDao;

public void setUserDao(UserDao userDao){

this.userDao = userDao;

}

public void insertUser(User user){

userDao.insert(user);

}

public UserServiceImpl (){

}

}

通过Spring配置文件来注入这userDao这个对象

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns=“http://www.springframework.org/schema/beans”

xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”

xmlns:context=“http://www.springframework.org/schema/context”

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-2.5.xsd ">

<bean id="userService class=“UserServiceImpl”>

4、注解注入(@Autowire)


UserDao.java

@Component

public class UserDao{

public void inserUser(User user){

//具体逻辑省略

}

}

UserService.java

public Interface UserService{

void inserUser(User user);

}

UserServiceImpl.java

//引入相应的Spring包

@Service

public class UserServiceImpl implements UserService{

@Autowire

private UserDao userDao;

public void insertUser(User user){

userDao.insert(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”

xmlns:context=“http://www.springframework.org/schema/context”

xsi:schemaLocation="http://www.springframework.org/schema/beans

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值