关于Java的一点小小知识点(杂谈)

1,@Resource和@Autowire的区别

在java代码中可以使用@Autowire或者@Resource注解方式进行装配,这两个注解的区别是: @Autowire默认按照类型装配,默认情况下它要求依赖对象必须存在如果允许为null,可以设置它required属性为false,如果我们想使用按照名称装配,可以结合@Qualifier注解一起使用;

@Resource默认按照名称装配,当找不到与名称匹配的bean才会按照类型装配,可以通过name属性指定,如果没有指定name属性,当注解标注在字段上,即默认取字段的名称作为bean名称寻找依赖对象,当注解标注在属性的setter方法上,即默认取属性名作为bean名称寻找依赖对象.

注意:如果没有指定name属性,并且按照默认的名称仍然找不到依赖的对象时候,会回退到按照类型装配,但一旦指定了name属性,就只能按照名称装配了.

2,Spring boot正常启动但是无法访问到controller中的接口

查看启动类Application是不是上加了@ComponentScan(basePackages = {})这个注解导致controller扫描不到导致的,如果加了这个注解,springboot就不会扫描Application所在的包及子包的文件,需要将controller所在的包加入到注解@ComponentScan的大括号中。

方法:去掉@ComponentScan注解或者加完应有路径

3,BeanFactory和ApplicationContext有什么区别?

ApplicationContext是BeanFactory的子接口。

ApplicationContext提供了更完整的功能:

  • 继承MessageSource,因此支持国际化。
  • 统一的资源文件访问方式。
  • 提供再监听器中注册bean的事件。
  • 同时加载多个配置文件。

载入多个(有继承关系)上下文,使得每一个上下文都专注于一个特定的层次,比如应用的 web层。

1,BeanFactroy采用的是延迟加载形式来注入Bean的,即只有使用到某个Bean时(调用 getBean()),才对该Bean进行加载实例化。这样我们就不能发现一些存在spring的配 置问题。如果某一个Bean的某个属性没有被注入,BeanFacotry加载后,直至第一次使用 调用getBean()方法才会抛出异常。

2,ApplicationContext,它是再容器启动时,一次性创建了所有Bean。这样再容器启动 能够时,我们就可以发现Spring配置中存在的错误,这样,有利于检查依赖属性是否注 入。ApplicationContext启动后预加载所有的单例Bean,通过预载入单实例bean,确保你 需要的时候,不用等待直接 就可以用。

3,相对于基本的BeanFacotry,ApplicationContext唯一不足的是占用内存空间。当应用 程序配置Bean较多时,程序启动速度慢。

4,BeanFacotry通常以编程的方式被创建,ApplicationContext还能以声明的方式创建。

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

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

相关文章

JAVA实现利用phantomjs对URL页面(网页)进行转图片保存

一、前期准备 1、下载phantomjs工具 地址:https://phantomjs.org/download.html 解压到指定文件夹,后续代码要调用该工具,记住路径 2、准备好模板NetToPicMoban.js 用于给phantomjs提供需要执行的js,具体放在那看自己的需求&…

51单片机STC89C52RC——3.1 数码管静态展示

目的 让数码管在指定位置显示指定数字 一,STC单片机模块 二,数码管 2.1 数码管位置 2.2 生活中用到的数目管 红绿灯 LED数码管在生活中随处可见,洗衣机、电饭煲、热水器、微波炉、冰箱、这些最基本的家用电器上基本都用到了这种7段LED数…

广告权重及出价解析

由于算法一直在不断改变,所以公式只能作为参考,不过核心是不变的。一、广告权重及出价解析 链接质量分CTR分值**CR分值(点击率*转化率)广告质量分广告出价*链接质量分我们的出价下一名产品的广告质量评分/我们的链接质量分0.01 …

Spring Bean详解

Spring Bean作用域 默认情况下,所有的 Spring Bean 都是单例的,也就是说在整个 Spring 应用中, Bean 的实例只有一个 如果我们需要创建多个实例的对象,那么应该将 Bean 的 scope 属性定义为 prototype,如果 Spring 需…

嵌入式linux系统中SPI子系统验证03

今天主要给大家分享一下,如何使用SPI总线进行验证的方法。 第一:SPI验证流程 1. echo 1 > /dev / spidev3.0 2.逻辑分析仪抓波形 3.十六进指转化为十进制 4.ASCII字符代码表匹配 第二:SPI验证结果 第三:设备…

“论数据访问层设计技术及其应用”写作框架,系统架构设计师

