自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(97)
  • 收藏
  • 关注

原创 Java面试:企业协同SaaS中的技术挑战与解决方案

老王:好的,谢飞机,今天的面试就到这里,我们会在一周内给你答复。你有什么问题吗?谢飞机。

2025-05-30 14:57:20 281

原创 Java 大厂面试:从基础到应用的技术盘点

面试官:好的,今天的面试就到这里。回去等通知吧。

2025-05-30 14:51:23 296

原创 面试大厂Java:从Spring Boot到微服务架构

在一个阳光明媚的下午,谢飞机来到了某知名互联网大厂的面试现场,迎接他的是一位严肃的面试官。

2025-05-30 14:09:37 633 1

原创 Java面试:从Spring Boot到分布式系统的技术探讨

"这个简单,我会使用Spring Boot快速启动项目,然后使用Spring MVC来创建一些RESTful接口。"谢先生,假设我们在一个电商平台工作,你将如何使用Spring Boot构建一个订单处理服务?"呃,我会用Spring Cloud来做服务的注册和发现,嗯,还有用Redis来做缓存。"嗯,我会用Kafka来做消息队列,然后用Spring WebFlux来处理异步消息。"这个嘛,可以用Hadoop来处理大数据,然后用Spring AI来分析数据。"好的,今天的面试就到这里,请回去等通知。

2025-05-29 14:54:20 617

原创 互联网大厂Java求职者面试实录:严肃面试官与搞笑程序员谢飞机的对话

哦,JVM是Java非常核心的东西,它就像是一个神秘的黑盒子,帮助我们运行Java程序。“HashMap嘛,就是用来快速找到值的一个东西,我觉得它就像一个魔法口袋,随便往里丢东西,想要的时候就能拿出来。“这个我知道,IOC就是控制反转,意思就是我不控制它,它控制我,哈哈。“Docker嘛,就是一个盒子,把我们的程序和环境都装进去,带着走。“单例模式就是一种特别的方式,只允许一个实例,像是一个独生子女。“我们先从简单的开始,谈谈Java中的JVM是什么?“好的,今天的面试就到这里,回去等通知吧。

2025-05-29 14:50:21 230

原创 Java互联网大厂面试:从Spring Boot到Kafka的技术深度探索

Spring Boot非常好用,它让我们可以快速启动项目,避免了复杂的配置。在某家互联网大厂的面试中,面试官A是一位技术老兵,而被面试者谢飞机,号称有丰富的Java开发经验。:呃,Kafka,嗯,它能处理大量数据吧?我用过它来做消息传递,不过具体细节我记不太清了,反正挺厉害的。:是的,模型选择要根据具体的应用场景。:这个嘛,平时大家都说要注意SQL注入和XSS攻击,我觉得这些是比较常见的。:准确性嘛,可能要看模型的预测效果,可以用一些指标来衡量,比如准确率啥的。:对,JWT是身份认证的好帮手。

2025-05-29 14:45:26 667

原创 Java求职面试:从核心技术到AI与大数据的全面考核

它会自动扫描类路径,加载应用的主配置类(即@SpringBootApplication注解标识的类),并启动嵌入式的Web服务器(如Tomcat)。:嗯,Spring Boot启动的时候会自动扫描组件,加载配置,然后通过SpringApplication类来启动应用。:自动配置,嘿嘿,就是Spring Boot会根据类路径中的jar包和自定义的配置来判断需要创建哪些bean。:Redis是一种键值存储,常用于缓存,因为它的读写速度很快,而且支持持久化。接下来,谈谈你对Redis在缓存技术中的应用理解。

2025-05-29 14:42:28 1033

原创 Java面试实战:从Spring Boot到微服务与AI的全栈挑战

本文通过模拟Java面试场景,涵盖了从Spring Boot到微服务与AI的全栈技术问题,帮助读者了解Java在不同场景下的应用及面试中可能遇到的挑战。不过,有时候也会用到gRPC来提高性能。:Java SE是Java平台的核心,版本8引入了Lambda表达式和Stream API,极大地方便了集合操作和并行处理。谢飞机:当然是Spring Security啦,配合OAuth2来做认证和授权,Keycloak也用过,但不太熟。谢飞机:AI,嗯,我听说过Spring AI,不过具体怎么用嘛,还在学习中。

