搭建简易Spring-ioc框架

news/2024/5/6 9:28:34/文章来源:https://blog.csdn.net/weixin_54174102/article/details/126669327

SpringFrameWork系列1

文章目录

    • SpringFrameWork系列1
  • 一、谈谈对Spring的认识
  • 二、控制反转(ioc)的作用
    • 2.1 ioc的优缺点
  • 三、搭建Spring-ioc框架

一、谈谈对Spring的认识

Spring是一个开源框架,是为了解决企业应用开发的复杂性而产生的。
特征:轻量级别,控制反转ioc和依赖注入DI,面向切面AOP,容器,框架,一站式和MVC

二、控制反转(ioc)的作用

减低计算机代码之间的耦合度,通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。

2.1 ioc的优缺点

优点:资源集中管理,降低使用资源双方的依赖程度,相对于DI简便了许多
缺点;如果修改了类名,还需要xml文件中手动修改

三、搭建Spring-ioc框架

在这里插入图片描述
首先需要导入四个包,分别是Beans,Core,Context,SpEl,导入idea中,导入后即可创建xml文件,将用到的类写入。
在这里插入图片描述
主要代码:
UserSerciveimpl

package service.impl;
import Dao.UserDao;
import Dao.impl.UserOracle;
import service.UserService;
public class UserServiceimpl implements UserService {UserDao dao;public UserDao getDao() {return dao;}public void setDao() {this.dao = dao;}@Overridepublic void getUsed() {dao.getUsed();}public void setDao(UserDao dao) {this.dao = dao;}
}

UserMysql

package Dao.impl;
import Dao.UserDao;
public class UserMysql implements UserDao {@Overridepublic void getUsed() {System.out.print("查询mysql");}
}

MyTest

