Spring-IOC知识点整理
发布日期:2022-02-10 11:36:57 浏览次数:36 分类:技术文章

本文共 1658 字,大约阅读时间需要 5 分钟。

Spring是什么

  • Spring是分层的JavaSE/EE应用 full-stack轻量级开源框架

Spring体系结构

  • 底层是核心容器
    • Beans
    • Core
    • Context
    • SpringEL表达式
  • 中间层技术
    • AOP
    • Aspects
  • 应用层技术
    • 数据访问与数据集成
    • Web集成
    • Web实现
  • 基于Test测试

IOC

  • IOC(Inversion Of Control)控制反转,Spring反向控制应用程序所需要使用的外部资源

IOC入门案例

  • 导入maven坐标

    org.springframework
    spring-context
    5.1.9.RELEASE
  • 编写Spring配置文件(将需要的对象存储到spring容器)

  • 创建容器对象并使用容器中的资源
public class Test{
public static void main(String[] args) {
//2.加载配置文件 ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); //3.通过id获取资源,也可以通过类型获取 UserService userService = (UserService) ctx.getBean("userService"); userService.save(); }}

IoC配置(XML格式)

  • bean标签
    • 作用:定义spring中的资源,使用此标签定义的资源受spring控制

DI

  • DI(Dependency Injection)依赖注入,应用程序运行依赖的资源由Spring为其提供,资源进入应用程序的方式称为注入
  • IoC与DI的关系

    IoC与DI是同一件事站在不同角度看待问题

依赖注入

  • set注入
    • 名称:propertry
    • 作用:使用set方式为bean注入资源
  • 构造器注入
    • 名称:constructor-arg
    • 作用:使用构造方法为其注入资源
还有其他注入...
  • SpEL

properties文件

  1. 准备外部properties文件
  2. 开启context命名空间支持
    xmlns:context="http://www.springframework.org/schema/context"
  3. 加载指定的properties文件
    <context:property-placeholder location="classpath:filename.properties">
  4. 使用加载的数据
    <property name="propertyName" value="${propertiesName}"/>

如果需要加载所有的properties文件,可以使用*.properties表示加载所有的properties文件,读取数据使用${propertiesName}格式进行,其中propertiesName指properties文件中的属性名

jdbc.properties

jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://192.168.93.129:3306/spring_dbjdbc.username=rootjdbc.password=admin

import

  • 作用:在当前配置文件中导入其他配置文件中的项

第三方资源配置

  • 阿里数据源方案Druid

转载地址:https://blog.csdn.net/drug1910951117/article/details/107504310 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Spring整合MyBatis快速入门之纯注解
下一篇:Spring-快速开发之注解开发

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年03月06日 07时03分55秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

linux中怎么卸载tree,Liunx系统命令中tree命令详解 2019-04-21
linux 网络音箱 混音6,Linux音频编程(三)混音器介绍 2019-04-21
node与mysql开源_node与mysql的相互使用————node+mysql 2019-04-21
python合并列表重新排序_python – 将两个已排序的列表合并为一个更大的排序列表... 2019-04-21
vbs用mysql语句查询数据库_vbs脚本实现window环境下的mysql数据库的备份及删除早期备份... 2021-06-24
mysql连接nginx_nginx四层负载均衡连接mysql 2021-06-24
mysql截取栏目字符_substring从指定字符串开始截取(图) 2021-06-24
python 函数参数前面两个星号_Python中参数前面一个星号两个星号(*参数,**参数)起什么作用呢?... 2019-04-21
python类属性初始化_Python类定义、属性、初始化和析构 2019-04-21
mysql构建url给scrapy_Python Scrapy从mysq填充起始url 2019-04-21
owdcloud mysql_MySQL在Ubuntu远程配置 2019-04-21
python基础装饰器_Python基础 装饰器及练习 2019-04-21
python导出csv不带引号的句子_不带双引号写入CSV文件 2019-04-21
python爬虫代码模板_Python:学习Python爬虫的第一天 2019-04-21
springboot获取原生js请求_springboot跳转原生html 2019-04-21
java buffer nio_Java NIO之Buffer(缓冲区)入门 2019-04-21
android java加密_android 和java平台通用的AES加密解密 2019-04-21
java导出类_java导出excel工具类 2019-04-21
java学习手册下载_Java学习手册 2019-04-21
axios delete有请求体吗_关于axios请求——delete方法 2019-04-21