2025-05-29 14:36:20 720

原创 Java面试实战:从Spring到大数据的全栈挑战

Netflix OSS是Netflix开源的一系列工具,Spring Cloud集成了其中的组件,提供全面的微服务解决方案。“呃,Spring Cloud就像是一个超级市场,里面有各种微服务工具,比如Eureka、Zuul什么的,就像买菜一样,你可以挑自己需要的。“不错,Spring Boot确实简化了配置,适合微服务。“Hibernate是那种全自动的,而MyBatis更像是手动挡,得自己换挡,不过开起来更有感觉。最后,面试官微笑着对谢飞机说:“今天的面试就到这里,你的表现很有趣,回去等通知吧。

2025-05-29 14:21:23 1050

原创 Java 面试实录:从Spring到微服务的技术探讨

在一个明亮的会议室里,严肃的面试官与搞笑的程序员谢飞机正进行一场关于Java技术栈的面试。谢飞机:“Spring Boot就像是Java界的速溶咖啡,开箱即用,简化了Spring应用的配置。谢飞机:“呃,Prometheus是数据收集器,Grafana负责展示,像新闻联播一样。面试官:“谢飞机,能解释一下Spring Boot的核心功能吗?谢飞机:“我会用Eureka,就像电话本一样,服务都能找到彼此。谢飞机:“Kafka就像一个超级邮箱,处理大量的消息传递。谢飞机:“它就像一把锁,保护应用不受非法访问。

2025-05-29 14:15:30 558

原创 Java面试场景:互联网大厂求职者的技术挑战

Spring Cloud 提供微服务架构的治理,如服务发现、负载均衡等,而 Kubernetes 提供容器化应用的编排和管理,两者可以结合使用,提供完整的微服务解决方案。: Java SE 是标准版,适用于桌面应用,而 Jakarta EE 是企业版,适用于开发和部署企业应用,提供了丰富的 API 和服务,如事务管理、持久化等。Spring Cloud 用于微服务,Kubernetes 是用来管理容器的。这个嘛,Java SE 是标准版,Jakarta EE 是企业版,主要用来开发企业级应用,嗯……

2025-05-29 14:12:26 377

原创 互联网大厂面试全攻略:Java技术栈与业务场景深度剖析

在一个阳光明媚的上午,谢飞机走进了一家知名的互联网大厂,准备迎接一场Java开发的面试。面试官是一位严肃而经验丰富的技术专家。

2025-05-29 14:03:34 254

原创 Java面试指南:互联网大厂求职者的技术挑战

在一家知名的互联网大厂,一位严肃的面试官正准备面试一名求职者,谢飞机,这位以搞笑而闻名的水货程序员。面试官决定通过一系列与Java及其相关技术栈相关的问题,结合电商场景,来考察谢飞机的技术水平。好的,今天的面试就到这里吧,回去等通知。

2025-05-29 13:54:22 405

原创 Java求职面试:从Spring到微服务的技术挑战

当然可以,Spring Boot是一个用于简化Spring应用开发的框架,它通过自动配置和约定优于配置的理念,让开发者可以快速启动项目。Spring Cloud提供了一系列工具来简化微服务架构,比如Eureka用于服务注册和发现,Zuul用于API网关,就像是微服务世界的瑞士军刀。Spring Data JDBC提供了一种简化数据库访问的方式,避免了JPA的复杂性,适合需要直接数据库操作的应用。OAuth2是一个授权框架,允许第三方应用获取有限的访问权限,通常用于保护用户资源的访问,避免直接暴露用户凭证。

2025-05-29 13:50:32 1001

原创 互联网大厂面试实录:谢飞机的爆笑面试之旅

JVM内存分为多个区域:方法区存放类信息、常量、静态变量,堆是对象实例的存储区域,栈是方法执行的内存空间,本地方法栈用于本地方法服务,程序计数器是当前线程执行字节码的位置指示器。:这个,JVM内存模型就像一个大房子,有客厅(方法区)、厨房(堆)、卧室(栈)、卫生间(本地方法栈)和储藏室(程序计数器)。:这就像一个是顺序摆放的座位表(ArrayList),另一个是分组放东西的储物柜(HashMap)。:Redis是一个内存中的键值数据库,支持丰富的数据结构,优点是速度快,缺点是内存有限。

2025-05-28 15:03:08 380