package test;import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import service.UserService;
import service.impl.UserServiceimpl;public class MyTest {public static void main(String[] args) {ApplicationContext ioc = new ClassPathXmlApplicationContext("Spring.xml");UserService service = ioc.getBean(UserService.class);service.getUsed();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_4979.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第66章 基于.Net(Core)x框架的开源分页插件

1 Jquery DataTable 分页插件 Jquery DataTable分页插件是完全基于javaScript的,所以它是跨框架的,即不管你使用的是那种语言,那种平台开发网站程序,基本上都能通过使用Jquery DataTable分页插件实现分页操作。 在nopCommerce开发…

TASK04分组|joyfulpandas

目录一、分组模式及其对象1. 分组的一般模式2. 分组依据的本质【练一练】【END】3.Groupby对象【练一练】【END】 size4. 分组的三大操作二、聚合函数1. 内置聚合函数【练一练】【END】2. agg方法【练一练】【练一练】【END】三、变换和过滤1. 变换函数与transform方法【练一练…

02|一条MySQL更新语句是如何执行的

02|一条MySQL更新语句是如何执行的 update T set cc1 where ID2;其实一条更新语句的执行操作和查询语句的执行操作基本相同->一条SQL查询语句是如何查询的?,唯一不同的是一条更新语句在执行过程中需要涉及到两个日志操作(redo log、binlo…

四、集合

四、集合 集合和数组区别 (1)数组定长,集合不定长(2)数组可存基础数据类型和引用类型,集合只能存引用类型 位置:java.util.*; 这是一位仁兄的笔记,师出同门,点我跳转~ 1、…

高级js 面向对象 和面向过程 三种函数

判断数据类型 // 创建一个Cat对象,属性:颜色,品种,行为:吃,跑,捉老鼠var Cat new Object() //new一个对象Cat.catys red //属性Cat.catname cat //对象名// 行为Cat.catxw function () {console.log("喜欢跑&…

Python3,我用这种方式讲解python模块,80岁的奶奶都说能理解。建议收藏 ~ ~

Python模块讲解1、引言2、python模块详解2.1 含义2.2 代码示例2.3 进阶3、总结1、引言 小屌丝:鱼哥,你看天上的月亮越来越圆了。 小鱼:唉~ 又是一年团圆夜,又是一年中秋节。 小屌丝:嘿嘿,可不滴&#xff0…

二维凸包问题

什么是二维凸包 假设墙上顶一组钉子,这些钉子的集合为X,我们用橡皮筋围住这些钉子,橡皮筋的形状就是凸包(来源于网络)。 向量的叉乘 对于两个向量pq⃗\vec{pq}pq​和qr⃗\vec{qr}qr​ 如果pq⃗\vec{pq}pq​和qr⃗\vec{qr}qr​的叉积结果大于0…

分销商城小程序开发运营逻辑是什么?

商城分销现在用的人比较多,其中用的最多的差不多就是二级分销、三级分销,除了这两种分销方式,还有一种是一级分销,不过裂变效果可能不如二级分销、三级分销要好,所以用的人不是特别的多。 二级分销跟三级分销的逻辑都差…

C++PrimerPlus跟读记录【第五章】循环和关系表达式

1、for 循环 for(initialization; test-expression; updata-expression)test-expression 关系表达式,结果强制为bool类型,true or false。 表达式和语句 C表达式是 值 或 值与运算符的组合,每个表达式都有值。表达式只要加上分号&#xff0…

剑指offer32-42字符串数组的应用

剑指 Offer II 032. 有效的变位词 给定两个字符串 s 和 t ,编写一个函数来判断它们是不是一组变位词(字母异位词)。t 是 s的变位词等价于「两个字符串不相等且两个字符串排序后相等」 注意:若 s 和 t 中每个字符出现的次数都相同…

QT QTextEdit富文本插入字体-表格-编号-图片-查找-语法高亮功能

QT QTextEdit富文本插入字体-表格-编号-图片与查找功能,输入char 自动变成蓝色-语法高亮功能 QTQTextEdit富文本插入字体-表格-编号-图片-查找-语法高亮功能.rar-QT文档类资源-CSDN下载QTQTextEdit富文本插入字体-表格-编号-图片-查找-语法高亮功能.rarhttps:/更多…

Vue使用脚手架(ref、props、mixin、插件、scoped)(七)

系列文章目录 第一章:Vue基础知识笔记(模板语法、数据绑定、事件处理、计算属性)(一) 第二章:Vue基础知识(计算属性、监视属性、computed和watch之间的区别、绑定样式)(…

四、 java的对象和类

四、 java的对象和类 对象(Object):对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类(c…

物理服务器安装CentOS 7操作系统

目录 1、下载系统镜像 2、制作安装盘 2.1 方法一:光盘制作 2.2 方法二:U盘制作 3、更改bios启动顺序 4、安装CentOS 7操作系统 4.1 安装命令选择,及常见错误解决 4.2 语言选择 4.3 时区选择 4.4 软件选择 4.5 安装位置选择 4.6 手…

猿创征文|【C++游戏引擎Easy2D】学C++还不会绘制一个简单的二维图形?一篇文章教会你

🧛‍♂️iecne个人主页::iecne的学习日志 💡每天关注iecne的作品,一起进步 💪学C必看iecne 本文专栏:【C游戏引擎】. 🐳希望大家多多支持🥰一起进步呀! ✨前…

Apache Maven 3.6.0的下载安装和环境配置(详细图解+不限速下载链接)

标题工具/原料 apache-maven-3.6.0 下载地址 云盘不限速下载 或者进入官网按下图下载 方法/步骤一 安装 打开压缩包,将maven压缩包解压至软件安装处,建议D根目录或其他,记住安装位置 类似于 方法/步骤二 环境变量配置 变量 1.新建变…

Eolink 通过可信云权威认证,数据保护能力业内领先!

Eolink 正式通过由中国信息通信研究院组织发起的可信云评估考核,在数据安全保障领域获得权威认证,并荣获 “企业级 SaaS 服务” 认证证书。 在云时代,保护用户数据安全、预防隐私泄露是数字化企服厂商的重中之重。Eolink 作为一个 API 在线管…

计算机毕业设计ssm+vue基本微信小程序的个人健康管理系统

项目介绍 首先,论文一开始便是清楚的论述了小程序的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了小程序的需求基础上需要进一步地设计系统,主要包罗软件架构模式、整体功能模块、数…

IIC协议详解

文章目录1 IIC简介2 IIC物理层2.1 IIC硬件2.2 IIC协议特点3 IIC协议层4数据传输4.1 IIC写数据4.2 IIC读数据1 IIC简介 IIC(Inter-Integrated Circuit)总线是一种由 NXP(原 PHILIPS)公司开发的两线式串行总线, 用于连接微控制器及其…

s19.基于 Kubernetes v1.25.0(kubeadm) 和 Docker 部署高可用集群(一)

基于 Kubernetes v1.25.0 和 Docker 部署高可用集群 主要内容 Kubernetes 集群架构组成容器运行时 CRIKubernetes v1.25 新特性Kubernetes v1.24 之后不再支持 Docker 的解决方案Kubernetes v1.25 高可用集群架构基于 Kubernetes v1.25.0 和 Docker 部署高可用集群实战案例 …