自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(76)
  • 资源 (41)
  • 收藏
  • 关注

原创 Java中实现String字符串分割的3种方法

如果用“.”作为分隔的话,必须是如下写法:String.split(”.“),这样才能正确的分隔开,不能用String.split(”.“);如果用“|”作为分隔的话,必须是如下写法:String.split(”|“),这样才能正确的分隔开,不能用String.split(”|");“.”和“|”都是转义字符,必须得加"“;//结果是:数组 [lo wo] 第一个字符“l”与第一个字符“r”之间的字符串,以数组形式返回。//结果是: lo wo 第一个字符“l”与第一个字符“r”之间的字符串。

2024-11-07 18:02:54 3083 1

原创 java 递归算法案例讲解

System.out.println(“请输入您希望演示的层数:”);System.out.println(“移动完成!System.out.println(“原始:”);3、遍历二叉树(让用户输入数据,并排序输出)4.获取文件目录下的所有文件夹和文件。2、输出斐波那契数列。5.汉诺艾塔解法演示。

2024-11-07 09:15:04 653

原创 duplicate key错误怎么解决

‌使用SQL的ON DUPLICATE KEY UPDATE语句‌:在MySQL中,可以使用INSERT …‌重试机制‌:在插入数据时,如果遇到DuplicateKeyException,可以设计重试逻辑,等待一段时间后再次尝试插入。‌分布式锁‌:使用Redis等分布式锁来确保在同一时间内只有一个服务实例可以写入数据。‌使用乐观锁‌:在Java中,可以使用版本号或时间戳来处理并发更新的问题。‌事务处理的最佳实践‌:确保事务的隔离级别和锁的选择能够适应高并发场景。获取锁:在插入数据前,尝试获取锁。

2024-11-07 09:10:26 1089

原创 ‌Java Set<T>;集合不能包含重复元素‌

‌不包含重复元素‌:尝试向Set集合中添加重复元素时,添加操作会失败,add()方法会返回false,且新元素不会被加入‌12。‌LinkedHashSet‌:基于哈希表和双向链表实现,保持插入顺序,无重复,适用于需要保持元素插入顺序的场景‌2。‌无索引‌:Set集合没有带索引的方法,因此不能使用普通for循环遍历,也不能通过索引来获取元素‌12。‌无序‌:Set集合中的元素没有固定的顺序,每次遍历得到的元素顺序可能不同‌12。‌TreeSet‌:基于红黑树实现,可排序且不重复,适用于需要排序的场景‌2。

2024-11-06 19:08:57 276

原创 Java中的Set对象去重

任何对象在不重写 equals()、hashcode() 的情况下,使用的是 Object 对象的 equals() 方法和 hashcode() 方法,而重点就是,默认的 equals() 方法判断的是两个对象的引用指向的是不是同一个对象;为什么 Set、Set 就可以直接实现去重,而 Set 就不可以,反而要重写 equals()、hashCode() 方法才能实现,更甚者是,只重写 equals() 方法,而不重写 hashCode() 方法都没法完成去重~

2024-11-06 19:08:20 815

转载 详解Java之Spring MVC篇一(转载)

https://blog.csdn.net/wmh_1234567/article/details/143153546?spm=1001.2100.3001.7377&utm_medium=distribute.pc_feed_blog_category.none-task-blog-classify_tag-1-143153546-null-null.nonecase&depth_1-utm_source=distribute.pc_feed_blog_category.none-task-blog-cl

2024-11-04 09:31:52 35

原创 Java 8新特性深度解析:提升效率与功能

这些新特性不仅提高了编程效率,还增强了Java语言的功能。新的日期和时间API java.time 包提供了更加丰富和灵活的日期时间处理能力,解决了原有java.util.Date和Calendar类的问题。Java 8不仅引入了诸多语言和API层面的改进,还带来了性能上的提升,这些提升来自于多个方面,包括垃圾收集器的改进、新的Lambda机制等。Java 8引入了一套全新的日期和时间API,位于java.time包下,用以替代旧的java.util.Date和Calendar类。

2024-11-04 09:09:27 1051

原创 Java8新特性详解与实战分享

首先,第一个要介绍的是Lambda。Java 8引入了全新的日期和时间API,它基于Joda-Time库设计,提供了更简洁、更易用的日期和时间处理方法。第二个介绍的事Stream API,Stream API是Java 8中引入的一种新的数据处理方式,它允许我们以声明式的方式处理集合数据。Java 8允许在接口中定义默认方法,这是一种在不破坏现有实现的情况下向接口添加新方法的方式。第六个是并行流,Java 8引入了并行流,它允许我们将数据分成多个部分,并在多个线程上同时处理这些部分,提高多线程小狐狸效率。

2024-11-04 09:08:13 712

原创 C++文件操作

文件类型分为两类:文本文件:文件以文本对应的ASCII码形式存储在计算机中二进制文件:文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂文件的主要操作:ofstream:写操作ifstream:读操作fstream:读写操作创建流对象打开文件ofs.open(“文件路径”, 打开方式);写数据ofs

2024-11-01 10:35:56 1120 1

原创 Spring Boot中发送邮件步骤

1、添加Starter模块依赖2、添加Spring Boot配置(QQ/网易系/Gmail)3、调用JavaMailSender接口发送邮件开始编码创建springboot项目,添加依赖项目结构项目结构1、添加依赖在 Maven pom.xml 配置文件中加入 spring-boot-starter-mail 依赖。2、添加配置参数然后在 application.yml 文件中加入以下配置。application.yml 配置。

2024-11-01 10:23:20 1136 1

原创 Spring Boot中发送邮件步骤

1、添加Starter模块依赖2、添加Spring Boot配置(QQ/网易系/Gmail)3、调用JavaMailSender接口发送邮件开始编码创建springboot项目,添加依赖项目结构项目结构1、添加依赖在 Maven pom.xml 配置文件中加入 spring-boot-starter-mail 依赖。2、添加配置参数然后在 application.yml 文件中加入以下配置。application.yml 配置。

2024-11-01 10:12:27 791

原创 MySQL中的SQL的常见优化策略

并不是所有索引对查询都有效,SQL是根据表中数据来进行查询优化的,当索引列有大量数据重复时,SQL查询可能不会去利用索引,如一表中有字段sex,male、female几乎各一半,那么即使在sex上建了索引也对查询效率起不了作用。在使用索引字段作为条件时,如果该索引是复合索引,那么必须使用到该索引中的第一个字段作为条件时才能保证系统使用该索引,否则该索引将不会被使用,并且应尽可能的让字段顺序与索引顺序相一致。应尽量避免在 where 子句中对字段进行表达式操作,这将导致引擎放弃使用索引而进行全表扫描。

2024-10-31 18:29:25 259

原创 mybatis常用jdbcType数据类型以及对应的JavaType

2、Mybatis中javaType和jdbcType对应和CRUD例子。1、MyBatis 通过包含的jdbcType类型。

2024-10-31 18:27:34 1007

原创 idea springBoot项目自动注入mapper为空报错如何解决

在application.properties或application.yml中手动配置Mapper扫描路径,告诉SpringBoot扫描哪些包下的Mapper接口。如果是新new的对象的话引用的注入对象不是自动注入spring容器里的对象,所以会报空,演戏也要演全套,在controller层也使用@Autowird注入吧。需要注意的是,这里的mapper/*.xml是指Mapper接口所对应的XML文件存放的路径,如果使用注解方式配置SQL语句,则可以不用配置XML文件路径。

2024-10-30 18:35:00 389 1

原创 synchronized和lock区别以及volatile和synchronized的区别

volatile可以看做是轻量版的synchronized,volatile不保证原子性,但是如果是对一个共享变量进行多个线程的赋值,而没有其他的操作,那么就可以用volatile来代替synchronized,因为赋值本身是有原子性的,而volatile又保证了可见性,所以就可以保证线程安全了。Lock可以让等待锁的线程响应中断,而synchronized却不行,使用synchronized时,等待的线程会一直等待下去,不能够响应中断;而synchronized既能够保证可见性,又能保证原子性。

2024-04-26 22:47:41 483

原创 说说常见的集合有哪些?

Map接口的实现类主要有:HashMap、TreeMap、Hashtable、ConcurrentHashMap以及Properties等。List接口的实现类主要有:ArrayList、LinkedList、Stack以及Vector等。Set接口的实现类主要有:HashSet、TreeSet、LinkedHashSet等。Collection接口的子接口包括:Set接口和List接口。

2024-04-26 22:46:04 146

原创 json字符串转json对象三种方式

/1,js自带的eval函数,其中需要添加小括号eval(‘(’+str+‘)’);//2,new Function形式。//3,全局的JSON对象。

2024-04-24 08:53:55 3540

原创 json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值

注意事项:IE8(兼容模式),IE7和IE6也可以使用eval()方法将字符串转成json对象,但是不推荐使用,因为这种方式不安全eval会执行接送字符串的表达式.在数据传输中,json是以文本,即字符串的形式传递的,而js操作json对象,所以json对象和json字符串之间的转换是关键。同时,json是javascript是原生格式,所以javascript操作处理json不需要任何包,api,任何依赖。图中a的值对应的是表达式2+4,当执行eval()方法时候,已经把表达式的值计算出来了,值为6。

2024-04-24 08:53:04 605

原创 FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换

json转为bean的方法也非常简单,只需使用JSONObject.toBean()方法即可,使用该方法的时候需要传入Bean的class。使用JSONObject.fromObject(str)方法即可将字符串转为JSON对象。如果是一个List,转为JSON时需要使用JSONArray将对象转为JSON数组。如果需要转为JSON数组,只需使用JSONArray对象提供的方法即可。//2.将list转为json(需要使用数组JSONArray)//1.将对象转为json。首先创建People类。

2024-04-24 08:51:18 841

转载 Lombok之@ToString使用

http://t.csdnimg.cn/R4M8x

2024-04-23 10:38:07 42

原创 遍历HashMap的五种方式

遍历HashMap的五种方式:1.使用 Iterator 遍历 HashMap EntrySet。2.使用 Iterator 遍历 HashMap KeySet。5.使用 Stream API 遍历 HashMap。4.使用 Lambda 表达式遍历 HashMap。// 更正式地,如果在迭代器返回条目之后已经修改了背景映射,则映射条目的行为是未定义的,除非通过映射条目上的setValue操作。1.使用 Iterator 遍历 HashMap EntrySet。首先向哈希表中放入元素。

2024-04-22 18:05:08 282

转载 @JsonField 不起作用

https://blog.csdn.net/horizon_junmowen/article/details/116262218

2024-04-22 12:08:55 125

原创 jsonfield注解不生效

注解使用不正确:确保你使用的 jsonfield 注解是针对你所用的 ORM 框架(如 Django REST framework 的 Serializer)或数据库操作库定义的。没有正确配置 ORM 框架:如果你使用的是 Django 或类似框架,确保你的模型中使用了 JSONField 而不是自定义的 jsonfield。没有启用框架的 JSON 字段支持:如果你的框架需要额外配置来支持 JSON 字段,确保你已经按照文档启用了相关功能。版本不兼容:确保你使用的注解与你的框架或库版本兼容。

2024-04-22 12:04:38 2015

原创 @JsonValue的用法

JsonFormat 此注解用于属性上,作用是把Date类型直接转化为想要的格式,如@JsonFormat(pattern = “yyyy-MM-dd HH-mm-ss”)。@JsonProperty 此注解用于属性上,作用是把该属性的名称序列化为另外一个名称,如把trueName属性序列化为name,@JsonProperty(“name”)。在需要的属性的get方法上添加@JsonValue 那么就可以在转化成json获取自己需要的值。1 对象的使用跟枚举是一样的。这个pom的可以直接使用。

2024-04-22 12:01:43 1035

转载 VUE弹窗加载另一个VUE页面

https://blog.csdn.net/rear0312/article/details/105296312

2024-04-22 11:59:03 388

转载 Redis雪崩

http://t.csdnimg.cn/m7mRq

2024-04-20 17:32:22 44

原创 创建线程池的5种方式

它是将多个线程预先存储在一个“池子”内,当有任务出现时可以避免重新创建和销毁线程所带来性能开销,只需要从“池子”内取出相应的线程执行对应的任务即可。【强制】线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式,这样的处理方式让我们更加明确线程池的运行规则,规避资源耗尽的风险。newCachedThreadPool(创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。

2024-04-20 17:29:47 896

原创 java 中的 Math.round(-1.5) 等于多少?

2.如果引用为引用数据类型,比如对象、数组,则该对象、数组本身可以修改,但指向该对象或数组的地址的引用不能修改。当使用final修饰方法时,这个方法将成为最终方法,无法被子类重写。但是,该方法仍然可以被继承。3. 如果引用时类的成员变量,则必须当场赋值,否则编译会报错。1.如果引用为基本数据类型,则该引用为常量,该值无法修改;当用final修改类时,该类成为最终类,无法被继承。比如常用的String类就是最终类。(1)用来修饰一个引用。(2)用来修饰一个方法。

2024-04-20 16:56:40 128

原创 Vue父子组件传值:有四种方式:props,ref,emit 和模板传递通信slot

动态传值是通过v-bind来绑定一个要传递值的key,然后后面跟要传递的内容,不过这个内容是可以改变的。vm.$emit( eventName’, arg ) //触发当前实例上的事件。这样就将父组件中的message中的内容传递到子组件中的msg变量中.**子组件可以使用 $emit 触发父组件的自定义事件**在父组件引用的子组件中采用ref=’要传递的值的key’传递的值会跟着input里面输入的值改变而改变。**emit是子组件向父组件的传值方式**Message:’子组件’

2024-04-19 15:09:14 334

原创 vue如何动态实时的显示时间浅析

用法 npm install dayjs --save。引入import dayjs from ‘dayjs’1.可以用day.js,处理日期和时间的js库。2.使用vue过滤器filters。vue动态实时显示时间有两种方法。然后创建定时器更新最新的时间。

2024-04-19 15:04:36 914

原创 curl -sSL https://get.rvm.io | bash -s stable curl: (7) Failed connect to api.github.com:443; 拒绝连接

curl -L get.rvm.io | bash -s stablecurl -sSL https://get.rvm.io | bash -s stablecurl: (7) Failed connect to api.github.com:443; 拒绝连接WARN: ...the preceeding error with code 7 occurred while fetching https://api.github.com/repos/rvm/rvm/tagsDownloadi.

2020-08-27 11:14:12 1793 2

原创 mybatis 报invalid comparison: java.util.ArraysArrayList and java.lang.String异常

这是一个根据list集合的查找数据的 sql,在接收list的时候加了判断 list != ‘ ’ “”,引起了集合与Stirng类型的比较,故报错<if test="list != null and list != '' "> AND roo_id IN <foreach collection="list" item="id" index="index" open="(" close=")" separator=","> #{id} .

2020-06-24 14:20:01 440

原创 http post get请求案例

package com.dfzt.modules.business.invoice;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Map;import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler;import org.apache.commons.ht

2020-06-12 15:59:55 487

原创 JSONObject与String、实体类互相转换

JSONObject与String、实体类互相转换1.实体类对象转换成String类型的JSON字符串JSONObject.toJSONString(实体类对象) == String2.String类型的JSON字符串转换成实体类对象JSONObject.toJavaObject(JSON字符串,实体类对象) == 实体3.Json字符串转换成JSONObject对象JSONObject.parseObject(JSON字符串) == JSONObject4.JSON字符串...

2020-06-12 11:28:52 6630

原创 java通过连接(url)下载pdf文件

/** * 电子发票下载 * @param url * @param response * @throws UnsupportedEncodingException */ @GetMapping(value="/cxfKp/download") public void invoiceDownload(String url,HttpServletResponse response ) throws UnsupportedEncodingExce...

2020-06-11 17:18:26 2731

转载 columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by mysql8.0解决办法

https://blog.csdn.net/weixin_44546342/article/details/105613976?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-8.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-8.nonec

2020-05-11 13:01:26 379

转载 SpringBoot项目找不到主类或无法加载主类

https://blog.csdn.net/qq_35472880/article/details/102967626?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

2020-03-23 14:38:49 624

原创 No serializer found for class org.hibernate.proxy.pojo.bytebuddy.ByteBuddyInterceptor

今天在讲jpa增删改查等方法抽取后,在测试的过程中出现下面错误:看错误原因是:在转化成json的时候,fasterxml.jackson将对象转换为json报错,发现有字段为null。解决方案:实体类上添加@JsonIgnoreProperties(value = { “hibernateLazyInitializer”})...

2020-02-28 17:59:44 1053

原创 关联mysql失败_Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezon'

时区错误,MySQL默认的时区是UTC时区,比北京时间晚8个小时。所以要修改mysql的时长在mysql的命令模式下,输入:set global time_zone=’+8:00’;再次连接成功...

2020-02-28 12:44:34 113

原创 If you have database settings to be loaded from a particular profile you may need to activate it (no

在主程序注解加上:(exclude={DataSourceAutoConfiguration.class})

2020-02-19 22:07:56 11830

Java基础面试题梳理及其关键知识点解析

内容概要:该文章汇集了一系列针对 Java 基础知识的面试题,涵盖了面向对象的基本概念、类与对象的特性、继承与多态、构造方法、字节码与 JVM 机制、数据类型与变量、集合框架、异常处理、反射等多个方面的内容。每个问题都有简明的答案,并附带了相关的拓展知识和应用场景。 适合人群:具备一定的 Java 编程经验,准备参加 Java 开发岗位面试的技术人员。 使用场景及目标:本资源主要用于面试前的复习与知识点巩固,帮助面试者快速回忆起 Java 的基础知识,并能够在面试中自信地应对相关问题。 其他说明:文章还提到了一些重要的参考资料和进一步学习的方向,适用于希望深入了解 Java 技术栈的开发者。

2024-11-07

Java线程核心技术及常见面试问题解答

内容概要:本文详细介绍了Java线程的基本概念、线程的安全与同步机制、多种线程间通信方式、Java内存模型,以及线程池的原理与使用技巧,涵盖了许多常用的线程和并发控制组件如synchronized、ReentrantLock、CountDownLatch、CyclicBarrier等。 适合人群:面向有一定Java基础的开发者和面试准备者。 使用场景及目标:帮助读者深入理解Java线程和并发的核心知识,掌握多线程编程技术,更好地应对技术面试中遇到的相关问题。 其他说明:本文不仅仅罗列理论知识,同时也提供了一些实用技巧和案例,有助于读者将理论应用于实际开发。此外,文章还包括了大量的图表和代码示例,便于理解和学习。

2024-11-07

Git面试知识点详解及应用场景解析

内容概要:本文档汇总了多个Git面试题目及其详细解答,涵盖了Git的基本命令、高级操作、常见问题解决方法、工具使用及与其他版本控制系统的比较。文章首先列举了一些常用的Git命令,接着介绍了几种常见的Git工具(如命令行、IDEA Git插件、SourceTree等)的特点,对比了Git与SVN的不同之处,讨论了分支管理和标签的使用,解决了常见操作失误(如误删文件、修改commit信息等)的恢复方法,并探讨了几种Git工作流的最佳实践,最后介绍了PR和MR的概念及区别。 适合人群:适合准备参加软件开发面试的初级到中级程序员,尤其是对Git操作和版本控制有一定了解的技术人员。 使用场景及目标:旨在帮助读者全面掌握Git的基础知识和高级技能,提升解决实际问题的能力,为面试做好充分准备。通过理解和练习这些问题,读者可以在面试中自信地展示自己的Git技能。 阅读建议:建议读者逐条理解和记忆各个命令的作用及使用方法,并亲自动手操作练习,结合实际开发场景加深理解和应用。同时可以参照提供的参考文章进一步巩固知识。

2024-11-07

Elasticsearch技术面试详解

内容概要:本文涵盖了众多Elasticsearch相关的面试问题及其答案。内容涉及Elasticsearch的基础知识、高级特性、集群管理与维护等方面,具体探讨了诸如集群架构的设计、索引优化技巧、搜索的工作机制、数据的一致性保障、系统监控方法等主题。 适用人群:面向有一定工作经验的技术面试考生,尤其是那些正在准备Elasticsearch相关职位的人群。 使用场景及目标:适用于求职者备战面试,旨在帮助候选人全面掌握Elasticsearch的各种概念和技术实现方式,提高应对面试的能力。同时也是技术人员深化理解和掌握Elasticsearch的有效学习资料。 其他说明:文章通过具体的面试问答,不仅提供了答案,而且剖析了问题背后的知识点和技术细节,有助于面试者的知识点串联和巩固。

2024-11-07

Dubbo核心技术与面试题详解

内容概要:本文档综合整理了关于 Dubbo框架的常见面试题及其详细解答,涵盖了 Dubbo的基本概念、配置、集成、原理及高级特性。文章不仅解释了如何配置 Dubbo与 Spring Boot集成、分层设计理念,还深度探讨了 Dubbo的服务治理策略(如负载均衡、容错机制)、动态代理机制、SPI扩展机制,异常处理、缓存机制等核心知识点。此外,还包括关于注册中心选择、配置中心接入、安全机制等方面的实用建议和技术选型讨论,提供了丰富的实战经验和参考链接,帮助读者全面掌握 Dubbo的技术细节及其应用。 适合人群:有一定微服务架构经验的开发工程师,尤其是熟悉或希望深入了解 Dubbo框架及其生态系统的技术爱好者。也适合作为面试前的知识复习材料。 使用场景及目标:主要用于提高技术人员在面试过程中的表现力,加深他们对 Dubbo及其相关领域的理解和应用能力。同时适用于企业级项目中使用 Dubbo时的指导手册。 其他说明:本文档的内容详实、覆盖面广,不仅可以帮助求职者准备面试,还能作为日常工作中解决问题的参考资料。

2024-11-07

全面解析消息队列的技术细节及应用场景

内容概要:本文详细介绍了消息队列的基本概念、核心角色(生产者、消费者、消息代理)、常见使用场景(应用解耦、异步处理、流量削峰、消息通讯、日志处理)及其优缺点。此外,文章探讨了消息队列的消费语义、投递方式、高可用实现方法及不同消息队列(如RabbitMQ、RocketMQ、Kafka)的特点与对比。通过实例和图表,帮助读者深入了解消息队列在分布式系统中的重要性。 适合人群:对消息队列有一定了解的技术从业人员,特别是从事分布式系统设计和开发的研发人员。 使用场景及目标:① 系统解耦与优化:利用消息队列实现系统间的松耦合和高效异步处理;② 流量削峰:缓解高并发请求对系统造成的压力;③ 日志处理:提升日志数据的传输和处理效率;④ 技术对比:根据项目需求选择合适的消息队列技术。 其他说明:本文不仅涵盖理论知识,还提供了丰富的实践案例和参考资料,适合用于面试准备和技术研究。

2024-11-07

深入浅出解析分布式缓存关键技术与实战指南

内容概要:本文从基本概念出发,全面解析缓存的作用及原理,涵盖缓存的基本分类及其在不同应用场景中的使用策略。特别探讨分布式缓存的三大经典算法(LRU, LFU, FIFO),并给出具体实现案例——使用LinkedHashMap实现LRU缓存。接着,文章详细阐述常见的分布式缓存问题,如缓存穿透、雪崩和击穿,并提供详细的解决方案和技术手段。此外,介绍了各种类型的缓存工具和框架,包括但不限于Guava LocalCache、Redis、MemCache等。 适合人群:后端开发者、系统架构师,尤其是有一定经验的技术人员,旨在深入掌握缓存机制与故障排除技巧。 使用场景及目标:在高性能Web应用和服务中高效管理和利用缓存资源,确保系统稳定运行的同时优化性能指标。目标是通过实施文中所述策略和技巧,解决实际工作中遇到的各种缓存相关问题,提高开发效率和产品质量。 其他说明:建议读者在理解理论基础上实践相关代码实现,同时参考推荐的学习材料加深理解。

2024-11-07

后端开发之分库分表技术详解及其面试准备

内容概要:本文围绕『分库分表』这一后端开发领域的关键技术和其在面试中的重要性展开讨论。文中首先解释了为何互联网环境需要分库分表,接着深入剖析了垂直分片与水平分片这两种常见的分片方法各自的优点与不足。此外,针对引入分库分表后面临的挑战——如数据操作难题、SQL语句执行问题、跨库事务处理、全局唯一标识符生成等进行了详述。而后介绍了当前较为成熟的相关工具和技术——特别是Sharding Sphere,对其工作原理、应用场景及优劣作出评价。为了帮助开发者顺利完成向分库分表的过渡,文章提出了多种切实可行的数据迁移方法,并探讨了如何实现可灵活扩展的数据库设计。与此同时,关于如何妥善解决分布式事务和合理选取分区键等问题,也有涉及。最后分享了一套全面覆盖的分库分表面试题目列表及解析。 适合人群:适用于希望提高自身在大数据时代背景下处理高性能后端任务技能的初中高级程序员,尤其是正准备求职面试的技术人才。 使用场景及目标:无论是刚入行不久的研发新手还是寻求进阶的企业级软件设计师,《后端开发之分库分表技术详解及其面试准备》旨在助力相关人员掌握必要的理论知识与实战技巧,从容应对工作中或求职时遭遇的相关技术挑战。 其他说明:鉴于本文引用大量参考资料和专业文献,建议读者结合线上资源加深理解,积极思考并实践,以便更好地消化吸收知识点。

2024-11-07

分布式事务面试题详解:解决方案与应用场景

内容概要:该文档详尽介绍了分布式事务的概念、背景、实现原理和具体方案,帮助开发者理解和实施有效的分布式事务处理方法。从易到难逐步介绍,确保新手也能跟上进度。文中不仅讲述了为什么需要分布式事务,还深入探讨了CAP理论、BASE理论等基础知识点。针对分布式事务的实现,文档列举了包括XA方案、TCC方案、本地消息表、可靠消息最终一致性方案、最大努力通知方案、Saga方案在内的六种主流方案,每种方案均配有具体的应用案例及其优缺点分析。最后,简述了作者所在的公司在不同场景下的技术选择。 适合人群:初学者、有一定经验的研发人员、系统架构师等。 使用场景及目标:①为初学者提供入门指导;②帮助现有技术人员掌握最新的分布式事务处理技术;③协助架构师设计合理的分布式事务解决方案,提高系统可靠性与性能。 其他说明:文中涉及多种解决方案的选择和实践,强烈建议读者结合实际情况灵活选用最合适的分布式事务处理策略。此外,对于每种方案背后的理论知识和技术细节,文档提供了丰富的参考资料和进一步探索的方向。

2024-11-07

(面试前推荐)深入浅出MySQL全文

内容概要:本文章旨在为MySQL用户提供全面的基础知识与高级特性介绍,涵盖了从MySQL的安装配置指导到常见SQL查询优化的技术分享,重点介绍了索引创建的几种情况及其优化方法。文中详细讲述了如何有效利用索引减少不必要的全表扫描、避免不当使用LIKE操作符造成的性能损失等技巧,以及针对不同操作系统环境下MySQL的具体配置方法。 适用人群:本文适合初学者及中级水平的MySQL使用者阅读,特别是即将参与相关岗位面试的技术人员。 使用场景及目标:主要应用于日常数据库维护工作中提高查询效率,解决常见的性能瓶颈问题。对于准备面试的相关专业人员来说,可以通过本指南深入了解MySQL的工作机制和技术细节,从而更好地准备技术面试。 其他说明:除了理论讲解外,文章还提供了多个实例操作步骤,帮助读者通过实践加深理解。

2024-11-07

Python 简明教程:《A Byte of Python》的中文译本

第一章. 基础信息 1.1. 翻译说明 1.2. 介绍 1.3. 献词 1.4. 前言 1.5. 所有参与译者 第二章. 正文 2.1. 关于 Python 2.2. 安装 2.3. 第一步 2.4. 基本语法 2.5. 运算符与表达式 2.6. 控制流 2.7. 函数 2.8. 模块 2.9. 数据结构 2.10. 解决问题的思路 2.11. 面向对象编程 2.12. 输入与输出 2.13. 异常 2.14. 标准库 2.15. 更多知识 2.16. 下一步的学习建议 附录 3.1. FLOSS 3.2. 关于本书 3.3. 修订历史

2024-11-01

【消息队列 】面试题.pdf

消息队列由哪些角色组成? 消息队列有哪些使用场景? 为什么使用消息队列进行应用解耦? 为什么使用消息队列进行异步处理? 为什么使用消息队列进行流量消峰? 为什么使用消息队列进行消息通信? 如何使用消息队列进行日志处理? ...........................................................

2024-04-19

缓存面试题大全 pdf版

什么是缓存? 为什么要用缓存? 请说说有哪些缓存算法?是否能手写一下 LRU 代码的实现? 常见的常见的缓存工具和框架有哪些 用了缓存之后,有哪些常见问题? 当查询缓存报错,怎么提高可用性? 如何避免缓存”雪崩”的问题?

2024-04-19

【分布式事务】面试题.pdf

【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf 【分布式事务】面试题.pdf

2024-04-19

分库分表面试题- pdf

[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]面试题 pdf[分库分表]

2024-04-19

Python数据分析与机器实战-CSDN学院

课程介绍: 课程风格通俗易懂,真实案例实战。精心挑选真实的数据集为案例,通过python数据科学库numpy,pandas,matplot结合机器学习库scikit-learn完成一些列的机器学习案例。课程以实战为基础,所有课时都结合代码演示如何使用这些python库来完成一个真实的数据案例。算法与项目相结合,选择经典kaggle项目,从数据预处理开始一步步代码实战带大家入门机器学习。 学习收益: 1.掌握Python数据科学工具包,包括矩阵数据处理与可视化展示。 2.掌握机器学习算法原理推导,从数学上理解算法是怎么来的以及其中涉及的细节。 3.掌握每一个算法所涉及的参数,详解其中每一步对结果的影响。 4.熟练使用Python进行建模实战,基于真实数据集展开分析,一步步完成整个建模实战任务。 课程目录: 章节1: Python科学计算库-Numpy 课时1课程介绍(主题与大纲) 10:46 课时2机器学习概述 10:04 课时3使用Anaconda安装python环境(Python新手先看这个) 13:10 课时4课程数据,代码,PPT(在

2022-07-03

Vue前端保存为PDF的常用方式 「干货分享」

第一种:使用html2Canvas和JsPDF库,转化为图片后保存PDF。 安装html2canvas库 npm install html2canvas 安装jspdf库 npm install jspdf 编写保存函数 文件位置:src/utils/htmlToPdf.js 1 、我们要添加两个模块 第一个.将页面html转换成图片 npm install --save html2canvas 第二个.将图片生成pdf npm install jspdf --save 2、定义全局函数..创建一个htmlToPdf.js文件在指定位置.我个人习惯放在(‘src/components/utils/htmlToPdf’) // 导出页面为PDF格式 import html2Canvas fr

2022-06-23

md5视频修改工具,并去重

相信很多做视频剪辑的小伙伴都有遇过以下情况,就是辛辛苦苦剪辑了一个视频,上传到平台后却发现过不了审并显示该视频是搬运的情况,你知道为什么会出现这种情况吗?其实这是因为你的视频md5数值和平台已有的md5数据库重复了,每个视频都有专属的md5数值,当我们上传视频时,平台就会读取md5数值,如果数值重复,视频就会显示抄袭并被退回,想解决这个问题就只能用软件修改md5然后再重新上传,本工具就可以修改视频,文件,压缩包md5值,点击一键修改,然后需要等待一点时间。等它自动修改md5值之后,我们就可以保存好视频去平台进行上传了。

2022-06-16

jdk_8.0.1310.11_64.exe

jdk_8.0.1310.11_64.exe

2021-01-19

java基础.txt 百度云

Java 基础语法 Java 面向对象 深入面向对象和数组 Java 常用类详解 Java 异常机制解析 Java 集合与数据结构 JavaIO 流全解析 深入理解 Java 多线程 Java 网络编程 手动开发一个 Web 服务器 深入理解 Java 注解+反射 Java23 种设计模式 学会 Java 正则表达式 JDBC 详解 Java 数据结构和算法 深入理解 Java 虚拟机 Java 解析XML文件

2021-01-19

人事管理系统需求文档.zip

人事管理系统需求文档.zip

2021-01-19

rabbitmq-server-3.8.5.exe

rabbitmq-server-3.8.5.exe 消息队列下载,自己再用,非常好用

2020-11-18

Navicat12破解软解

Navicat12破解软解,教程搜索下就有好多,自己已经破解成功,很好用,欢迎下载1111111111111

2020-11-18

navicat121_premium_cs_x64.exe

navicat121_premium_cs_x64.exe 自己在用非常好用

2020-11-18

FileZilla_3.50.0_win64-setup.exe

Linux 文件传输,自己在用的,没有任何问题,放心下载

2020-09-07

navicat12018_premium_cs_x64.exe

navicat12018_premium_cs_x64.exe

2020-06-12

apache-tomcat-9.0.35.zip

apache-tomcat-9.0.35.zip

2020-06-12

apache-maven-3.6.3.zip

apache-maven-3.6.3.zip

2020-06-12

TortoiseSVN1.11.0.zip

TortoiseSVN1.11.0.zip 自己在用

2020-06-12

notepad771.zip

notepad771.zip npp.7.7.1.Installer.x64.exe

2020-06-12

SQLyog-13.1.6-0.x64Community.exe

SQLyog-13.1.6-0.x64Community.exe

2020-06-12

zookeeper-3.4.12.tar.gz

zookeeper-3.4.12.tar.gz 自己在用

2020-06-12

codegenerate-1.0.4.jar

codegenerate-1.0.4.jar

2020-06-12

jdk_8.0.1310.11_64.exe

jdk_8.0.1310.11_64.exe jdk1.8 自己在用

2020-06-12

redis-6.0.1.tar.gz

redis-6.0.1.tar.gz,自己在用,很好用

2020-06-12

mysql-8.0.20-winx64.zip

mysql-8.0.20-winx64.zip

2020-06-12

HttpClientUtils.java

http post get请求案例

2020-06-12

Java项目-淘淘商城(附源码)(百度云链接)

淘淘商城网盘地址,亲测有效,自己做过。淘淘商城项目,JAVA后台开发,附带源码+视频+教案(maven+CMS+Redis+solr+单点登录+购物车+订单+nginx+环境部署),文件内就是百度网盘链接,永久有效

2020-04-01

高拍仪驱动,亲测可用

高拍仪驱动,自己在用,很好用

2019-12-10

JAVA基础课程讲义(已好).docx

java基础课程讲义,自己学的,可以一看。

2019-07-25

空空如也

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

TA关注的人

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