原创 互联网大厂Java面试:谢飞机的搞笑面试之旅

SpringBoot的自动配置通过条件化注解和类路径扫描,自动配置Spring应用程序,简化了Spring应用的开发。RabbitMQ是一个消息队列系统,支持多种消息协议,主要用于解耦生产者和消费者、缓冲消息、提高系统的可扩展性。当然可以啦,Java有八大基本数据类型,int、boolean、char...呃...还有double啥的。这个嘛,ReentrantLock是个锁,能...呃...重入吧,就是可以重复锁定!嗯...这个...Java有堆和栈,垃圾回收是为了...呃...清理垃圾!

2025-05-28 15:00:29 230

原创 互联网大厂Java面试:从Spring到微服务的挑战

在这篇文章中,我们将模拟一场互联网大厂的Java面试,场景设置为企业协同与SaaS。面试官提出了一系列技术问题,涵盖了Java核心语言、Spring框架、微服务架构等技术点,并结合实际业务场景进行循序渐进的提问。最后,我们会对每个问题进行详细解答,以帮助读者更好地理解相关技术与应用。

2025-05-27 17:45:26 830

原创 互联网大厂Java求职面试:从Spring到微服务的技术探讨

在某个阳光明媚的下午,知名互联网公司的一间面试室里,严肃的面试官正准备对一位名叫谢飞机的程序员进行技术面试。以下是他们的对话:面试官:谢先生,您能简单介绍一下Spring Boot和Spring MVC的区别吗?谢飞机:呃,Spring Boot就像是一个快速启动的工具,Spring MVC则是用来处理Web请求的……呃,反正都很Spring吧。面试官:嗯,说得不错,Spring Boot确实简化了Spring的配置,帮助开发者快速构建应用。面试官:那您知道在使用Hibernate时,如何优化数据库查询性能

2025-05-27 17:44:21 588

原创 JavaWeb项目中解决乱码问题

1.在tomcat8.5+版本,内部已经解决了get请求的乱码问题,需要开发人员收到解决post请求的乱码问题在web.xml文件中添加如下配置<!--解决post请求的乱码问题--> <filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.Charac

2021-12-26 10:44:35 285

原创 在Spring MVC中,封装字符串日期类型参数出现的问题

1.问题:前端页面传入的日期参数是object类型的,格式如下图:后端controller中要将日期参数封装到实体类的属性上,那么必须得在该属性上加上这个注解,这样才不会报400错误(无法将前端页面获取到的时间参数格式化为 yyyy-MM-dd HH:mm:ss 格式)这样就解决了问题!...

2021-12-03 22:21:29 511

原创 Linux 安装MySql 5.7

1.在/usr目录下新建java/mysql目录,并进入到这个目录下2.运行wget http://dev.mysql.com/get/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar,下载mysql安装包3. 运行 tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar,解压文件4.centos7.6自带的类mysql数据库是mariadb,会跟mysql冲突,要先删除。运行rpm -e --nodeps mariadb

2021-11-14 22:21:23 1102

原创 Linux 安装tomcat

1.定位到/usr目录下ch /usr/2.在当前目录下创建一个空的目录:javamkdir java3.使用xftp软件将tomcat软件传输到 /usr/java 目录下4.解压tomcat.tar.gztar -zxvf tomcat压缩包名称5.将8080端口开放,并使之生效firewall-cmd --permanent --add-port=8080/tcpfirewall-cmd --reloadfirewall-cmd --query-port=8080/tcp

2021-11-14 21:43:06 463

原创 Linux系统下安装JDK

