- 博客(26)
- 收藏
- 关注
原创 Eureka 高频考点
**答**:Eureka 是服务发现组件,用于微服务架构中的 **服务注册与发现**。| **易用性** | 简单 | 复杂 | 简单 || **一致性协议** | AP(最终一致性) | CP(强一致性) | AP + CP(可切换) |在 Java 微服务面试中,Eureka 是高频考点之一。
2025-02-05 14:23:16
737
原创 Eureka
2. **Eureka Client(客户端)**:服务提供者(Provider)和服务消费者(Consumer),通过客户端与 Eureka Server 通信。1. **服务注册**:服务启动时,向 Eureka Server 发送自身信息(如 IP、端口、服务名)。1. **Eureka Server(服务端)**:注册中心,负责接收服务实例的注册信息,并维护服务列表。**验证**:访问 `http://localhost:8761` 进入 Eureka 控制台。
2025-02-05 14:02:25
560
原创 并发背后的技术与原理
综上所述,一个Java Web项目能够同时支持多个用户请求而不会导致数据混乱,这主要得益于Java的多线程处理机制、Web容器的请求处理模型、良好的编程实践以及会话管理机制。这些线程在Java虚拟机(JVM)内部是隔离的,它们各自拥有独立的栈空间和局部变量,因此一个线程中的操作不会直接影响到另一个线程。每个请求都是独立的,并且与之前的请求无关。一个Java Web项目能够同时支持多个用户请求,而不会导致数据混乱,这主要得益于Java平台的多线程处理机制、Web容器的请求处理模型以及良好的编程实践。
2024-12-09 17:07:08
1842
原创 开发平台遇到的问题:
加上依赖和@EnableRedisHttpSession注解。options请求 在doFilter方法需直接返回。1.Vue axios 跨域请求无法带上cookie。配置vue axios请求,允许其携带cookie。3.options请求(跨域预检)2.session共享问题。后端也需要配置允许跨域。
2024-07-15 16:59:22
140
原创 java线程的同步的实现
在Java中,线程的同步是通过一系列机制来实现的,这些机制确保多个线程能够安全地访问共享资源,从而避免数据竞争和不一致的问题。
2024-03-25 17:30:04
310
原创 java核心面试题解析(持续更新)
IoC 是 Inversion of Control 的简写,译为“控制反转”,它不是一门技术,而是一种设计思想,是一个重要的面向对象编程法则,能够指导我们如何设计出松耦合、更优良的程序。Spring 通过 IoC 容器来管理所有 Java 对象的实例化和初始化,控制对象与对象之间的依赖关系。我们将由 IoC 容器管理的 Java 对象称为 Spring Bean,它与使用关键字 new 创建的 Java 对象没有任何区别。
2024-03-21 14:32:53
2438
1
原创 Spring MVC面试简答题
配置时需要指定前缀和后缀,以及视图解析器的类名。通过这种方式,可以实现更灵活的视图解析逻辑,比如根据视图名称的后缀来选择不同的视图技术(如JSP、Thymeleaf等)。DispatcherServlet是Spring MVC的核心,作为前端控制器,它负责接收所有的HTTP请求,并根据请求信息调用相应的处理器(控制器方法)。在Spring MVC中,配置静态资源的访问通常涉及在Spring的配置文件中设置资源处理器,或者通过Spring Boot的自动配置功能(如果你使用的是Spring Boot)。
2024-03-21 10:45:10
1956
1
原创 MyBatis面试简答题
由于PreparedStatement是预编译的,因此执行相同的SQL语句时,MyBatis可以重复使用该PreparedStatement对象,避免了SQL语句的重复解析和编译,提高了性能。MyBatis的事务管理机制基于JDBC的事务管理机制,允许将多个数据库操作封装在一个事务中,并在事务的开始和结束时自动提交或回滚。它的主要作用是自动扫描并加载项目中定义的Mapper接口,然后将这些接口与相应的映射文件关联起来,以便在运行时动态创建Mapper的代理实现类。但这种方式在大数据量的情况下性能不佳。
2024-03-19 15:48:02
1764
原创 MySQL面试高频简答题及答案解析
在数据库中,视图是一个虚拟的表,其内容由查询定义。数据库的规范化(Normalization)是数据库设计中的一个重要过程,它涉及到将数据库结构分解为更小的、更稳定的部分,同时减少数据冗余和依赖关系。数据库的规范化(Normalization)是数据库设计中的一个重要过程,旨在消除数据冗余、减少数据不一致性,并提高数据的完整性和系统的灵活性。然而,需要注意的是,索引虽然可以提高查询性能,但它也会占用额外的磁盘空间,并且在插入、更新或删除数据时,索引可能需要重新构建或调整,这可能会增加这些操作的开销。
2024-03-19 15:20:50
1040
原创 Java高级开发工程师面试试卷
实现类则提供了这些接口的具体实现,如ArrayList、HashSet、LinkedList等,它们实现了接口中定义的方法,提供了集合的具体存储和访问机制。算法部分则提供了一系列对集合进行操作的工具类和方法,如Collections类中的排序、查找等,它们可以在不修改原有集合实现的情况下,对集合进行各种操作。【解析】SSM框架中的SpringMVC用于处理HTTP请求,它提供了控制器(Controller)、模型(Model)和视图(View)之间的交互方式,实现了MVC(模型-视图-控制器)设计模式。
2024-03-12 16:49:39
980
1
原创 Java及框架面试试卷
通过ORM,开发者可以定义Java类与数据库表之间的对应关系,包括类属性与表字段的映射、类关系与表关系的映射等。此外,Spring还提供了更具体的注解,如@Service用于业务逻辑组件,@Repository用于数据访问组件,@Controller用于Web控制器组件,这些注解都是@Component的特化形式。【解析】在MyBatis中,用于定义SQL语句的XML元素包括用于查询操作,用于插入操作,用于更新操作,以及用于删除操作。
2024-03-12 16:44:45
870
1
原创 Java框架面试试卷
SpringMVC是Spring框架中用于构建Web应用的模块,Spring AOP是面向切面编程的模块,Spring Boot则是用于简化Spring应用开发的工具。IoC(控制反转)是Spring框架的核心思想之一,它强调将原本由代码直接操控的对象的调用权交给Spring容器来管理,由Spring容器来控制对象的生命周期和依赖关系。【解析】在Spring框架中,IoC容器(控制反转容器)用于管理Bean的生命周期,包括Bean的创建、初始化、销毁等过程,以及实现Bean之间的依赖注入。
2024-03-12 16:38:50
885
2
原创 用Redisson实现Redis分布式锁
它提供了许多分布式Java对象和服务,包括分布式锁、分布式集合、分布式原子类等。请注意,上述示例仅用于教学目的,实际使用时你需要根据自己的需求来调整锁的超时时间、重试策略等参数。方法尝试获取锁,如果锁当前被其他客户端持有,它会等待最多10秒,如果10秒内获得了锁,则方法返回。在业务代码执行完毕后,应该总是确保调用此方法以释放锁,即使发生异常也是如此。首先,确保你已经添加了Redisson的的依赖到你的项目中。如果成功获取,则执行一些业务逻辑,并在完成后释放锁。类,它封装了获取和释放锁的逻辑。
2024-03-06 16:15:37
448
1
原创 使用Jedis实现Redis分布式锁示例
请注意,这个示例仅用于教学目的,它假设只有一个Redis实例,没有考虑Redis集群或哨兵模式。在生产环境中,你可能需要使用Redisson等更强大的库,它们提供了更多的特性和更好的可靠性。在Java中,你可以使用Jedis或者Redisson等客户端库来实现Redis分布式锁。方法中,我们创建了一个Jedis实例来连接Redis服务器,并尝试获取锁。如果获取成功,则执行一些需要保护的代码,并在完成后释放锁。方法用于释放锁,它使用Lua脚本来确保只有当锁由当前请求持有时才删除锁。方法尝试获取锁,它使用。
2024-03-06 15:40:21
567
1
原创 Spring Cloud 核心知识总结
Spring Cloud大厂面试中可能遇到的问题:1.请解释一下Spring Cloud是什么,以及它的主要组件有哪些?答:Spring Cloud是一个基于Spring Boot实现的微服务架构开发工具集。它提供了一系列框架和组件,用于简化分布式系统的构建,包括服务注册与发现、熔断机制、网关路由、配置中心、消息总线、负载均衡、链路追踪等。这些组件共同构成了Spring Cloud的完整功能体系,为开发者提供了构建微服务架构所需的各种功能和工具。
2024-03-01 10:28:07
913
1
原创 Docker 介绍
1. 开发环境一致性:开发团队可以使用相同的Docker镜像,保证他们在不同的开发机上运行相同的开发环境,避免不同环境之间的差异引发的问题。总之,Docker提供了一种轻量级、灵活和可移植的容器化解决方案,可以在应用程序开发、测试和部署过程中带来诸多优势。3. 可移植性:Docker容器将应用程序和其依赖项打包为一个独立的可执行文件,可以在不同的操作系统和硬件上运行。4. 快速部署:Docker容器的启动时间非常短,可以在几秒内启动一个容器,大大提高了应用程序的部署效率。
2024-02-27 13:16:46
399
1
原创 IDEA快捷键
类似Eclipse,Intellij的Ctrl+N/Ctrl+Shift+N可以打开类或资源,但Intellij更加智能一些,我们输入的任何字符都将看作模糊匹配,省却了Eclipse中还有输入*的麻烦。也正是强大的智能和重构功能,使Intellij下的TDD开发非常顺畅。注释/反注释指定的语句,这个功能很象PB中提供的一个功能,它可以注释和反注释你所选择的语句(使用单行注释符号"//"),你也可以用Ctrl + Shift + / 来进行多行语句的注释(即使用多行注释符号"/* ... */")
2023-12-22 09:44:01
1123
原创 idea快捷键
此外,Ctrl+Left/Right移动光标到前/后单词,Ctrl+[/]移动到前/后代码块,这些类Vim风格的光标移动也是一大亮点。类似Eclipse,Intellij的Ctrl+N/Ctrl+Shift+N可以打开类或资源,但Intellij更加智能一些,我们输入的任何字符都将看作模糊匹配,省却了Eclipse中还有输入*的麻烦。此外还有些我自定义的,例如水平分屏Ctrl+|等,和一些神奇的小功能Ctrl+Shift+V粘贴很早以前拷贝过的,Alt+Shift+Insert进入到列模式进行按列选中。
2023-12-22 09:26:16
833
原创 mysql 面试必考题型
SELECT sc.cid AS "课程ID",c.cname AS "课程名", IFNULL(AVG(sc.score),0) AS "平均成绩",select s.sid as 学号,s.sname as 姓名,count(sc.cid) as 选课数,SUM(sc.score) as 总成绩。SELECT sc.cid AS "课程ID",c.cname AS "课程名", AVG(sc.score) AS "平均成绩",
2023-04-21 17:10:59
149
1
jce-policy-8
2024-03-22
instantclient-basic-windows.x64-19.8.0.0.0dbru
2024-03-19
eclipse-jee-2019-12-R-win32-x86-64
2024-03-19
redis-desktop-manager-0.8.8.384 Redis 客户端安装包
2024-03-19
Git-2.27.0-64-bit
2024-03-19
ideaIU-2022.3.3
2024-03-19
eclipse4.5.1
2024-03-19
Beyond Compare
2024-03-19
Alibaba-Java-Coding-Guidelines-2.1.1
2024-03-19
lombok-plugin-0.34.1-2019.1
2024-03-19
freeIdeaMybatis-2020
2024-03-19
codeblocks-20.03mingw-setup
2024-03-19
apache-ant-1.10.13-bin
2024-03-19
vue-devtools-jb51
2024-03-19
MavenRunHelper maven解决依赖冲突插件
2024-03-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人