自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 八股typora图片

2024-07-20 15:49:11 68

原创 idea通过SSH拉取代码

idea通过SSH拉取代码:1. 在idea上设置Git.exe2. 在本机生成SSH的私钥公钥和密码 检查.ssh文件夹是否存在 windows命令:dir %userprofile%\.ssh。如果目录存在,并且下边已经存在文件,直接删除所有的文件。 如果不存在新建.ssh文件 生成KEY: ssh-keygen -t rsa -C "your_email@example.com" (注意:your_email@example.com换成自己git账号的Email)

2024-04-06 13:21:45 1796

原创 后端常问面经

笔者就读于中国地质大学北京的计算机技术专业,专注于Java开发。在准备实习的过程中,笔者吸取了各方面的面试经验和知识,包括JavaGuide、小林coding和黑马程序员的Java面试合集等。通过自己对知识点的理解和实际面试经历,整理了一些常见的面试问题和经验,并将其分享在下方,供同行参考学习。

2024-03-25 17:20:44 416

原创 后端常问面经之操作系统

线程在执行过程中会有自己的运行条件和状态(也称上下文),比如程序计数器,虚拟机栈和本地方法栈等。当出现如下情况的时候,会发生线程切换。主动让出 CPU,比如调用了sleep()wait()等。时间片用完,因为操作系统要防止一个线程或者进程长时间占用 CPU 导致其他线程或者进程饿死。调用了阻塞类型的系统中断,比如请求 IO,线程被阻塞。线程切换意味着需要保存当前线程的上下文(比如程序计数器,虚拟机栈和本地方法栈),留待线程下次占用 CPU 的时候恢复现场。并加载下一个将要占用 CPU 的。

2024-03-25 17:09:59 1470

原创 后端常问面经之计算机网络

每个连入互联网的设备或域(如计算机、服务器、路由器等)都被分配一个IP 地址(Internet Protocol address),作为唯一标识符。每个 IP 地址都是一个字符序列,如 192.168.1.1(IPv4)、2001:0db8:85a3:0000:0000:8a2e:0370:7334(IPv6)。当网络设备发送 IP 数据包时,数据包中包含了源 IP 地址和目的 IP 地址。源 IP 地址用于标识数据包的发送方设备或域,而目的 IP 地址则用于标识数据包的接收方设备或域。

2024-03-25 17:05:57 1413

原创 后端常问面经之Spring和Mybatis框架

所谓控制就是对象的创建、初始化、销毁。创建对象:原来是 new 一个,现在是由 Spring 容器创建。初始化对象:原来是对象自己通过构造器或者 setter 方法给依赖的对象赋值,现在是由 Spring 容器自动注入。销毁对象:原来是直接给对象赋值 null 或做一些销毁操作,现在是 Spring 容器管理生命周期负责销毁对象。总结:IOC 解决了繁琐的对象生命周期的操作,解耦了我们的代码。

2024-03-25 17:03:00 840

原创 后端常问面经之Redis

我发现缓存雪崩这名字起的有点意思,哈哈。缓存在同一时间大面积的失效,导致大量的请求都直接落到了数据库上,对数据库造成了巨大的压力。这就好比雪崩一样,摧枯拉朽之势,数据库的压力可想而知,可能直接就被这么多请求弄宕机了。另外,缓存服务宕机也会导致缓存雪崩现象,导致所有的请求都落到了数据库上。举个例子:数据库中的大量数据在同一时间过期,这个时候突然有大量的请求需要访问这些过期的数据。这就导致大量的请求直接落到数据库上,对数据库造成了巨大的压力。

2024-03-25 16:57:28 933

原创 后端常见面经之MySQL

读未提交,指一个事务还没提交时,它做的变更就能被其他事务看到;读提交,指一个事务提交之后,它做的变更才能被其他事务看到;可重复读,指一个事务执行过程中看到的数据,一直跟这个事务启动时看到的数据是一致的,MySQL InnoDB 引擎的默认隔离级别;串行化;会对记录加上读写锁,在多个事务对这条记录进行读写操作时,如果发生了读写冲突的时候,后访问的事务必须等前一个事务执行完成,才能继续执行;脏读是指一个事务读取了另一个事务未提交的数据不可重复读是指一个事务在同一时间点内多次读取同一数据时,得到的结果不一致。

