自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java基础面试题3

一种卡死了的感觉(就是系统迁移中,点击了迁移,界面就不动了,但是程序还在执行,卡。异步:将用户请求放入消息队列,并反馈给用户,系统迁移程序已经启动,你可以关闭浏览。这种情况下,用户不能关闭界面,如果关闭了,即迁移程序就中断了。内存占用问题,由于写时复制,内存里面同时存在两个对象占用的内存,如果对象大。底层是数组实现,线程不安全,查询和修改非常快,但是增加和删除慢。底层是双向链表,线程不安全,查询和修改速度慢,但是增加和删除。底层是数组实现,线程安全的,操作的时候使用。读操作是不需要加锁的,直接获取,但是。

2023-12-29 16:54:34 578

原创 java基础面试题2

加载时,此时不一定有实例创, 没有实例,就不可以访问非静态成员。因为静态成员属于类, 随着类加载而加载到静态方法区内存,当类。方法引用:方法引用提供了非常有用语法,可以直接引用已有。改,且这种机制仅在自动装箱时候有用,在使用构造器创。相同,并不一定表示两个对象就相同,也就不一定适用于。让持有对象锁线程进入等待,设置超时纳秒数时间。方法,只能够说明这两个对象在散列存储结构中。创,因此静态环境中,不可以访问非静态!中属于类,它在所有实例中值一样。对象方法,比较也引用内存地址值;方法,可以自定义两个对象否相等。

2023-12-27 21:44:51 379

原创 java基础面试题1

封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的。样的对象引用调用同样的方法但是做了不同的事情。对本包访问而设计,任何处于本包下的属性、方法、类、接口等,都可以相互访问。有抽象方法的类必须被声明为。可以说,封装就是隐藏一切可隐藏的东西,只向外界提供最简单的编程接口。修饰符:当定义变量、方法以及类时,没有写访问修饰符,则代表默认的修饰符。修饰符:表示受保护的,它主要的作用是保护子类,子类可以用它修饰的成员,修饰的属性、方法、类,只能被本类或者同一个包中的其他类访问到,针。

2023-12-26 21:39:20 582

原创 若依框架介绍

RuoYi(若依)是一款基于Spring Boot、Spring Cloud等开源框架搭建的企业级开发平台,旨在提供全面的解决方案,简化企业级应用开发,提高开发效率。总体来说,RuoYi框架具有完善的权限管理、代码生成、定时任务和系统监控等功能,是一个可靠的企业级开发平台,能够帮助开发者快速搭建稳定、高效的应用系统。提供了完善的用户权限管理功能,包括角色管理、菜单授权、部门管理等,便于对系统权限进行灵活的配置和管理。包含用户管理、角色管理、菜单管理、部门管理等功能,支持多维度的权限控制。

2023-12-25 21:44:04 1442

原创 redis持久化

RDB(Redis 数据库):RDB 持久性以指定的时间间隔执行数据集的时间点快照。在指定的时间间隔,执行数据集的时间点快照 实现类似照片记录效果的方式,就是把某一时刻的数据和状态以文件的形式写到磁盘上,也就是快照。这样一来即使故障宕机,快照文件也不会丢失,数据的可靠性也就得到了保证。这个快照文件就称为RDB文件(dump.rdb),其中,RDB就是Redis DataBase的缩写。将内存数据全部保存到磁盘dump.rdb文加中。

2023-12-21 21:50:44 384

原创 微信小程序开发者工具

它提供了项目创建和管理、页面编辑和预览、调试工具、模拟器和真机测试、代码管理和版本控制等功能,为开发者提供了全方位的支持。通过下载安装微信小程序开发者工具,开发者可以轻松地创建、调试和发布小程序,为用户提供优质的使用体验。页面编辑和预览:开发者可以在开发者工具中编辑小程序的页面文件,包括页面的结构、样式和逻辑代码。代码管理和版本控制:开发者工具集成了代码管理和版本控制功能,支持开发者进行代码的管理、比较和回滚。调试和测试:开发者工具提供了丰富的调试工具,使开发者能够方便地调试和测试小程序。

2023-12-20 21:29:01 466

原创 uni-app内容

**onLaunch:** 应用初始化时触发,全局只执行一次,例如在刷新任务或项目重启时。- **onShow:** 从后台进入前台触发,即当应用从编辑器或其他地方进入浏览器页面时。- **onHide:** 从前台进入后台时触发。- **onError:** 在应用报错时触发的生命周期方法。

2023-12-19 21:44:47 491

原创 uni-app基本标签

`navigationBarBackgroundColor`: 设置导航栏的背景颜色(全局页面)- `navigationBarTextStyle`: 导航栏标题颜色(仅支持 `black` 和 `white`)- `navigationBarTitleText`: 设置导航栏标题内容- `enablePullDownRefresh`: 是否开启页面下拉刷新。

2023-12-18 21:37:49 671

原创 Vue 3 父子组件传递数据

使用 `provide` 在祖先组件中提供数据,然后使用 `inject` 在子孙组件中接收这些数据。- 子组件通过在 `props` 对象中声明来接收父组件传递的数据。- 使用 `emit` 在子组件中触发自定义事件,传递数据给父组件。- 父组件监听子组件的自定义事件,并在对应的方法中处理数据。- 父组件通过属性绑定将数据传递给子组件。

2023-12-16 17:47:16 81

原创 Vue 3与Composition API:入门指南

在同一个标签内不建议同时使用`v-if`和`v-for`,因为在Vue 3中,`v-if`的优先级高于`v-for`。- 在Vue 3的`setup()`中,直接使用变量名调用方法或其他变量,不需要使用`this`。- 对于引用数据类型,可以使用`reactive()`声明,获取值时不需要`.value`操作。- `setup()`函数中声明的变量或方法需要在`return`中返回,否则无效。- `setup()`中声明的变量或方法需要在`return`中返回,否则不会生效。4. **注意事项**

2023-12-15 21:37:01 99

原创 回调地狱Axios

Promise 是一种用于处理异步操作的对象,它有三种状态:pending(进行中)、fulfilled(已成功)、rejected(已失败)。我们可以使用 `then` 和 `catch` 方法来处理 Promise 的结果和错误。现在你可以在 Vue 组件中使用 `this.$axios` 来发送网络请求。// 处理失败时的错误。// 示例:使用 Promise 处理异步操作。// 示例:使用 Axios 发送网络请求。// 设置 Axios 默认配置。// 设置 Axios 默认配置。

2023-12-13 21:50:54 418

原创 前端传值及本地存储方式的简单介绍

在前端,我们可以使用 `document.cookie` 来操作 Cookie,不过这种方式使用相对较少,因为它的一些限制和安全性问题。子组件通过 `$emit` 触发事件向父组件传递数据。父组件使用 `v-on` 监听子组件触发的事件,接收传递的数据。// 触发自定义事件并传递数据。// 使用父组件传递的 token。父组件通过属性向子组件传递数据,子组件使用 `props` 来接收这些数据。// 接收子组件传递的数据。-- 父组件 -->-- 子组件 -->-- 子组件 -->-- 父组件 -->

2023-12-12 21:28:25 96

原创 路由和网络周期

`componentDidUpdate()`: 组件更新完成后调用,可进行DOM操作或数据更新等操作。- `constructor()`: 构造函数,在组件被创建时调用,用于初始化状态和绑定事件处理函数。- `beforeUpdate()`: 数据更新时调用,发生在虚拟 DOM 重新渲染和打补丁之前。- `render()`: 渲染函数,在挂载阶段和更新阶段都会调用,负责渲染组件的 UI。- `render()`: 渲染函数,在更新阶段被调用。- `beforeMount()`: 在挂载之前被调用。

2023-12-11 21:42:20 183

原创 vue.js指令

v-if`根据条件向DOM中添加或移除元素,`v-else-if`和`v-else`用于多条件判断。`v-show`操作的是CSS中的`display`属性,根据表达式的值显示或隐藏元素。#### 4. 条件渲染 `v-if`, `v-else-if`, `v-else``v-model`用于实现表单元素与Vue实例数据的双向绑定。`v-html`指令能够识别文本内的HTML标签并进行渲染。`v-on`用于监听DOM事件,并在触发时执行对应的方法。`v-text`指令用于替换元素的文本内容。

2023-12-07 21:46:27 59

原创 MySQL面试题

当修改数据时,如果数据存在于 Buffer Pool 中,那直接修改 Buffer Pool 中数据所在的页,然后将其页设置为脏页(该页的内存数据和磁盘上的数据已经不一致),为了减少磁盘I/O,不会立即将脏页写入磁盘,后续由后台线程选择一个合适的时机将脏页写入到磁盘。在联合索引中,如果想要命中索引,需要按照建立索引时的字段顺序挨个使用,否则无法命中索引。MySQL 主库在收到客户端提交事务的请求之后,会先写入 binlog,再提交事务,更新存储引擎中的数据,事务提交完成后,返回给客户端“操作成功”的响应。

2023-12-04 21:47:14 127

原创 SQL优化的面试题

常用的工具如MySQL的`EXPLAIN`语句、Percona Toolkit、pt-query-digest等,用于分析查询执行计划、识别慢查询等。- 尽量避免在SELECT列表或WHERE子句中使用大量子查询,可以考虑优化成JOIN或其他更高效的查询方式。- 使用数据库提供的工具(如MySQL的`EXPLAIN`语句)分析查询计划,找出潜在的性能问题。- 使用数据库性能分析工具来监视数据库的性能指标,如查询时间、锁等待时间等,找出瓶颈所在。- 分析慢查询日志,识别常见的查询模式和耗时操作。

2023-12-02 18:02:39 390

原创 mysql面试相关问题及答案

常见数据类型包括整数类型(INT、TINYINT)、浮点类型(FLOAT、DOUBLE)、字符类型(CHAR、VARCHAR)、日期时间类型(DATE、TIME、DATETIME)等。- SQL语句包括数据查询(SELECT)、数据更新(UPDATE)、数据删除(DELETE)和数据插入(INSERT)等。- CHAR是固定长度的字符类型,长度不足会用空格填充,而VARCHAR是可变长度的字符类型,不会填充空格。- 常见范式包括第一范式(1NF)、第二范式(2NF)、第三范式(3NF)等。

2023-11-30 21:42:13 260

原创 MYSQL的聚合函数,存储过程的知识点

**事务控制:** 可以在存储过程中实现事务控制,保证数据的一致性和完整性。- **提高性能:** 存储过程可以减少与数据库服务器的通信次数,提高性能。- **参数支持:** 存储过程可以接受参数,并在执行时使用这些参数。- **COUNT():** 统计行数或非NULL值的数量。- **AVG():** 计算某列值的平均值。- **SUM():** 计算某列值的总和。- **MAX():** 获取某列的最大值。- **MIN():** 获取某列的最小值。**聚合函数示例:****存储过程示例:**

2023-11-29 21:44:00 185

原创 JVM的知识点

**堆与栈:** 深入探讨堆内存的划分(新生代、老年代、持久代/元空间),栈帧的结构,以及栈帧中局部变量表、操作数栈、动态链接、方法返回地址等的作用。- **JVM结构:** 详细介绍JVM内部结构,包括类加载器、运行时数据区域(堆、栈、方法区/元空间)、执行引擎和本地接口等组成部分的功能和作用。- **垃圾回收器:** 对各种垃圾回收器的工作原理和特点进行深入分析,包括串行、并行、并发、G1等回收器的适用场景和参数调优。### 4. JIT编译器与性能优化。### 3. 垃圾回收与内存管理。

2023-11-28 21:46:27 234

原创 SQL优化的总结

**查询优化器:** 详解查询优化器的作用,说明其如何选择最佳查询计划。- **连接池性能考虑:** 探讨常用连接池(HikariCP、C3P0等)的性能特点,如何选择和配置连接池参数,以及连接池大小的合理控制。- **选择和创建索引:** 根据查询需求和数据分布选择合适的列创建索引,避免过多或不必要的索引。- **避免全表扫描:** 提供避免全表扫描的方法,包括合理的数据过滤和条件查询、使用索引覆盖查询等。- **加载策略:** 解释延迟加载和预加载的概念,在不同场景下选择合适的加载策略以提高性能。

2023-11-27 21:22:35 123

原创 深入了解Java中SQL优化的关键技巧与实践

**延迟加载和预加载:** 详细解释延迟加载和预加载的概念,以及在Hibernate、MyBatis等框架中的实现方式和最佳实践。- **索引的类型与使用:** 解释B-Tree索引、哈希索引等类型的区别,以及如何根据查询需求合理创建和使用索引。- **缓存的使用:** 说明ORM框架中缓存的作用和优化策略,包括一级缓存、二级缓存的使用方法。- **数据库性能监控:** 介绍数据库性能监控的重要性,常用的监控指标,以及如何使用监控工具。2. 使用合适的数据库连接方式。4. 使用合适的数据库技术。

2023-11-25 17:26:57 110

原创 深入了解Spring Cloud中的分布式事务解决方案

**Spring Cloud中的分布式事务解决方案:** 介绍Spring Cloud中常用的分布式事务解决方案,如Seata、TX-LCN、Hmily等。Seata是一款开源的分布式事务解决方案,它主要由三个核心模块组成:事务协调器(TC)、资源管理器(RM)、分支事务(Branches)。- **分布式事务的原理和概念:** 解释分布式事务的工作原理,例如两阶段提交协议(2PC)、三阶段提交协议(3PC)、补偿事务等。解释本地事务与分布式事务的区别,以及为什么在分布式环境中需要特殊的事务管理机制。

2023-11-24 21:43:07 118

原创 网关和链路追踪

4. **可视化展示:** 通常以图形化方式展示整个请求的流转路径和各个服务的响应时间,帮助开发者和运维人员更直观地了解系统运行状态。1. **追踪请求:** 通过唯一标识符将整个请求链路连接起来,跟踪请求从一个微服务到另一个微服务的流转。2. **负载均衡:** 可以实现请求的负载均衡,将请求分发到多个实例中。5. **监控和日志:** 可以记录请求的日志,并提供监控和统计信息。4. **请求过滤:** 可以进行请求的过滤、验证和转换等操作。3. **安全控制:** 可以处理认证、授权等安全相关的操作。

2023-11-23 21:10:35 104

原创 Sentinel在Spring Cloud中的流量控制与熔断降级:保障你的微服务稳定运行

Sentinel是保障微服务稳定性的一把利器,在复杂的分布式系统中展现出其独特魅力。了解并合理应用Sentinel,将为你的项目保驾护航。

2023-11-22 21:19:30 199

原创 深入探究Spring Cloud中的OpenFeign和配置中心

OpenFeign是一个基于HTTP请求的声明式Web Service客户端,内部集成了Ribbon负载均衡器和Hystrix断路器,简化了服务间调用的过程。通过声明式的接口定义,开发者可以轻松定义和使用Feign客户端。```java// 示例代码:定义Feign客户端接口```在微服务架构中,配置管理是一个关键挑战。Spring Cloud提供了配置中心的解决方案,用于集中管理配置信息并支持动态刷新。

2023-11-21 19:51:52 65

原创 Java中的Spring Cloud:微服务与注册中心

Hystrix是一个服务容错组件,可以在服务出现故障或超时时,快速恢复服务的可用性。Eureka通过在网络中维护一个服务注册表,将服务的注册信息和健康状态汇总在一起,并向客户端提供服务的发现和负载均衡等功能。其中,微服务和注册中心是Spring Cloud的核心概念,它们的作用是将应用程序拆分成小的、自治的服务单元,并提供服务的注册、发现和配置管理等功能,从而实现分布式系统的高可靠性、高可扩展性和高性能。其中,注册中心是Spring Cloud中的一个重要组件,它负责服务的注册、发现和配置管理等功能。

2023-11-20 20:51:42 373

原创 Nginx在Java应用中的应用与作用

Nginx是一款高性能的开源Web服务器,也是一个反向代理服务器。它的轻量级和高效性使其成为构建现代Web架构的首选。

2023-11-18 16:25:55 123

原创 Java JPA详解:从入门到精通

Java Persistence API(JPA)是JavaEE 5规范中定义的一种ORM(对象关系映射)框架,它为开发人员提供了一种简单而强大的方式来将Java对象映射到关系型数据库中的表格中。JPA中的懒加载通常是由于延迟加载导致的,我们可以通过在实体类中使用@OneToMany、@ManyToMany等注解来指定关联关系,并在查询语句中使用FetchType.EAGER来强制加载关联实体。实体类通常用于映射数据库中的表格,我们需要在实体类中定义好表格中的每一个字段以及它们的类型。

2023-11-17 20:38:41 244

原创 关于Elasticsearch的自动补全、数据同步和集群,以下是相关的知识点

当有新数据加入时,Elasticsearch可以实现自动数据同步,保证每个节点都具有相同的数据。这可以通过Elasticsearch内置的“shard”机制来实现,即将索引划分为多个分片(shard),每个分片可以被分配给不同的节点,从而实现数据的分布式存储和自动同步。3. 集群:Elasticsearch可以构建一个分布式集群,使得数据可以存储在多台服务器上,实现数据的高可用性和可伸缩性。集群中的每个节点都可以处理查询请求和插入操作,并且会自动对数据进行分片和复制,从而提高系统的性能和可用性。

2023-11-16 21:09:48 278

原创 Java 中使用 Elasticsearch 进行 Boot 操作和 DSL 查询文档详解

通过本文的详细介绍,你应该已经了解了在 Spring Boot 项目中使用 Elasticsearch 进行 Boot 操作、DSL 查询文档以及搜索结果处理的基本步骤。这些操作是构建强大搜索引擎的基础,同时也是 Java 开发者在实际项目中不可或缺的技能。希望这篇文章对你有所帮助。

2023-11-15 21:20:17 721

原创 Elasticsearch 索引库操作与 Rest API 使用详解

通过本文的介绍,你应该对 Elasticsearch 中索引库的基本操作和 Rest API 有了更深入的理解。这些操作是构建强大搜索引擎的基础,同时也是 Java 开发者在实际项目中不可或缺的技能。在实际项目中,我们还可以结合高级搜索和聚合操作,提供更灵活和强大的搜索功能。希望这篇文章对你有所帮助。

2023-11-14 21:17:50 384

原创 Elasticsearch

类型(type) 类型是模拟mysql中的table概念,一个索引库下可以有不同类型的索引,比如商品索引,订单索引,其数据格式不同。而如果设置store为true,就会在_source以外额外存储一份数据,多余,因此一般我们都会将store设置为false,事实上,store的默认值就是false。在学习lucene和solr时,我们知道如果一个字段的store设置为false,那么在文档列表中就不会有这个字段的值,用户的搜索结果中不会显示出来。索引有了,接下来肯定是添加数据。

2023-11-13 17:24:29 409

原创 Elasticsearch 在 Java 开发中的应用

通过以上简要介绍,你可以在 Java 项目中开始使用 Elasticsearch,并充分利用其强大的搜索和分析功能。本文将介绍 Elasticsearch 在 Java 开发中的基本使用和一些实际场景中的应用。在使用 Elasticsearch 之前,首先需要建立与 Elasticsearch 服务器的连接。Elasticsearch 提供了强大的搜索功能,支持复杂的查询、聚合等操作。在 Elasticsearch 中,索引类似于数据库中的表。Elasticsearch 在 Java 开发中的应用。

2023-11-11 17:43:05 441

原创 Java多线程编程实践:从入门到精通

作为Java开发者,精通多线程编程是提高应用性能、提升用户体验的关键一环。本篇博客将带领大家深入探讨Java多线程的实践经验和技巧,助你更好地应对并发编程的各种挑战。无论你是刚刚踏入多线程的领域,还是希望进一步提升自己的水平,都将从本文中获益匪浅。通过本文的学习,我们深入了解了Java多线程的基本概念、创建方式、线程同步与锁、线程池的使用、线程间通信以及线程安全的数据访问。多线程编程是复杂而强大的工具,正确使用它将带来应用性能的提升和更好的用户体验。

2023-11-10 17:42:05 65

原创 Oauth2.0的内容

OAuth2.0的安全性建立在Token标识符的基础上,因为Token是由授权服务器签名并加密的,并且只有授权服务器可以验证Token的有效性。OAuth 2.0是一个授权协议,用于允许第三方应用程序访问用户在另一个应用程序上存储的受保护资源,而不需要将用户名或密码公开给第三方应用程序。OAuth2.0是一种授权协议,其实现涉及多个方面,包括认证服务器、客户端和资源服务器。6. 资源服务器验证访问令牌,如果有效则向客户端提供所请求的资源。3. 授权服务器验证资源所有者的身份,并请求其授权。

2023-11-09 21:57:23 199

原创 Java Web 安全实战:从登录到退出

在Java Web开发中,安全性至关重要。通过Spring Security,我们可以轻松地实现登录、记住我、授权、退出登录、验证码、JWT整合、跨域、CSRF跨站攻击防护和后台日志记录等功能,从而构建更加安全可靠的应用程序。希望本文对您在Java Web安全方面的学习和实践有所帮助。这篇CSDN博客详细介绍了Java Web安全的各个方面,结合了实战经验和独特见解,旨在帮助读者构建更加安全可靠的应用程序。希望您喜欢这篇博客并从中受益。如果您有任何问题或建议,请随时留言,我将尽力为您解答。

2023-11-08 21:28:03 1662

原创 Security的内容

从网络层面的防火墙到应用程序内的访问控制、认证与授权,再到数据的加密和持续监控,所有这些方面都是确保应用程序安全性的关键。然,每个应用程序都有其特定的安全需求,因此在开发和维护过程中,应根据实际情况进行定制的安全计划和策略。例如,如果用户报告了一个错误,开发人员可以查看错误日志以了解问题的性质和发生时的上下文。在网络层面,使用防火墙是一种常见的安全措施,可以控制流入和流出网络的数据流。2. **异常访问模式:** 监控用户的访问模式,以检测不寻常的或异常的行为。您可以根据您的网络需求添加更多的规则。

2023-11-07 18:16:59 215

原创 第三方登录和第三方支付

在现代Web应用中,提供第三方登录选项已经变得非常普遍。用户可以使用其社交媒体或其他在线帐户(如Google、GitHub或Facebook)来访问您的应用程序,而无需创建新的用户名和密码。这提供了更好的用户体验,减少了用户的登录和密码管理工作。在Java应用程序中实现第三方登录需要使用OAuth 2.0协议。### OAuth 2.0协议OAuth 2.0是一种开放标准,用于授权应用程序访问用户在第三方服务上存储的信息,而无需与用户的凭证(如用户名和密码)进行交互。

2023-11-06 21:41:27 169

原创 跨域(CORS)和JWT 详解

同源策略是一项浏览器安全特性,它限制了一个网页中的脚本如何与另一个来源(域名、协议、端口)的资源进行交互。JWT是一种开放标准(RFC 7519),定义了一种紧凑且自包含的方式来表示信息,用于在各方之间安全地传输信息。后端应用会验证JWT的签名,并根据令牌中的声明执行相应的操作。在Java中,您可以使用库如`jjwt`来生成JWT令牌。- JWT安全性:不要在JWT中存储敏感信息,限制令牌的生命周期。- 载荷包含声明,声明了一些实体(通常是用户)和一些数据。- 头部包含指定JWT的类型和所用的签名算法。

2023-11-04 18:28:03 451

原创 CAS 单点登录详解

总结CAS单点登录的关键要点,鼓励读者深入学习CAS,提高应用程序的身份认证和授权功能,以提高安全性和用户便利性。这份CSDN文章将为读者提供全面了解CAS单点登录的机会,帮助你实施这一关键的身份验证和授权解决方案。- 使用常见的CAS客户端库或框架,如Spring Security CAS等。- 包括CAS服务器的依赖项、数据库配置以及证书管理等方面的信息。- 探讨CAS领域的未来趋势,如CAS 6、支持OAuth2等。- 详细解释CAS服务器和CAS客户端之间的交互流程。

2023-11-03 21:34:00 253

空空如也

空空如也

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

TA关注的人

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