面试疑难点解析:开发工具及框架(七)

简介: 进行Spring的配置,有两种形式完成,一种是基于xml配置文件完成的,另外一种形式是基于@configure注解完成的,这俩种配置区别不大,可以根据自己的习惯来决定。

Spring配置

进行Spring的配置,有两种形式完成,一种是基于xml配置文件完成的,另外一种形式是基于@Configure注解完成的,这俩种配置区别不大,可以根据自己的习惯来决定。

如果使用的是微架构的概念,那么往往会使用注解配置“@Configure”,如果使用的是传统的开发模式,那更多情况下还是使用xml文件居多。

可重用的配置还是注解方便一些,尤其是使用maven进行项目管理之后。
1.建立一个操作接口:

image.png

2.随后建立这个接口的子类:

image.png

随后按照传统的思路,使用配置文件的模式进行该类对象管理。

3.建立Spring.xml配置文件:

image.png
image.png

现在模拟的操作环境是进行那些不能被扫描类配置,这样配置完成之后就可以通过ApplicationContext进行加载,使用ClassPathXmlApplicationContext类。

4.建立程序主类:

image.png

5.这个时候会有一部分人认为,如果要进行配置的类直接写在了配置文件里面会有如下不方便(没有高档开发工具的支持前提,例如:MyEclipse、IDEA):
—— 如果直接在配置文件中编写类的话,名称的定义非常不方便;
—— 如果进行一些属性的配置,通过配置文件的编写过于复杂;
对于开发人员来讲,编写配置文件不是一个问题,更方便的是编写类,所以对于以上的配置就有了一种新的做法,这种做法是通过配置的注解完成,这个产生时间从Spring3.x开始的。

6.不使用application.xml配置文件,编写一个配置的程序类:

image.png

7.编写application.properties配置文件进行扫描包的配置:

image.png

8.测试时,即使此时的spring.xml文件没有所需要的bean配置,但由于存在有配置类的关系,所以依然可以使用:

image.png

从实际的开发来讲,这种注解的配置模式大部分都会出现在“零配置”项目上,例如:SpringBoot、Springcloud之中会大量采用此类配置模式。如果你做的还是传统的WEB(大部分项目都属于传统的WEB项目),习惯性的做法还是使用传统的配置文件的模式完成。

更多专业知识,面试技巧就在面试一点通,持续更新中……
感谢浏览~
本内容来源于阿里云大学-Java面试技巧

相关文章
|
机器学习/深度学习 人工智能 JSON
Resume Matcher:增加面试机会!开源AI简历优化工具,一键解析简历和职位描述并优化
Resume Matcher 是一款开源AI简历优化工具,通过解析简历和职位描述,提取关键词并计算文本相似性,帮助求职者优化简历内容,提升通过自动化筛选系统(ATS)的概率,增加面试机会。
1632 18
Resume Matcher:增加面试机会!开源AI简历优化工具,一键解析简历和职位描述并优化
|
人工智能 API 开发者
HarmonyOS Next~鸿蒙应用框架开发实战:Ability Kit与Accessibility Kit深度解析
本书深入解析HarmonyOS应用框架开发,聚焦Ability Kit与Accessibility Kit两大核心组件。Ability Kit通过FA/PA双引擎架构实现跨设备协同,支持分布式能力开发;Accessibility Kit提供无障碍服务构建方案,优化用户体验。内容涵盖设计理念、实践案例、调试优化及未来演进方向,助力开发者打造高效、包容的分布式应用,体现HarmonyOS生态价值。
830 27
|
人工智能 自然语言处理 搜索推荐
ViDoRAG:开源多模态文档检索框架,多智能体推理+图文理解精准解析文档
ViDoRAG 是阿里巴巴通义实验室联合中国科学技术大学和上海交通大学推出的视觉文档检索增强生成框架,基于多智能体协作和动态迭代推理,显著提升复杂视觉文档的检索和生成效率。
1010 8
ViDoRAG:开源多模态文档检索框架,多智能体推理+图文理解精准解析文档
|
机器学习/深度学习 人工智能 Java
Java机器学习实战:基于DJL框架的手写数字识别全解析
在人工智能蓬勃发展的今天,Python凭借丰富的生态库(如TensorFlow、PyTorch)成为AI开发的首选语言。但Java作为企业级应用的基石,其在生产环境部署、性能优化和工程化方面的优势不容忽视。DJL(Deep Java Library)的出现完美填补了Java在深度学习领域的空白,它提供了一套统一的API,允许开发者无缝对接主流深度学习框架,将AI模型高效部署到Java生态中。本文将通过手写数字识别的完整流程,深入解析DJL框架的核心机制与应用实践。
863 3
|
设计模式 XML Java
【23种设计模式·全精解析 | 自定义Spring框架篇】Spring核心源码分析+自定义Spring的IOC功能,依赖注入功能
本文详细介绍了Spring框架的核心功能,并通过手写自定义Spring框架的方式,深入理解了Spring的IOC(控制反转)和DI(依赖注入)功能,并且学会实际运用设计模式到真实开发中。
【23种设计模式·全精解析 | 自定义Spring框架篇】Spring核心源码分析+自定义Spring的IOC功能,依赖注入功能
|
数据可视化 测试技术 API
GraphQL开发工具选型指南:Apipost高效调试与文档生成实战解析
本文深入解析了GraphQL开发工具Apipost在高效调试与文档生成方面的优势,对比同类工具Apifox,突出其可视化界面、实时调试及自动化文档生成等特性。Apipost通过智能代码补全、错误提示等功能简化复杂Query编写,支持一键生成标准化文档,显著提升开发效率和团队协作效果,尤其适合中大型团队应对复杂业务场景。
|
Java 程序员
面试官的加分题:super关键字全解析,轻松应对!
小米,29岁程序员,通过一个关于Animal和Dog类的故事,详细解析了Java中super关键字的多种用法,包括调用父类构造方法、访问父类成员变量及调用父类方法,帮助读者更好地理解和应用super,应对面试挑战。
247 3
|
开发框架 Dart Android开发
安卓与iOS的跨平台开发:Flutter框架深度解析
在移动应用开发的海洋中,Flutter作为一艘灵活的帆船,正引领着开发者们驶向跨平台开发的新纪元。本文将揭开Flutter神秘的面纱,从其架构到核心特性,再到实际应用案例,我们将一同探索这个由谷歌打造的开源UI工具包如何让安卓与iOS应用开发变得更加高效而统一。你将看到,借助Flutter,打造精美、高性能的应用不再是难题,而是变成了一场创造性的旅程。
|
算法 测试技术 C语言
深入理解HTTP/2:nghttp2库源码解析及客户端实现示例
通过解析nghttp2库的源码和实现一个简单的HTTP/2客户端示例,本文详细介绍了HTTP/2的关键特性和nghttp2的核心实现。了解这些内容可以帮助开发者更好地理解HTTP/2协议,提高Web应用的性能和用户体验。对于实际开发中的应用,可以根据需要进一步优化和扩展代码,以满足具体需求。
1296 29
|
前端开发 数据安全/隐私保护 CDN
二次元聚合短视频解析去水印系统源码
二次元聚合短视频解析去水印系统源码
528 4

推荐镜像

更多
  • DNS