2024-03-25 16:56:11 1121

原创 后端常见面经之JVM

嗯,是这样~~java虚拟机对于多线程是通过线程轮流切换并且分配线程执行时间。在任何的一个时间点上,一个处理器只会处理执行一个线程,如果当前被执行的这个线程它所分配的执行时间用完了【挂起】。处理器会切换到另外的一个线程上来进行执行。并且这个线程的执行时间用完了,接着处理器就会又来执行被挂起的这个线程。这时候程序计数器就起到了关键作用,程序计数器在来回切换的线程中记录他上一次执行的行号,然后接着继续向下执行。好的~Java中的堆术语线程共享的区域。主要用来保存对象实例,数组。

2024-03-25 16:53:48 952 1

原创 后端常问面经之并发

Java 中和等独占锁就是悲观锁思想的实现,共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程。乐观锁总是假设最好的情况,认为共享资源每次被访问的时候不会出现问题,线程可以不停地执行,无需加锁也无需等待,只是在提交修改的时候去验证对应的资源(也就是数据)是否被其它线程修改了(具体方法可以使用版本号机制或 CAS 算法)。monitor对象存在于每个Java对象的对象头中,synchronized 锁便是通过这种方式获取锁的,也是为什么Java中任意对象可以作为锁的原因。

2024-03-25 16:52:37 968

原创 后端常问面经之Java集合

为了能让 HashMap 存取高效,尽量较少碰撞,也就是要尽量把数据分配均匀。我们上面也讲到了过了,Hash 值的范围值-2147483648 到 2147483647,前后加起来大概 40 亿的映射空间,只要哈希函数映射得比较均匀松散,一般应用是很难出现碰撞的。但问题是一个 40 亿长度的数组,内存是放不下的。所以这个散列值是不能直接拿来用的。用之前还要先做对数组的长度取模运算,得到的余数才能用来要存放的位置也就是对应的数组下标。

2024-03-25 16:49:27 837

原创 后端常问面经之Java基础

在 Java 1.4 的 NIO 库中,所有数据都是用缓冲区处理的,这是新库和之前的 BIO 的一个重要区别,有点类似于 BIO 中的缓冲流。在写入数据时,写入到缓冲区中。:多态是面向对象编程的核心概念之一,多态是指同一个方法名可以在不同的类中有不同的实现,不同的子类可以重写父类的方法,通过父类引用指向子类对象时,根据实际对象的类型来确定调用哪个方法。多态是指同一个方法名可以在不同的类中有不同的实现,不同的子类可以重写父类的方法,通过父类引用指向子类对象时,根据实际对象的类型来确定调用哪个方法。

2024-03-25 16:36:50 1049

原创 魔爪柑橘风味能量风味功能饮料330ml 4.5元

2024-01-05 15:23:42 367

原创 可门可乐汽水500mI 3.5元

2024-01-05 15:22:37 357

原创 农夫山泉力量帝西梅桃子风味维他命水500ml 4元

2024-01-05 15:21:29 368

原创 可口可乐无糖汽水500ml 2.5元

2024-01-05 15:20:21 383

原创 可口可乐汽水(摩登罐)330ml 2.5元

2024-01-05 15:19:10 350

原创 香飘飘Meco桃桃红柚蜜谷果汁茶400mI 6.5元

2024-01-05 15:17:54 388

原创 康师傅大红袍奶茶饮料500ml 3.8元

2024-01-05 15:14:26 395

原创 农夫山泉茶元蜜桃乌龙果味茶饮料500mI 4.6元

2024-01-05 15:11:52 330

原创 【无标题】

2024-01-05 15:04:27 361

原创 回溯系列--11个题

