《面试题》2、Java基础框架

超详细的Java面试题汇总(基础篇+框架篇) Java面试题汇总-基础篇 1.面向对象是什么? 答:面向对象是一种思想,世间万物都可以看做一个对象,这里只讨论面向对象编程(OOP),Java是一个支持并发、基于类和面向对象的计算机编程语言,面向对象软件开发的优点:代码开发模块化,更易维护和修改;代码复用性强;增强代码的可靠性和灵活性;增加代码的可读性。 2、String 是最基本的数据类型吗? 答:不是。Java中的基本数据类型只有8个:by... 阅读详情

2.1 Spring/Springboot/SpringMVC

1、@Autowired和@Resouce区别

- @Autowired默认按类型装配(这个注解是属业spring的),默认情况下必须要求依赖对象必须存在,如果要允许null值,可以设置它的required属性为false,如:@Autowired(required=false) ,如果我们想使用名称装配可以结合@Qualifier注解进行使用;
- @Resource(这个注解属于J2EE的),默认按照名称进行装配,名称可以通过name属性进行指定,如果没有指定name属性,当注解写在字段上时,默认取字段名进行安装名称查找,如果注解写在setter方法上默认取属性名进行装配。当找不到与名称匹配的bean时才按照类型进行装配。但是需要注意的是,如果name属性一旦指定,就只会按照名称进行装配;

例如:RedisTemplate双亲委派出现的问题

2、Springboot的starter原理

原理:利用starter实现自动化配置只需要两个条件——maven依赖、配置文件,这里简单介绍下starter实现自动化配置的流程。
引入maven实质上就是导入jar包,spring-boot启动的时候会找到starter jar包中的resources/META-INF/spring.factories文件,根据spring.factories文件中的配置,找到需要自动配置的类。
    - 配置如下:
        org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
        com.ouyanglol.starterdemo.config.DemoAutoConfiguration
    - 用到的注解:
        @Configuration	表明是一个配置文件,被注解的类将成为一个bean配置类
        @ConditionalOnClass	当classpath下发现该类的情况下进行自动配置
        @ConditionalOnBean	当classpath下发现该类的情况下进行自动配置
        @EnableConfigurationProperties	使@ConfigurationProperties注解生效
        @AutoConfigureAfter	完成自动配置后实例化这个bean
参考博客:https://blog.youkuaiyun.com/Mr_OOO/article/details/89477948

2.2 Mybatis

1、Mybatis #和$的区别?

#:参数注入,不会有sql注入问题,底层源码是jdbc的param api
$: 字符串替换,会有sql注入的危险

2、Mybatis 的一级缓存和二级缓存的作用?

一级缓存 session 
二级缓存 Mapper 会有数据延时问题

2.3 Netty

1、BIO、NIO、AIO是什么,区别,适用场景?

1.概念:
- BIO:同步阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。
- NIO:同步非阻塞,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。
- AIO:异步非阻塞,服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理
        
2.适用场景:
- BIO方式适用于连接数目比较小且固定的架构,这种方式对服务器资源要求比较高,并发局限于应用中,JDK1.4以前的唯一选择,但程序直观简单易理解。
- NIO方式适用于连接数目多且连接比较短(轻操作)的架构,比如聊天服务器,并发局限于应用中,编程比较复杂,JDK1.4开始支持。
- AIO方式使用于连接数目多且连接比较长(重操作)的架构,比如相册服务器,充分调用OS参与并发操作,编程比较复杂,JDK7开始支持。

2、Netty是什么?实现原理是?核心组件?优缺点?

1.是什么?
- Netty是⼀个基于NIO的client-server(客户端服务器)框架,使⽤它可以快速简单地开发⽹络应⽤程序。它极⼤地简化并优化了TCP和UDP套接字服务器等⽹络编程,并且性能以及安全性等很多⽅⾯甚⾄都要更好。⽀持多种协议 如FTP,SMTP,HTTP 以及各种⼆进制和基于⽂本的传统协议。
- 很多开源项⽬⽐如我们常⽤的Dubbo、RocketMQ、Elasticsearch、gRPC等等都⽤到了Netty。

2.核心组件
1.Channel
    - Channel 接⼝是 Netty 对⽹络操作抽象类,它除了包括基本的 I/O 操作,如bind() 、 connect() 、 read() 、 write() 等。
    - 常⽤的 Channel 接⼝实现类是 NioServerSocketChannel (服务端)和 NioSocketChannel (客户端),这两个 Channel 可以和 BIO 编程模型中的 ServerSocket 以及 Socket 两个概念对应上。

