Spring-IOC(基于注解)
2024-10-08 14:43:13
1.Spring 的 Bean 管理:(注解方式)
1.1 创建 web 项目,引入 Spring 的开发包:
注:在 Spring 的注解的 AOP 中需要引入 spring-aop 的 jar 包。
1.2引入相关配置文件:
log4j.properties
applicationContext.xml
引入约束: 位置:spring-framework-4.2.4.RELEASE\docs\spring-framework-reference\html\xsd-configuration.html
* 引入约束:(引入 context 的约束):
<?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.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<!-- bean definitions here -->
<!--spring 的 Ioc的中注解入门-->
<!-- 使用IOC的注解开发,配置组件扫描 (那些包下的类使用IOC的注解)-->
<context:component-scan base-package="com.rick.spring.demo1"></context:component-scan>
</beans>
1.3编写相关的类:
package com.rick.spring.demo1;
public interface UserDao {
public void save();
}
package com.rick.spring.demo1;
import org.springframework.stereotype.Component;
@Component("userDao") //相当于在XML中配置了<bean id = " userDao " class = " .UserDaoImpl" />
public class UserDaoImpl implements UserDao {
@Override
public void save() {
System.out.println("Dao中保存用户的方法执行了");
}
}
package com.rick.spring.demo1;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/*
* Spring的Ioc的注解开发的测试类
*/
public class SpringDemo1 {
//传统方式
@Test
public void demo1() {
UserDao userDao = new UserDaoImpl();
userDao.save();
}
//spring的ioc注解方式
@Test
public void demo2() {
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
UserDao userDao = (UserDao) applicationContext.getBean("userDao");
userDao.save();
}
}
1.4注解方式设置属性的值
注解方式:使用注解方式,可以没有set方法。
- 属性如果有set方法,需要将属性注入发哦注解添加到set方法
- 属性如果没有set方法,需要将属性输入到注解添加的属性上
2.Spring的Bean管理的中常用的注解:
2.1.@Component:组件.(作用在类上)
2.2 属性注入的注解:(使用注解注入的方式,可以不用提供 set 方法.)
2.3 Bean 的作用范围的注解:
2.4 Bean 的生命周期的配置:
小结:Spring的Bean管理的方式的比较:
最新文章
- QT 第三方串口库COM10以上无法读取问题
- LSA,pLSA原理及其代码实现
- 简单的ASP.NET MVC发布
- java 入门 第二季4
- 改了哪里vs调试直接用iis运行
- 在uwp仿制WPF的Window
- 一人一python挑战题解
- Linux操作杂记
- IOS开发问题录:如何在Swift中引入Head文件?
- node.js 访问sql server的 node_modules “msnodesql";的安装编译方法
- 『奇葩问题集锦』function * (next){ 执行报错 SyntaxError: Unexpected token *
- [RxJS] Stream Processing With RxJS vs Array Higher-Order Functions
- java vm内存设置
- WPF笔记(1.10 绘图)——Hello,WPF!
- Linux上rpm方式安装JDK1.7
- angular中$q.all用法
- 原生JS面向对象方法实现万年历
- [LeetCode] Implement Rand10() Using Rand7() 使用Rand7()来实现Rand10()
- iframe跨域解决方案
- Android设置状态栏颜色