题⽬链接:https://leetcode-cn.com/problems/combinations/给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。⽰例: 输⼊: n = 4, k = 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ]

2023-09-13 11:44:25 199

原创 JDK8新特性

是 Java 8 引入的一种处理集合数据的新方式。它提供了一种更简洁、更易读和更灵活的方式来操作和处理集合数据。流的核心思想是将数据处理操作集中在一起,可以进行过滤、映射、排序、聚合等一系列操作,而不需要显式地使用循环和条件语句。

2023-07-13 20:51:09 181

原创 面试总结

jdk8对集合的stream流的api。不会,这个用来测试你是否用过stream流。springboot如何在启动时自动从数据库中读取数据。hashmap的api。不会,这个用来测试你是否用过hashmap。按照自己的项目能说个大概出来。springboot的注解。hashmap的使用场景。

2023-07-12 12:08:49 186

原创 spring springmvc springboot mybatis

候选人:aop是面向切面编程,在spring中用于将那些与业务无关,但却对多个对象产生影响的公共行为和逻辑,抽取公共模块复用,降低耦合,一般比如可以做为公共日志保存,事务处理等。

2023-07-11 18:17:44 394 1

原创 Mysql

如何定位慢查询一个SQL语句执行很慢,如何分析索引什么是聚簇索引,非聚簇索引,回表查询 什么是覆盖索引索引创建原则有哪些?什么情况下索引会失效 ?sql优化的经验事务的特性是什么?可以详细说一下吗?并发事务带来哪些问题?怎么解决这些问题呢? MySQL的默认隔离级别是?主从同步原理

2023-07-11 16:43:09 143

原创 线程 线程池

进程是正在运行程序的实例,进程中包含了线程,每个线程执行不同的任务不同的进程使用不同的内存空间,在当前进程下的所有线程可以共享内存空间线程更轻量,线程上下文切换成本一般上要比进程上下文切换低。

2023-07-10 17:17:46 119

原创 集合List和Map

首先计算数组的容量,如果当前数组已使用长度+1后的大于当前的数组长度,则调用grow方法扩容(原来的1.5倍),确保新增的数据有地方存储之后,则添加元素到size的位置上。在重新分配元素的过程中,如果原来的桶中只有一个元素,那么该元素可以直接放入新的桶中。插入删除效率,对于LinkedList,在首尾的效率为O(1),其他位置是O(n),对于ArrayList,首部的效率为O(1),其他位置是O(n)。接下来,HashMap会遍历原来的桶数组中的每个桶,并将桶中的元素重新分配到新的桶数组中的相应位置。

2023-07-10 16:47:40 699

原创 RabbitMQ

保证消息不丢失重复消费问题消息堆积

2023-07-09 20:20:27 654

原创 Redis

多路:指的是多个网络连接,复用:指的是复用一个线程。采用多路I/O复用技术可以让单个线程处理多个连接请求(文件句柄)。一旦某个文件句柄就绪,就能够通知应用程序进行相应的读写操作;而没有文件句柄就绪时,就会阻塞应用程序,交出cpu。多路复用主要有三种技术:select,poll,epoll。epoll是最新的也是目前最好的多路复用技术,Redis使用的epoll。Redis 采用网络IO多路复用技术来保证多连接时的高吞吐量。

2023-07-09 19:52:05 294

原创 BeanFactory和ApplicationContext的入门、关系和继承

3)Bean创建的主要逻辑和功能都被封装在BeanFactory中,ApplicationContext不仅继承了BeanFactory,而且ApplicationContext内部还维护着BeanFactory的引用,所以,ApplicationContext与BeanFactorv既有继承关系,又有融合关系。BeanFactory的API更偏向底层,ApplicationContext的API大多数是对这些底层API的封装。Ctrl + H 查看接口的继承体系。

2023-07-08 20:50:06 327

原创 简历---久远银海