2.EventLoop(事件循环)
    - EventLoop 定义了Netty的核⼼抽象,⽤于处理连接的⽣命周期中所发⽣的事件。说⽩了,EventLoop的主要作⽤实际就是负责监听⽹络事件并调⽤事件处理器进⾏相关 I/O 操作的处理。
    - Channel 和 EventLoop 直接有啥联系呢?
        Channel 为 Netty ⽹络操作(读写等操作)抽象类, EventLoop 负责处理注册到其上的 Channel处理 I/O 操作,两者配合参与 I/O 操作。
    
3.ChannelFuture
Netty 是异步⾮阻塞的,所有的 I/O 操作都为异步的。
因此,我们不能⽴刻得到操作是否执⾏成功,但是,你可以通过 ChannelFuture 接⼝的addListener()⽅法注册⼀个ChannelFutureListener,当操作执⾏成功或者失败时,监听就会⾃动触发返回结果。并且,你还可以通过 ChannelFuture 的 channel() ⽅法获取关联的 Channel。另外,我们还可以通过 ChannelFuture 接⼝的 sync() ⽅法让异步的操作变成同步的。

4.ChannelHandler 和 ChannelPipeline
- ChannelHandler 是消息的具体处理器。他负责处理读写操作、客户端连接等事情。
- ChannelPipeline 为 ChannelHandler 的链,提供了⼀个容器并定义了⽤于沿着链传播⼊站和出站
事件流的 API 。当 Channel 被创建时,它会被⾃动地分配到它专属的 ChannelPipeline 。
- 我们可以在 ChannelPipeline上通过addLast()⽅法添加⼀个或者多个ChannelHandler ,因为⼀个数据或者事件可能会被多个Handler处理。当⼀个ChannelHandler处理完之后就将数据交给下⼀个 ChannelHandler 。

YOLOv11多模态融合实战:基于YOLOFuse的RGB与红外线(IR)协同检测技术解析 本文深入解析了YOLOv11多模态融合技术,重点介绍基于YOLOFuse框架的RGB与红外线(IR)协同检测方法。通过动态权重分配、跨模态特征对齐等创新设计,实现在低光照等复杂环境下的高精度目标检测,mAP提升高达37%。文章包含实战案例、训练技巧和部署方案,为计算机视觉开发者提供完整的多模态融合解决方案。 阅读详情

相关推荐

汽车车牌识别系统实现(二)--车牌定位+代码实现

汽车车牌识别系统实现(二)-- 车牌定位 前言 本人大四计算机视觉处理方面菜鸟一枚,因个人兴趣和毕设的缘故,故而想学习计算机视觉方面的内容,有不正确的地方还等各位大神批评指正。 图像预处理 照相机获取到汽车车牌图像时,绝大多数情况下,图像里只存在一个车牌的情况是不太现实的,一幅图像里存在建筑物、树、其它汽车等等是很正常的;而且绝大多数都会存在噪声点,这种情况下就会对车牌定位和识别造成极大程度的干扰...

奋斗の博客 1万+

SSM最常见的面试题,都在这了

SSM框架面试题必问

一个沉迷Java,无法自拔的Coder 5272

十一、机器学习进阶知识:径向基神经网络(RBFNN)的实现(Python,附源码及数据集)

本文对径向基神经网络(RBFNN)的理论基础及建模步骤进行介绍,之后使用Python实现基于RBFNN的数据预测,通俗易懂,适合新手学习,附源码及实验数据集。

weixin_42051846的博客 1万+

SSM框架面试题整理

Spring配备构建Web应用的全功能MVC框架。Spring可以很便捷地和其他MVC框架集成,如Struts,Spring的MVC框架用控制反转把业务对象和控制逻辑清晰地隔离。它也允许以声明的方式把请求参数和业务对象绑定。当一个bean仅被用作另一个bean的属性时,它能被声明为一个内部bean,为了定义innerbean,在Spring的基于XML的配置元数据中,可以在或\元素内使用元素,内部bean通常是匿名的,它们的Scope一般是prototype...

xiaobaijun_ge的博客 1万+

如何在iPhone上本地运行SmolVLM?5亿参数模型实战指南(附Swift代码)

本文详细介绍了如何在iPhone上本地部署和运行轻量高效的SmolVLM多模态模型。通过实战指南,分享了使用Swift和MLX框架进行环境配置、模型加载、内存优化以及实现实时图像分析与文本生成的完整流程,帮助开发者在移动端高效运行AI视觉语言模型。

echo99的专栏 654

基于Playwright+Pytest+Yaml+Allure的UI自动化测试框架实战指南

