当前位置: 首页 > news >正文

JAVA学习笔记DAY7——Spring_Ioc

文章目录

  • Bean配置
    • 注解方式配置
      • 注解
      • 配置文件
      • 调用组件
    • 注解方法作用域
  • DI注入注解
    • 引用类型自动装配
      • 文件结构
      • 自动装配实现
    • 基本数据类型DI装配

Bean配置

注解方式配置

  1. 类上添加Ioc注解
  2. 配置文件中告诉SpringIoc容器要检查哪些包

注解仅是一个标记

注解

不同注解仅是为了方便开发人员区分,均在@Component注解的基础上完成。

  • @Compeonent
  • @Repository
  • @Service
  • @Controller

配置文件

  1. 精准指定,指定包则包含子包
    注意会自动添加命名空间
<context:component-span base-package="xxxxxxxx" />
  1. 指定排除组件

调用组件

  1. 创建ioc容器
ClassPatnXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("xxxxxx.xml");
  1. 获取组件
XxxDao bean = applicationContext.getBean(XxxDao.class);
  1. close容器

注解方法作用域

DI注入注解

引用类型自动装配

只需要声明一个全局变量,上方使用@ Autowired注解。

@ Autowired 最常用在成员变量。

@ Qulifier 用来配合Autowired,是Autowired的附庸,不能单独使用。

@ Resource注解 是对Autowired+Qulifier的一种简化。(来自java jsr 250 ,java11以上需要导入依赖在可以使用)

文件结构

  • UserController (表述层,需要调用控制层)
  • UserService(接口)
  • UserServiceImpl(类_对接口的实现)

自动装配实现

前提:组件全部在Ioc中

基本数据类型DI装配

  1. 直接赋值
  2. 注解赋值 @Value注解
    可用于引入外部配置文件jdbc.properties中的值,例如password 。
    仍旧要求外部配置文件和需要调用的文件都在Ioc中。
@Value("${jdbc.username:admin}")

相关文章:

  • Java:爬虫htmlunit抓取a标签
  • 【讲解下目标追踪】
  • AWD攻防比赛流程手册
  • 23.3 时间-解析、计算、比较时间
  • iCopy for Mac 剪切板 粘贴工具 历史记录 安装(保姆级教程,新手小白轻松上手)
  • 课设--学生成绩管理系统(二)
  • FinalShell 连接虚拟机超时,主机ping不通虚拟机,解决
  • MongoDB使用$addToSet向数组中添加元素
  • 设备驱动程序和 PCI 电源管理
  • 健身行动日
  • 如何生成自定义二维码和实现安全便捷的扫码登录功能以及对接企业微信API
  • 打破安全设备孤岛,多源威胁检测与响应(XDR)如何构建一体化安全防线
  • 51单片机入门
  • AWS无服务器 应用程序开发—第三章 后端服务(AWS AppSync)
  • 秋招突击——6/16——复习{整理昨天的面试资料}——新作{删除链表倒数第n个节点}
  • jQuery(一)
  • mongodb--安装和初步使用教程
  • Spring Cloud中负载均衡器概览
  • UEditor初始化失败(实例已存在,但视图未渲染出来,单页化)
  • v-if和v-for连用出现的问题
  • Web设计流程优化:网页效果图设计新思路
  • Yii源码解读-服务定位器(Service Locator)
  • 干货 | 以太坊Mist负责人教你建立无服务器应用
  • 好的网址,关于.net 4.0 ,vs 2010
  • 记一次和乔布斯合作最难忘的经历
  • 简单数学运算程序(不定期更新)
  • 聚类分析——Kmeans
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 设计模式 开闭原则
  • 深度学习入门:10门免费线上课程推荐
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 算法-图和图算法
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • 项目实战-Api的解决方案
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • 阿里云服务器如何修改远程端口?
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​什么是bug?bug的源头在哪里?
  • ‌前端列表展示1000条大量数据时,后端通常需要进行一定的处理。‌
  • # wps必须要登录激活才能使用吗?
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • (+4)2.2UML建模图
  • (1)svelte 教程:hello world
  • (31)对象的克隆
  • (4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上
  • (C++17) std算法之执行策略 execution
  • (Forward) Music Player: From UI Proposal to Code
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (算法)求1到1亿间的质数或素数
  • (算法)区间调度问题
  • (详细版)Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models
  • (循环依赖问题)学习spring的第九天