数据库的题目,前面是选择题,单选多选都有,有一个写代码的题,最后一个大题是数据库,有几个小题,根据要求写SQL语句。先问了问项目,然后做了份面试题,笔试题,没觉得很难,比较基础,一共10页,一个小时要做完,大部分是选择题,一道简单的输出打印,乘法表,5道SQL,主要根据简历上问(我的问了springboot,vue的生命周期,sql优化,事务,JS选择器,fastdfs,redis)面试一般,就只问了一些简单得问题,Java的基础问题,和spring,spring mvc,mybatis的问题。

2023-06-18 21:11:37 1003

原创 关于简历,在面试时可能会被问到的问题

同时插入商品对应的使用时间数据,需要操作两张表:product,product_usetime。在productService接口中定义save方法,该方法接受一张Dto对象,dto对象继承自product类,并将product_usetime的List集合作为成员属性。通过productService实现类的save方法,将dto对象保存至数据库。

2023-06-18 18:20:06 1022

原创 【无标题】

ControllerAdvice注解将该类声明为一个全局异常处理器,并指定需要处理的控制器类型。定义异常处理方法,指定需要处理的异常类型。log.error使用日志记录工具记录异常信息。:根据异常信息中的内容判断特定的错误情况,如果是,构建一个表示错误的R对象,并将错误消息返回。:如果不是特定的错误情况,返回一个通用的错误结果。

2023-06-15 21:34:55 713

原创 框架---面经

多个实体之间相互依赖并形成闭环的情况就叫做"循环依赖”,也叫做”循环引用。

2023-06-15 14:19:05 715

原创 【无标题】

2、熟悉Java EE、ExtJs技术,包括Servlet/JSP、JDBC、Web Service等,熟悉Maven项目构建工具,对各种开源的软件如SpringMvc、Struts、hibernate/ibatis、Tomcat等有深入的了解;3、熟悉java语言,对面向对象技术有深刻的认识,对SpingMVC、SpringBoot中某一个技术点有深刻的认识,如Bean的生命周期管理,Cache管理,SpringBoot启动过程,web请求执行管线等。3、熟悉面向对象编程,具有良好的编程风格、习惯;

2023-06-15 10:49:44 490

原创 java面经 MySQL

在字段很多的情况下(例如一个大表有100多个字段),通过"大表拆小表",更便于开发与维护,也能避免跨页问题,MySQL底层是通过数据页存储的,一条记录占用空间过大会导致跨页,造成额外的性能开销。举个例子,从user表中查询用户id,姓名和性别,查询条件为姓名,这时候就可以对用户姓名和性别创建联合索引,这样可以做到覆盖查询和避免会表查询。2、容易面临跨分片查询的复杂问题。连续分片可能存在数据热点,例如按时间字段分片,有些分片存储最近时间段内的数据,可能会被频繁的读写,而有些分片存储的历史数据,则很少被查询。

2023-06-14 20:40:49 1487

原创 MySQL高级

存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎也可被。创建联合索引username和password,将联合索引作为二级索引,id为二级索引的值,就能做到覆盖查询。按某种规则将单表数据拆分到多张表中从理论上突破了单机数据量的瓶颈,是分库分表的标准解决方案。按照业务维度将表拆分到不同的数据库中专库专用,分担数据库压力。索引是种数据结构,用于高效获取数据。覆盖索引不用回表查询。

2023-06-14 20:38:09 42

原创 Java基础

为什么静态方法不能调用非静态方法和变量?

2023-06-13 21:14:22 469

原创 瑞吉项目优化

2、在配置文件中配置读写分离规则,代码如下。spring:names:# 主数据源master:# 从数据源slave:# 读写分离配置# 最终的数据源名称# 主库数据源名称# 从库数据源名称列表,多个逗号分隔props:sql:show: true #开启SQL显示,默认falsemain:allow-bean-definition-overriding: true # 在配置文件中配置允许bean定义覆盖配置项。

2023-06-12 21:27:52 467

java-面试指北PDF版本(最新)资源

java_面试指北PDF版本(最新)资源

2023-10-08

MySQL基础 javaweb

MySQL基础 javaweb

2023-01-02

空空如也

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

TA关注的人

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