本文详细介绍了基于Playwright+Pytest+Yaml+Allure的UI自动化测试框架实战指南,涵盖环境搭建、核心功能实现及高级技巧。通过数据驱动测试、页面操作封装和智能等待机制,提升测试效率与可维护性。Allure报告增强功能为团队提供直观的质量反馈,助力高效UI自动化测试。

weixin_28826521的博客 488

ssm核心面试题汇总

ssm核心面试题个人汇总,干货满满

程序员码小跳 6241

【Unity 实用工具篇】✨| 使用Fungus插件制作一个对话系统,简单好学易上手

今天带来的是Unity中一款简单易用的对话插件Fungus,它是一个免费的交互式的对话系统。 Fungus是Unity免费的一款开源的插件,它可以无代码的实现玩家与NPC之间的对话,并且支持本地化,对相机、Sprite及音乐音效的控制。 学会使用该插件就可以做一些对话剧情类的游戏了,还是非常好用的,下面就来学习一下Fungus具体怎么使用吧!

努力前行,总会成为自己心中的那道光 1万+

Java面试题及答案整理( 2023年 6 月最新版,持续更新)

死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。

qq13321123的博客 4万+

节省人力成本40%!仓储物流AI机器人调度系统实战案例(含路径规划算法与系统架构图)

首先,我们需要定义一个Node类self.x = x # 节点x坐标self.y = y # 节点y坐标self.g = g # 从起点到当前节点的实际成本(g值)self.h = h # 从当前节点到终点的启发式成本(h值)self.f = g + h # 总成本(f值)self.parent = None # 父节点(用于回溯路径)self.task_id = task_id # 任务IDself.priority = priority # 任务优先级(1=最高,5=最低)

小程序开发 950

4、双足机器人mpc基础概念

机器人控制实际上不是连续的,是离散的,这就是控制信号的采样周期dt,一般每1ms对机器人发起一次控制信号。一般来说,dt越小,控制器的响应速度越快,但是由于预测的精度有限,如果控制时域过长,预测的误差会逐渐累积,导致控制器的性能下降。注意:1)在程序处理时,u的维度并不是由机器人的自由度确定的,是由其变量的个数及每个变量的空间维度确定,对于双足,采用力矩和力来控制,则u的维度是“2*2*3=12”。机器人实际运动过程中表现出来的状态x,x和xd是一致的,也包括运动速度ν、角速度ω、角度θ、位置p等。

1213

SSM常用面试题60道(SpringMVC+Spring+Mybatis)

收集整理出来的SSM常用面试题60道(SpringMVC+Spring+Mybatis)

weixin_46190145的博客 1295

最新2026年《网络数据安全风险评估办法》条款解读

大型企业集团IT变革下的零信任安全体系建设方案(55页).pptx。以数据安全为核心的安全立体防御体系解决方案(41页).pptx。让数据安全合规地创造价值(15页 PPT).pptx。大型集团数据安全应急预案(57页).docx。数据安全治理与评估服务业务介绍.pptx。数据安全管理实践(17页).pptx。大数据安全架构设计方案.pptx。大数据安全规划总体方案.pptx。数据库安全综合治理方案.pptx。医疗数据安全建设方案.pptx。数据安全框架规划图.pptx。数据安全治理方案.pptx。

cdfunlove的博客 47

Java最全后端开发基础-Struts2框架学习-003—Struts2注解开发使用示例,阿里官方推荐

现在正是金三银四的春招高潮,前阵子小编一直在搭建自己的网站,并整理了全套的**【一线互联网大厂Java核心面试题库+解析】:包括Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等**本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录需要这份系统化的资料的朋友,可以点击这里获取。

2401_84688317的博客 1029

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Java面试题 (八股文+场景题)及答案最全总结(2025版)

本次内容涵盖:Java基础,JVM,多线程,数据库(MySQL/Redis)SSM,Dubbo,网络,MQ,Zookeeper,Netty,微服务,大数据,算法,项目,设计模式等,篇幅足足近2千页,面试必不可少——刷题!10、Elasticsearch 中的节点(比如共 20 个),其中的 10 个选了一个master,另外 10 个选了另一个 master,怎么办?1、elasticsearch 了解多少,说说你们公司 es 的集群架构,索引数据大小,分片有多少,以及一些调优手段。

sheep404的博客 768

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

架构师面试题:2年工作经验java简历包装,面试为什么公司不通过

1, 简历适度包装,不等同弄虚作假 2, 实事求是,才能让职场走得更顺 3, 诚信是用人的最基本底线。 对于java工程师的面试,绝大多数的公司不是去给你做两个题,考考你对于整个java系统知识的了解。即使有考题,有笔试,只不过是最低的一个门槛,而不是主要的考核方式。对方的技术人员,招聘方的技术人员一定会和面试者聊聊他过往做的项目经历。而你到底有没有料,一开口就知道 别的地方不清楚,就深圳...