1.定位到/usr/目录下cd /usr/2.在当前目录下创建一个空的java目录,并且进入到改目录下mkdir javacd java3.使用xftp 传输软件将Linux版本的jdk软件(绿色解压缩就可以使用的)传输到 /usr/java/ 目录下4.解压jdk软件tar -zxvf jdk软件压缩包的名称5.配置环境变量编辑/etc/profile文件,在未见末尾添加两端代码vim /etc/profileexport JAVA_HOME=jdk安装的目录(/usr/ja

2021-11-14 21:22:58 834

原创 二、Spring MVC 进阶

一、Ajax异步交互传递json格式的数据Springmvc默认用MappingJackson2HttpMessageConverter对json数据进行转换,需要加入jackson的包;同时使用 <mvc:annotation-driven />这个注解实现其他数据和json数据之间的转换。<!--Springmvc默认用MappingJackson2HttpMessageConverter对json数据进行转换,需要加入jackson的包;同时使用 <mvc:annotat

2021-10-23 15:10:27 404

原创 一、Spring MVC 简介

一、Spring MVC 简介1.MVC模式MVC是软件工程中的一种软件架构模式,它是一种分离业务逻辑与显示界面的开发思想。* M(model)模型:处理业务逻辑,封装实体* V(view) 视图:展示内容* C(controller)控制器:负责调度分发(1.接收请求、2.调用模型、3.转发到视图)2.Spring MVC概述SpringMVC 是一种基于 Java 的实现 MVC 设计模式的轻量级 Web 框架,属于SpringFrameWork 的后续产品,已经融合在 Spring

2021-10-20 23:33:56 2312 1

原创 三、Spring JDBCTemplate & 声明式事务

一、Spring JDBCTemplate1.JDBCTemplate是什么?JdbcTemplate是spring框架中提供的一个模板对象,对原始繁琐的Jdbc API对象的简单封装。核心对象JdbcTemplate jdbcTemplate = new JdbcTemplate(DataSource dataSource);核心方法int update(); 执行增、删、改语句List<T> query(); 查询多个T queryForObject(); 查询一个 ne

2021-10-17 17:47:58 259

原创 二、Spring AOP

一、转账案例需求: 使用Spring框架整合DbUtils技术,实现用户转账功能。CREATE TABLE `account` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(32) DEFAULT NULL, `money` double DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf81.导入M

2021-10-15 18:07:17 172

原创 一、Spring IOC

一、Spring概述1.Spring是什么?Spring是分层的Java SE/EE应用的全栈式(full-stack),轻量级开源框架。- 全栈式:提供了表现层 SpringMVC和持久层 Spring JDBC Template以及 业务层 事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的Java EE 企业应用开源框架。- 轻量级与重量级的划分主要依据是看它使用了多少服务,启动时需要加载的资源多少以及耦合度等等。两大核心IOC(Inverse

2021-10-10 21:00:33 419

原创 三、MyBatis加载策略及注解开发

一、MyBatis加载策略1.什么是延迟加载?问题:Mybatis中一对一,一对多,多对多关系的配置及实现,可以实现对象的关联查询。实际开发过程中很多时候我们并不需要总是在加载用户信息时就一定要加载他的订单信息。此时就是我们所说的延迟加载。举个栗子在一对多中,当我们有一个用户,它有个100个订单 在查询用户的时候,要不要把关联的订单查出来? 在查询订单的时候,要不要把关联的用户查出来?答:在查询用户时,用户下的订单应该是,什么时候用,什么时候查询。在查询订单时,订单所属的用户信息应该

2021-10-04 23:44:28 383

原创 二、MyBatis复杂映射&配置文件深入

一、MyBatis高级查询1.resultMap属性前言:在建立对象关系映射时,如果实体类中的属性名和数据库表中的字段名一致,使用resultType属性可以将查询结果自动封装到实体类中。那如果实体类中的属性名和数据库表中的字段名不一致,就需要使用restltMap实现将查询结果手动封装到实体类中。(1)编写UserMapper接口package cn.xuguowen.mapper;import cn.xuguowen.pojo.User;import java.util.List;

2021-10-01 20:29:50 311

原创 一、Mybatis简介

一、MyBatis简介1.1原始JDBC操作的分析原始JDBC开发存在的问题如下:①:数据库创建连接,释放连接频繁操作,造成系统资源浪费从而影响系统性能。②:sql语句在代码中硬编码,造成代码不易维护;实际应用sql变化的可能较大,sql变动需要改变java代码。③:查询操作时,需要手动将结果集中的数据封装到实体类中。应对上述问题给出的解决方案:①:使用数据库连接池初始化连接资源。②:将sql语句抽取到xml文件中。③:使用反射、内省等底层技术,自动将实体与表进行属性与字段的自动映射。

2021-09-26 14:15:06 1011

原创 Ajax异步请求

一、什么是Ajax?Ajax是指一种创建交互式网页应用的开发技术。Ajax=异步JS和XML。二、Ajax的作用Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更行(局部更新)。传统的网页如果需要更新内容,必须重新加载整个网页页面。简单记: Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术, 维护用户体验性, 进行网页的局部刷新。三、异步与同步1.浏览器访问服务器的方式同步访问:客户端必须等待服务器端的响应,在等待过程中不

2021-09-22 12:28:44 520

原创 Java中BeanUtils工具类实现数据的封装

一、BeanUtils工具类1.介绍BeanUtils 是 Apache commons组件的成员之一,主要用于简化JavaBean封装数据的操作。可以将一个表单提交的所有数据封装到JavaBean中。2.导入依赖/jar包<dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <v

2021-09-15 14:34:46 617

原创 Java使用FileUpload实现文件的上传

一、文件上传的介绍1.文件上传的实质:文件的拷贝文件上传:从本地将文件拷贝到服务器磁盘上客户端:需要编写文件上传表单服务端:需要编写代码接收上传的文件二、客户端编码1.文件上传三要素表单的提交方式:post(get方式提交数据有大小限制)表达的enctype属性值:必须设置为 multipart/form-datamultipart/form-data:多部件文件上传,指表单数据有多部分构成。 既可以有文本数据,也可以有文件等二进制数据。表单中必须有文件上传项:file,必须

2021-09-14 16:44:44 4708

原创 XML语法

一、XML配置文件和properties配置文件的对比二、XML的基本语法<?xml version="1.0" encoding="utf-8" ?><!-- xml文件的文档声明,需要注意的是:必须写在文件的开头位置,必须是第一行,注释都不可以放在第一行 --><!-- XML文件中有且只有一个根元素users元素 --><users> <!-- 元素标签的命名中不可以包含 空格 和一些特殊符号.如 : -->

2021-09-09 21:51:25 351

原创 IP基本原理

IP基本原理一、交换机和路由器的区别简单粗糙的进行一下区别二、IP头部信息详解Version:版本,用于标识封装是IPv4还是IPv6IHL:IP头部长度,描述了数据包IP头部信息的长度Type Of Service:服务类型,用于标识DSCP或IP优先级,用于QOS识别Total Length:数据包的总长度Identification:标识符,用于标识某个数据分片来源于那个数据包Flags:标志,可以标识数据包是否禁止分片,也可以标识某个数据分片是否是最后一个分片Fragment

2021-09-07 17:54:51 1857

原创 Java实现冒泡排序

1.冒泡排序思路分析图2.根据图示先简单的实现每一轮的循环比较public class BubbleSort { public static void main(String[] args) { int[] arr = new int[]{24, 69, 80, 57, 13}; // 第一轮的比较 for (int j = 0; j < 4; j++) { if (arr[j] > arr[j + 1])

2021-09-07 17:49:55 136

原创 广域网基本原理

广域网基本原理一、广域网使用的协议及电缆1.物理层串行电缆光纤 EPON2.数据链路层HDLC 淘汰帧中继 淘汰PPP 点到点的协议,某些场景会使用以太网 某些场景会使用3.网络层IP协议二、连接方式1.电路交换PSTNISDN 淘汰2.分组交换帧中继 淘汰3.ADSL4.EPON(重点)三、广域网接入分类1.接入到互联网2.远程连接到分支机构高速专线VPN...

2021-08-29 09:19:13 345

原创 GET&POST请求方式

常用的浏览器发送请求的方式有GET、POST请求1.哪些操作会发送get请求在浏览器的地址栏中访问URL,回车超链接标签也会发起get请求form表单中可以发送get请求1.1 验证上述方式发送get请求(1)编写html页面<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>测试get和post请求方式的种类有哪些</t

2021-08-28 20:12:28 578

原创 局域网基本原理

局域网基本原理一、使用的协议以及线缆1.物理层双绞线、同轴电缆、光纤、无线电2.数据链路层以太网令牌环 淘汰FDDI(光纤分布式接口) 淘汰3.网络层IPIPX 淘汰Apple talk 淘汰–二、局域网设备1.集线器:内部为总线拓扑任意时间只能由一台主机占用总线,连接的所有设备位于同一冲突域问题:那么如何判断任意时间是否有主机占用总线呢?CSMA/CD 带冲突检测的载波帧听多路访问。也就是说这个机制可以保证同一时间只有一台主机占用总线工作在物理层,没有寻址能力,所有数

2021-08-28 10:57:34 799

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除