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

传奇手游盒子app平台排行榜seo优化服务是什么意思

传奇手游盒子app平台排行榜,seo优化服务是什么意思,做外贸网站的都有哪些类型的公司,网站开发者购物支付模板目录 什么是 Springbean 容器 设计思路 图解 参考文章 开源地址 BeanDefinition 类 BeanFactory 类 测试类 什么是 Springbean 容器 Spring 包含并管理应用对象的配置和生命周期,在这个意义上它是一种用于承载对象的容器,你可以配置你的每个 Bea…

目录

什么是 Springbean 容器

设计思路

图解

参考文章

开源地址

BeanDefinition 类

BeanFactory 类

测试类


什么是 Springbean 容器

Spring 包含并管理应用对象的配置和生命周期,在这个意义上它是一种用于承载对象的容器,你可以配置你的每个 Bean 对象是如何被创建的,这些 Bean 可以创建一个单独的实例或者每次需要时都生成一个新的实例,以及它们是如何相互关联构建和使用的。

如果一个 Bean 对象交给 Spring 容器管理,那么这个 Bean 对象就应该以类似零件的方式被拆解后存放到 Bean 的定义中,这样相当于一种把对象解耦的操作,可以由 Spring 更加容易的管理,就像处理循环依赖等操作。

当一个 Bean 对象被定义存放以后,再由 Spring 统一进行装配,这个过程包括 Bean 的初始化、属性填充等,最终我们就可以完整的使用一个 Bean 实例化后的对象了。

而我们本章节的案例目标就是定义一个简单的 Spring 容器,用于定义、存放和获取 Bean 对象。

设计思路

凡是可以存放数据的具体数据结构实现,都可以称之为容器。例如:ArrayList、LinkedList、HashSet等,但在 Spring Bean 容器的场景下,我们需要一种可以用于存放和名称索引式的数据结构,所以选择 HashMap 是最合适不过的。

这里简单介绍一下 HashMap,HashMap 是一种基于扰动函数、负载因子、红黑树转换等技术内容,形成的拉链寻址的数据结构,它能让数据更加散列的分布在哈希桶以及碰撞时形成的链表和红黑树上。它的数据结构会尽可能最大限度的让整个数据读取的复杂度在 O(1) ~ O(Logn) ~O(n)之间,当然在极端情况下也会有 O(n) 链表查找数据较多的情况。不过我们经过10万数据的扰动函数再寻址验证测试,数据会均匀的散列在各个哈希桶索引上,所以 HashMap 非常适合用在 Spring Bean 的容器实现上。

图解

参考文章

《Spring 手撸专栏》第 2 章:小试牛刀,实现一个简单的Bean容器!

开源地址

https://github.com/Dddddduo/Dduo-mini-spring

BeanDefinition 类

将对象封装成 bean 对象

用于定义的事 bean 实例化的信息

实现的是以一个 Object 存放对象

package com.example.minispringday1;// 封装一个已经实例化的Bean对象
// 把对象封装成bean对象
public class BeanDefinition {private Object bean;// 构造方法 用于初始化BeanDefinition对象public BeanDefinition(Object bean) {this.bean = bean;}public Object getBean() {return bean;}}

BeanFactory 类

用于创建和管理 Bean 对象

可以存放 bean 到一个 map 中 再进行获取

package com.example.minispringday1;import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;// BeanFactory是Spring框架中的核心组件之一,用于管理和创建Bean对象
public class BeanFactory {// 创建一个ConcurrentHashMap// 其中key是String类型的 代表的是bean的名称private Map<String, BeanDefinition> beanDefinitionMap = new ConcurrentHashMap<>();// 用于获取指定的Beanpublic Object getBean(String name) {return beanDefinitionMap.get(name).getBean();}// 用于注册Bean的定义信息public void registerBeanDefinition(String name, BeanDefinition beanDefinition) {beanDefinitionMap.put(name, beanDefinition);}}

测试类

  1. 初始化 beanfactory
  2. 将对象注入 bean 获取一个 beandefinition 对象
  3. 把注册的 bean 放到 beanfactory 里面
  4. 去 beanfactory 获取 bean 转化为对象
package com.example.minispringday1;import com.example.minispringday1.bean.UserService;
import org.junit.Test;public class MiniSpringDay1ApplicationTests {@Testpublic void test_BeanFactory(){// 1.初始化 BeanFactoryBeanFactory beanFactory = new BeanFactory();// 2.注入bean// 传入的是一个object对象 BeanDefinition // 通过构造方法 把UserService对象挂载到成员属性bean上 类BeanDefinition类的成员属性bean是一个Object类型的变量BeanDefinition beanDefinition = new BeanDefinition(new UserService());// 3.把刚才注册的bean放到BeanFactory里面beanFactory.registerBeanDefinition("userService", beanDefinition);// 4.获取bean// Beanfactory里面放主要是一个map 放的是<String,BeanDefinition>// 我们这边所做的是将Beanfactory里面的bean拿出来UserService userService = (UserService) beanFactory.getBean("userService");userService.queryUserInfo();}}

http://www.dtcms.com/wzjs/385087.html

相关文章:

  • 天津网站定制公司块链友情链接平台
  • 郑州网站建设出名吗百度 个人中心首页
  • 模具网站建设东莞网站推广行者seo08
  • 国办网站建设规范淘宝seo软件
  • 网站功能架构图怎么做优化网站排名费用
  • 巴州住房和城乡建设局网站自媒体平台收益排行榜
  • 深圳建网建网站十大广告联盟
  • 免费网站制作视频教程seo怎么做教程
  • 济南网站建设大标网络营销公关
  • 网页访问禁止怎么恢复网络优化大师app
  • 廊坊网站建设公司哪个好做网站企业
  • wps网站超链接怎么做凡科建站官网入口
  • 做网站虚拟主机是什么意思企业文化墙
  • 网站建设总做总结谷歌搜索引擎香港免费入口
  • 网站建设的运用场景资源网站排名优化seo
  • 重庆企业网站建设哪家专业宁波seo网络优化公司
  • 上海天华建筑设计有限公司地址seo搜索引擎优化工作内容
  • b2b网站产品群发工具中国品牌策划公司排名
  • 网络推广的调整和优化qq排名优化网站
  • 谷搜易外贸网站建设为什么外包会是简历污点
  • 品牌的定义如何做网站关键词优化
  • 国务院网站工程建设审批制度改革品牌策划方案ppt
  • 网站多ip 建设全球网站流量查询
  • 做平台的网站有哪些功能吗360推广登录入口官网
  • 用建站ABC做的网站_怎么营销湖南专业seo推广
  • 网站建设模板后台渠道营销推广方案
  • 建设淘宝网站的目的广告优化师适合女生吗
  • 如何看自己网站流量网上做广告宣传
  • 汽车网站开发背景百度搜索风云榜单
  • 为什么要完善网站建设美国疫情最新数据消息