weixin_44174165的博客 7595

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

JAVA面试题

Java技术的基础与高级知识点(面试题)

Fancy___Fancy的博客 964

想去一线大厂先过这一关,-Java-SSM框架相关面试题整理!

文章中涉及到的知识点我都已经整理成了资料,录制了视频供大家下载学习,诚意满满,希望可以帮助在这个行业发展的朋友,在论坛博客等地方少花些时间找资料,把有限的时间,真正花在学习上,所以我把这些资料,分享出来。相信对于已经工作和遇到技术瓶颈的朋友们,在这份资料中一定都有你需要的内容。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!相信对于已经工作和遇到技术瓶颈的朋友们,在这份资料中一定都有你需要的内容。**

2401_84048161的博客 270

真牛!java分布式缓存框架

一、Java基础 1、java中有哪些基本类型? 2、java为什么能够跨平台运行? 3、String是基本数据类型吗?我可不可以写个类继承于String? 4、谈谈&和&&的区别? 5、Switch语句里面的条件可不可以是byte、long、String?使用时候还应注意什么? 6、short s1=1;s1=s1+1;有什么错? 7、char为什么能存贮一个汉字? 9、final关键字的用法? 10、静态变量和实例变量的区别? 11、面向对象的基本特征是什么? 12、作用域pub

m0_56259669的博客 617

Qwen2.5-0.5B Instruct在Java面试题生成中的应用

本文介绍了如何在星图GPU平台上自动化部署🤖Qwen2.5-0.5B Instruct镜像,实现Java面试题的智能生成。该模型能够根据需求快速生成涵盖基础概念、编程题和系统设计等多难度层级的面试题目,显著提升技术招聘的题目准备效率和质量。

weixin_35835018的博客 82

阿里顶尖架构师分享:2——6年Java开发面试题,要刷题的赶紧来!

话不多说,直接进入主题: 以下面试题是针对2-6年Java开发人员,快来围观,不喜勿喷。 一、数据结构与算法基础 说一下几种常见的排序算法和分别的复杂度。 用Java写一个冒泡排序算法 描述一下链式存储结构。 如何遍历一棵二叉树? 倒排一个LinkedList。 用Java写一个递归遍历目录下面的所有文件。 二、Java基础 接口与抽象类的区别? Java中的异常有哪几类?分别怎么使用? 常用的集合类有哪些?比如List如何排序? ArrayList和LinkedList内部的实现大致是怎样的?他们之间.

weixin_47067712的博客 190

Qwen2.5-0.5B Instruct实现Java面试题自动生成与解析

本文介绍了如何在星图GPU平台上自动化部署🤖Qwen2.5-0.5B Instruct镜像,实现Java面试题的自动生成与解析。该方案能快速生成涵盖基础语法、并发编程等主题的高质量面试题,并附带参考答案和难度评级,显著提升技术招聘和备考效率。

weixin_36213081的博客 257

JAVA SSM框架基础面试题

                                                             微信关注公众号 “java大数据修炼之道”,选择“置顶公众号”                                                                              技术分享第一时间送达!                 ...

hello world! 610

Java 208 道面试题:Java 基础模块答案

目前市面上的面试题存在两大问题:第一,题目太旧好久没有更新了,还都停留在 2010 年之前的状态;第二,近几年 JDK 更新和发布都很快,Java 的用法也变了不少,加上 Java 技术栈也加入了很多新的框架,比如 Spring Boot、Spring Cloud 等,但类似的面试题却极少。 相比与这些问题,我的这 208 道面试题,包含了以下 4 个特点: 披沙拣金提炼出每个 Java 模块中...

磊哥聊Java 1万+

Java基础面试题50题

1,""空字符串的作用 package com.neuedu.nineteen; public class Test { public static void main(String[] args) { String s=""; for (char i = 'a'; i < 'd'; i++) { s=s+i;//输出...

渣渣的成长之路 6万+

java——《面试题——基础篇》

1、Java语言有哪些特点1、简单易学、有丰富的类库2、面向对象(Java最重要的特性,让程序耦合度更低,内聚性更高)3、与平台无关性(JVM是Java跨平台使用的根本)4、可靠安全5、支持多线程。

行秋的博客 9851
上一篇: 《面试题》3、数据库MySQL
下一篇: DolphinScheduler二次开发
CarsonBigData
博客等级 码龄9年 8316粉丝 166原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值