论文真题 在信息系统的开发与建设中,分层设计是一种常见的架构设计方法,区分层次的目的是为了实现“高内聚低耦合”的思想。分层设计能有效简化系统复杂性,使设计结构清晰,便于提高复用能力和产品维护能力。一种常见的层次划分模…

eclipse如何导入springboot项目

打开eclipse 找到你的springboot项目 点击finish即可 test02就已经导入进去了 配置一下maven 在将那个springboot项目刷新一下即可 运行成功

得物面试:什么是零复制?说说 零复制 底层原理?(吊打面试官)

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中,最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多很重要的零复制的问题: 说一说Rocketmq、是如何实现每秒上百万数据的超…

【C++11】详谈隐式类型转换

🎉博主首页: 有趣的中国人 🎉专栏首页: C进阶 🎉其它专栏: C初阶 | Linux | 初阶数据结构 小伙伴们大家好,本片文章将会讲解 C11中 隐式类型转换 的相关内容。 如果看到最后您觉得这篇文章写得…

实现跑马灯

目录 一 设计原型 二 后台源码 一 设计原型 二 后台源码 namespace 跑马灯 {public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){Color[] colors { Color.Red, Color.Green, Color.Yellow };T…

JAVA每日作业day6.19

ok了家人们今天继续学习面向对象,话不多说看看今天学了什么 一.面向对象-封装 1,private private:私有的 权限修饰符 是一个成员修饰符,修饰成员变量 被private修饰的成员变量和成员方法只能在本类中使用 对外访问使用是 set XXX 和 get X…

IO流2.

字符流-->字符流的底层其实就是字节流 public class Stream {public static void main(String[] args) throws IOException {//1.创建对象并关联本地文件FileReader frnew FileReader("abc\\a.txt");//2.读取资源read()int ch;while((chfr.read())!-1){System.out…

pytorch库 02 Anaconda、Jupyter常用命令及操作

文章目录 一、Anaconda Prompt1、conda常用命令2、pip常用命令 二、Jupyter1、Jupyter常用命令及基本操作2、Jupyter代码补全插件安装 一、Anaconda Prompt 1、conda常用命令 下列命令可以在Anaconda Prompt中输入。 清屏: cls 查看帮助: conda -h 查…

海南聚广众达电子商务咨询有限公司抖音电商新引擎

在数字化浪潮席卷而来的今天,抖音电商作为新兴的商业模式,正以其独特的魅力和无限的潜力,引领着电子商务行业的革新与发展。海南聚广众达电子商务咨询有限公司,作为专注于抖音电商服务的领军企业,凭借其专业的团队、丰…

【IPython的使用技巧】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

u-modal自带的取消和确认按钮都在上面

添加&#xff1a;:show-cancel-button"true" <u-modal:show"showbut":show-cancel-button"true"title"提示":content"content"confirm"confirm"cancel"onModalCancel"confirmText"确认"c…

GRIT论文阅读笔记

一篇试图统一生成任务和编码任务的工作&#xff0c;就是把只能完成生成任务的GPT改成既能生成又能encode。思路其实很简单&#xff0c;就是在输入的时候添加instruction tokens来指引模型做representation还是generation&#xff0c;然后各自算损失。representation任务用的是d…

Certificate数字证书的有效性验证

1.证书相关概念 在讲证书有效性验证的逻辑之前&#xff0c;先了解几个概念。 证书颁发机构&#xff1a;一般为运营数字证书的机构&#xff0c;该机构负责证书的签发、吊销等生命周期管理。证书链&#xff1a;证书颁发机构一般会由多个组成&#xff0c;为树状层级&#xff0c;第…

JWT整合Gateway实现鉴权(RSA与公私密钥工具类)

一.业务流程 1.使用RSA生成公钥和私钥。私钥保存在授权中心&#xff0c;公钥保存在网关(gateway)和各个信任微服务中。 2.用户请求登录。 3.授权中心进行校验&#xff0c;通过后使用私钥对JWT进行签名加密。并将JWT返回给用户 4.用户携带JWT访问 5.gateway直接通过公钥解密JWT进…

数据库 | 试卷五试卷六试卷七

1. 主码不相同&#xff01;相同的话就不能唯一标识非主属性了 2.从关系规范化理论的角度讲&#xff0c;一个只满足 1NF 的关系可能存在的四方面问题 是&#xff1a; 数据冗余度大&#xff0c;插入异常&#xff0c;修改异常&#xff0c;删除异常 3.数据模型的三大要素是什么&…