首页 文章 精选 留言 我的

精选列表

搜索[类型反射工具],共10000篇文章
优秀的个人博客,低调大师

反射内存网络在分布式仿真系统中的应用方案

随着仿真技术的发展,现代分布式仿真系统普遍由数十乃至上百个仿真节点组成,覆盖视景系统、运动平台、仪表系统、航电设备、雷达模型、教练员控制台等多个子系统。各子系统之间需要以极高的频率交换状态数据(如位置、姿态、速度、控制指令等),同时必须保证数据的同步性和时序一致性,否则仿真画面将出现卡顿、跳变,甚至导致仿真结果失真。

优秀的个人博客,低调大师

【Java复习Ⅲ 11】spring框架:对spring的宏观理解(注入/反射机制)

2021年04月08日 spring宏观介绍 有很多的时候我们学习的只是知识的表层,我们要努力把“了解”变为“精通”。这个系列就是为了记录Java基础梳理。 希望在学习的过程中不是把知识简单的记忆住,更重要的是做到“有趣”,怎么做到呢?将代码理解为构建世界的语言,我们所在的世界的一草一木都可以用代码解释,Java是面向对象的,也是存在于我们的生活的,Java生活就是这个道理。 在以后可能会加一些拓展, 学习理科、技术最依靠的是理解、模型,不断应用,在应用中理解,记忆,才能对知识的理解更上一层。 Spring的组成 spring 2002年发布的,我们可以说“spring配置文件(xml)是spring的灵魂” spring组件 function core 核心(bean的管理) AOP Aspect Oriented Programming 动态代理(总代理销售商对下面的人一视同仁) ORM Object Relation Mapping (对象关系映射) DAO Data access Object(数据连接对象) Context 上下文,前后文(代表当前编程的环境) Web WebMVC 独立的框架(springMVC) Spring框架的几大模块之间相互耦合度很小,因此Spring框架的使用可以根据实际需要选其部分模块循序渐进的使用,而非必须统统照搬。 Spring的原理: spring框架主要依赖IOC和AOP,完成控制反转和注射,这是spring的主要作用! 【IOC】控制反转 Inversion of Control 正向:A类需要使用B类,new一个B类(Instance) 反向:A类需要只用B类,由spring注入一个B给A 【AOP】可以做很多事务的管理。(类似动态代理、面向的是各个类) 【DIC】通过DIC主要的作用是对象的使用直接向spring要,而不用我们自己创建。 Spring核心思想 控制反转Ioc//Inversion of Control和依赖注射DI/Dependency Injection 【控制反转】 什么叫控制反转呢? 套用好莱坞的一句名言就是:Don’t call me.I will call you. 。什么意思呢?就好比一个皇帝和太监 有一天皇帝想幸某个美女,于是跟太监说,今夜我要宠幸美女,皇帝往往不会告诉太监,今晚几点会回宫,会回哪张龙床,他只会告诉太监他要哪位美女。其它一切都交,由太监去安排,到了晚上皇帝回宫时,自然会有美女出现在皇帝的龙床上。这就是控制反转,而把美女送,到皇帝的寝宫里面去就是注射。太监就是是框架里面的注射控制器类BeanFactory,负责找到美女并送到龙 床上去。整个后宫可以看成是Spring框架,美女就是Spring控制下的JavaBean。 【传统的模式】 就是一个饥渴男去找小姐出台,找领班,帮助给介绍一个云云,于是领班就开始给他张罗。介绍一个合适的给他,完事后,再把小姐还给领班,下次再来。这个过程中,领班就是查询上下文Context,领班的一个职能就是给客户找到他们所要的小姐。这就是lookup()方法,领班手中的小姐名录就 是JNDI//Java Naming and Directory Interface。小姐就是EJB,饥渴男是客户端,青楼是EJB容器。 【区别】 饥渴男去找小姐出台很麻烦,不仅得找,用完后还得把小姐给还回去。而皇帝爽翻了,什么都不用管,交给太监去处理,控制权转移到太监手中去了,而不是皇帝,必要时候由太监给注射进去就可以了。看到Spring的美妙了吧,Spring还提供了与多个主流框架的支持,可以和其它开源框架集成。 配置文件 DTD XSD : Xml Schema Definition(2001年发布,写配置文件xsi里面会有) xmlns ns=namespace xsi == xml schema instance xsi:schemaLocation == 对应的实例的位置(XX 对应 XX.xsd) applicationContext.xml (一般都是这个名字作为spring的配置文件) <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd"> <beanid="queenLiModel"class="com.hzyc.demo.model.Model"/> <beanid="queenLiDao"class="com.hzyc.demo.model.dao.Dao"/> <beanid="emperor"class="com.hzyc.demo.model.service.Service"> <constructor-argname="model"ref="queenLiModel"/> <propertyname="dao"ref="queenLiDao"/> bean>beans> 在spring中管理依赖关系 测试类: publicclassService{ //声明我要用的东西 privateDaodao; privateModelmodel; Service(Modelmodel){ this.model=model; } publicvoidserviceRun(){ model.setName("小明"); model.setCode("121"); System.out.println(model); dao.daoRun(); System.out.println("service结束……"); } //普通的getset方法: publicDaogetDao(){、publicvoidsetDao(Daodao){ publicModelgetModel(){、publicvoidsetModel(Modelmodel){}classtest{ publicstaticvoidmain(String[]args){ try{ //写完这个文件之后就已经完成注入的过程了 ApplicationContextatx=newClassPathXmlApplicationContext("applicationContext.xml"); Serviceemperor=(Service)atx.getBean("emperor"); emperor.serviceRun(); ModelqueenModel=(Model)atx.getBean("queenLiModel"); queenModel.setCode("我是queenLiModel"); System.out.println(queenModel.getCode()); }catch(Exceptione){ e.printStackTrace(); } }} 学习笔记

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册