关于Spring注解的基础详解(补充上次并不清楚的内容)
注解,需要在.xml文件里面加这么一句话:<context:component-scan base-package=""/>(组件)
Component注解
主要用于接口的实现类里面,代替掉.xml文件里面的这句话:(主要作用:代替bean语句)
<bean name="bookDao" class="org.example.dao"/>
当然上面语句里面的class里面放的是包名,若是范围过大,会扫描到当前包下的所有文件
在Main.java文件里面,需要将原来的“bookDao”换成BookDao.class
bookDaoImpl:

ApplicationContext.xml

Main.java

为了避免重,又衍生出三个注解方式(我认为相当于细化)
纯注解开发模式(配置类的出现)
@Configuration

上图中的这个注解,就相当于这里:
而这个注解:
就相当于这里:
嗯,到此,ApplicationContext.xml文件就光荣退休啦!
然后,我们新建一个可执行文件吧!
主函数里面写入这句话:
参数使用配置文件
后面的调用与之前一致(BookDao.class)
纯注解开发入门结束!下次再见啦!
关于Spring注解的基础详解(补充上次并不清楚的内容)的更多相关文章
- spring 注解模式 详解
Spring基于注解实现Bean定义支持如下三种注解: Spring自带的@Component注解及扩展@Repository.@Service.@Controller,如图12-1所示: JSR-2 ...
- Spring 注解大全与详解
Spring使用的注解大全和解释 注解 解释 @Controller 组合注解(组合了@Component注解),应用在MVC层(控制层),DispatcherServlet会自动扫描注解了此注解的类 ...
- [转]Spring 注解大全与详解
Spring使用的注解大全和解释 注解 解释 @Controller 组合注解(组合了@Component注解),应用在MVC层(控制层),DispatcherServlet会自动扫描注解了此注解的类 ...
- (转)java之Spring(IOC)注解装配Bean详解
java之Spring(IOC)注解装配Bean详解 在这里我们要详细说明一下利用Annotation-注解来装配Bean. 因为如果你学会了注解,你就再也不愿意去手动配置xml文件了,下面就看看 ...
- Spring boot注解(annotation)含义详解
Spring boot注解(annotation)含义详解 @Service用于标注业务层组件@Controller用于标注控制层组件(如struts中的action)@Repository用于标注数 ...
- Spring框架系列(8) - Spring IOC实现原理详解之Bean实例化(生命周期,循环依赖等)
上文,我们看了IOC设计要点和设计结构:以及Spring如何实现将资源配置(以xml配置为例)通过加载,解析,生成BeanDefination并注册到IoC容器中的:容器中存放的是Bean的定义即Be ...
- SPRINGBOOT注解最全详解(
# SPRINGBOOT注解最全详解(整合超详细版本) 使用注解的优势: 1.采用纯java代码,不在需要配置繁杂的xml文件 ...
- Spring框架系列(6) - Spring IOC实现原理详解之IOC体系结构设计
在对IoC有了初步的认知后,我们开始对IOC的实现原理进行深入理解.本文将帮助你站在设计者的角度去看IOC最顶层的结构设计.@pdai Spring框架系列(6) - Spring IOC实现原理详解 ...
- Spring框架系列(7) - Spring IOC实现原理详解之IOC初始化流程
上文,我们看了IOC设计要点和设计结构:紧接着这篇,我们可以看下源码的实现了:Spring如何实现将资源配置(以xml配置为例)通过加载,解析,生成BeanDefination并注册到IoC容器中的. ...
- Spring框架系列(9) - Spring AOP实现原理详解之AOP切面的实现
前文,我们分析了Spring IOC的初始化过程和Bean的生命周期等,而Spring AOP也是基于IOC的Bean加载来实现的.本文主要介绍Spring AOP原理解析的切面实现过程(将切面类的所 ...
随机推荐
- 错题笔记:只有浮点型float double可以装小数
char是不能表示小数的,如果赋值小数 则小数部分直接省略.
- 「SOL」旧试题 (LOJ/SDOI)
数论+图论,妙不可言 # 题面 给定 \(A,B,C\),求: \[\sum_{i=1}^A\sum_{j=1}^B\sum_{k=1}^C\sigma_0(ijk) \] 数据规模:\(A,B,C\ ...
- python基础篇 15-常用模块:random string sorted lambda函数
一.random import os,random,sys,time,string print(random.randint(1,10)) # 产生随机的整数 print(random.uniform ...
- sonar使用
代码质量检查工具 sonar 1. 下载,版本sonar 4.5.1 运行bin下的bat文件,浏览器中访问: http://localhost:9000 , 成功. 2. 修改数据库为mysql数据 ...
- AX2012 快速清空整个log表数据
如果当一个log表的数据非常大的时又需要清理时,如果允许删除全部数据,在AX里,可以 将log表的TableType调整为[TempDB], 保存同步后再将TableType设置回[Regular]即 ...
- vue中sso登录使用VueKeycloak登录
一,先下载vuekeycloakjs npm install @dsb-norge/vue-keycloak-js --save 二,引入 import VueKeycloakJs from '@ds ...
- Ansible AWX
Ansible简介 ansible是一个非常简单的it自动化平台,使得程序和系统更易于部署.ansible本质是一个进行封装的shell,优点在于它是去中心化的工具,可以直接通过ssh远程管理主机,实 ...
- Encountered unexpected token: "ur" <K_ISOLATION>
在用mybatis-plus的过程中 , 报如下错误 : Caused by: net.sf.jsqlparser.parser.ParseException: Encountered unexpec ...
- grafana配置邮箱告警
[root@localhost grafana]# cd /etc/grafana/ [root@localhost grafana]# vim grafana.ini 注意:发件邮件要开启smtp服 ...
- vue下载图片
async works(obj) { await this.axios({ method: 'get', url: `entryFormControll ...