Moonxiyue
码龄3年
关注
提问 私信
  • 博客:136,506
    136,506
    总访问量
  • 194
    原创
  • 1,950,570
    排名
  • 116
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广西
  • 加入CSDN时间: 2022-04-14
博客简介:

Moonxiyue的博客

查看详细资料
个人成就
  • 获得86次点赞
  • 内容获得28次评论
  • 获得427次收藏
  • 代码片获得713次分享
创作历程
  • 194篇
    2022年
成就勋章
TA的专栏
  • spring
    14篇
  • 面试
    17篇
  • Java
    151篇
  • 后端
    120篇
  • sql 
    1篇
  • 数据库
    21篇
  • 微服务
    3篇
  • 分布式
    9篇
  • kafaka
    4篇
  • MySQL
    11篇
  • 架构
    79篇
  • 大数据
    3篇
  • spring boot
    11篇
  • kafka
    2篇
  • 字节
    1篇
  • 字符
    1篇
  • 算法
    1篇
创作活动更多

超级创作者激励计划

万元现金补贴,高额收益分成,专属VIP内容创作者流量扶持,等你加入!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

面试必备:Java线程池解析

LinkedBlockingQueue(可设置容量队列)基于链表结构的阻塞队列,按FIFO排序任务,容量可以选择进行设置,不设置的话,将是一个无边界的阻塞队列,最大长度为Integer.MAX_VALUE,吞吐量通常要高于ArrayBlockingQuene;在使用线程池处理任务的时候,任务代码可能抛出RuntimeException,抛出异常后,线程池可能捕获它,也可能创建一个新的线程来代替异常的线程,我们可能无法感知任务出现了异常,因此我们需要考虑线程池异常情况。...
原创
发布博客 2022.07.29 ·
592 阅读 ·
0 点赞 ·
2 评论 ·
2 收藏

Java Bean 转 Map 的巨坑,注意了!!!

如使用fastjson,当属性为Long类型但数字小于Integer最大值时,反序列成Map之后,将变为Integer类型。(2)在某些场景下,Map的key并非和属性名完全对应,像是通过getset方法“推断”出来的属性名。JavaBean转Map的坑很多,最常见的就是类型丢失和属性名解析错误的问题。平时使用某些框架时,多写一些DEMO进行验证,多读源码,多调试,少趟坑。如果想严格和属性保持一致,可以使用反射获取属性名和属性值,加缓存机制提升解析的效率。...
原创
发布博客 2022.07.29 ·
795 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

零基础学Java(12)静态字段与静态方法

前面曾经多次提到过,由于每个类对象都可以修改公共字段,所以,最好不要有公共字段。,每个类只有一个这样的字段。而对于非静态的实例字段,每个对象都有自己的一个副本。例如,假设需要给每一个员工赋予唯一的标识码。类的静态方法不能访问id实例字段,因为它不能在对象上执行操作。最后,打印出下一个可用的员工标识码来展示静态方法。静态变量使用的比较少,但静态常量却很常用。类对象,则有1000个实例字段id,分别对应每一个对象。对象都有一个自己的id字段,但这个类的所有实例将共享一个。它属与类,而不属于任何单个的对象。...
原创
发布博客 2022.07.28 ·
388 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JAVA多线程

基本概念在我们操作系统中运行的程序就是进程,比如播放器,游戏等等......一个进程可以有多个线程,如视频中同时可以听声音,看图像,看弹幕等等.......程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念。但是进程则是执行程序的一次执行过程,他是一个动态的概念。是系统资源分配的单位通常在一个进程中可以包含若干个线程,当然一个进程中至少有一个线程,不然没有存在的意义。线程是CPU调度和执行的单位注意:很多多线程是模拟出来的,真正的多线程是指有多个cpu,即多核,如服务器等等......很
原创
发布博客 2022.07.28 ·
237 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Javaweb-JSP详解Toretto

request客户端向服务器发送请求,产生的数据,用户看完就没用了,比如新闻,用户看完就没用了,比如新闻用户看完一条新闻,那这条新闻就没用了session客户端向服务器发送请求,产生的数据,用户用完一会还有用,比如购物车application客户端向服务器发送请求,产生的数据,一个用户用完了,其它用户还可能使用,比如聊天数据;其它的,就会被生成到_jspService()方法中在JSP中嵌入Java代码即可。注意JSP的注释不会在浏览器页面显示,HTML的会显示。...
原创
发布博客 2022.07.28 ·
216 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

面试题:Java中为什么只有值传递?

如果参数是引用类型,传递的就是实参所引用的对象在栈中地址值的拷贝,这里创建的副本是地址的拷贝。我们可以换个角度理解,如果我们把栈地址当成值,会创建栈地址副本(复制栈帧),栈地址最终并没有改变,改变的是堆内存中的值。虽然调用完函数后,str2变量值(堆中的数据)改变了,但是参数是引用类型,传递的实参是栈中地址值,这是我们关心的,拷贝的是栈中地址值,最终栈中地址值并没有改变。引用传递方法接收的是实际参数所引用的地址,不会创建副本,对形参的修改将影响到实参,即不创建副本,会影响原生对象。...
原创
发布博客 2022.07.28 ·
168 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java基础之AQS

va开发中,我们的应用程序经常会使用多线程提高程序的运行效率,多线程情况下访问线程共享变量可能会带来并发问题,此时就需要并发锁解决并发问题。Java提供了两种类型的并发控制机制synchonrized关键字和AQS框架,二者各有优势,不过在加锁解锁场景比较灵活的情况下,我们往往会采用AQS框架来解决并发问题。本文会对Java中的AQS框架的结构和源码进行简单介绍。本文大多数内容参考了。......
原创
发布博客 2022.07.27 ·
181 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java中AES加密和解密的方法分享

/返回基本编码格式的密钥,如果此密钥不支持编码,则返回。kgen.init(128,newSecureRandom(password.getBytes()));System.out.println("解密后的内容"+newString(decrypt,"utf-8"));System.out.println("加密后的2进制密文"+newString(encrypt));System.out.println("加密后的2进制密文"+newString(byte2));...
原创
发布博客 2022.07.26 ·
3176 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

Java8日期时间(LocalDate、LocalTime、LocalDateTime)

Java中1.8之前有date类,date类到了1.8大部分的方法被弃而且date类如果不格式化可读性十分差,而simpledateformat方法中format和parse方法都是线程不安全的。Java1.8之后出现了localdate,localdatetime,localtime这些类,而这些类使用了final来修饰,使得这些类是不可变的,一旦实例化,值就固定了,有点类似于String类,所以这些类都是线程安全的。...
原创
发布博客 2022.07.26 ·
3933 阅读 ·
4 点赞 ·
0 评论 ·
9 收藏

Java 插入公式到PPT幻灯片

owerPoint幻灯片中可插入公式,用于在幻灯片放映时演示相关内容的论证、推算的依据,能有效地为演讲者提供论述的数据支撑。通过后端程序代码,我们可借助特定的工具来实现在幻灯片中的插入公式,本文,将对此作详细介绍。...
原创
发布博客 2022.07.26 ·
245 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java面试题

​start()方法用于启动线程,run()方法用于执行线程的运行代码,run()可以反复调用,而start()方法只能被调用一次。sleep是线程中的方法,但是wait是Object中的方法,sleep方法不会释放lock,但是wait会释放,linklist双链表,对象存在独立的空间中,保存下一个连接的索引,但查询非常麻烦,从第一个索引开始擦寻。hash值主要是用来在散列存储结构中确定对象的存储地址的,提高对象的查询效率,如HashMap、其中模型层代表的是数据,...
原创
发布博客 2022.07.26 ·
127 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[Java学习笔记] Java异常机制(也许是全网最独特视角)

一句话简单理解异常是程序运行中的一些异常或者错误。(纯字面意思)
原创
发布博客 2022.07.26 ·
161 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java 中的异常处理机制

异常是程序在运行过程中出现的程序异常事件,异常会中断正在执行的正常指令流。Java中的异常分为两大类Exception和Error。下面是Exception和Error的类定义Exception和Error都继承了Throwable类,在Java中只有Throwable类型的实例才可以被抛出(throw)或者被捕获(catch)。Exception和Error体现了Java平台设计者对不同异常情况的分类。内存溢出(OutOfMemoryError)...
原创
发布博客 2022.07.26 ·
800 阅读 ·
2 点赞 ·
0 评论 ·
3 收藏

强烈推荐!史上最有深度的Java学习视频,Mybatis、Javaweb、SSM框架项目

主讲课程为Mybatis框架。这门课程有两门前驱的课JavaSE和Javaweb,后继还有Spring框架和SpringMVC框架,微服务框架和互联网分布式技术。
原创
发布博客 2022.07.26 ·
676 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

零基础学Java(10)面向对象-使用LocalDate类完成日历设计 _

在我们完成这个日历设计前,需要了解Java中的预定义类LocalDate的一些用法。
原创
发布博客 2022.07.26 ·
203 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

使用JAVA CompletableFuture实现流水线化的并行处理,深度实践总结

好啦,关于JAVA中的使用,以及并行编程相关的内容呢就介绍到这里啦。看到这里,相信您应该有所收获吧?那么你的项目里有这种适合并行处理的场景吗?你在处理并行场景的时候是怎么做的呢?评论区一起讨论下吧~~本文中有提及执行时所使用的默认线程池是,早在JAVA7版本就已经被引入,但是很多人对不是很了解,实际项目中使用的也比较少。其实对的合理利用,可以让我们在面对某些多线程场景时会更加的从容高效。在后面的文章中,我会针对有关的内容进行专门的介绍与探讨,如果有兴趣,可以点个关注,及时获取后续的内容。https。...
原创
发布博客 2022.07.26 ·
4270 阅读 ·
10 点赞 ·
4 评论 ·
34 收藏

零基础学Java(11)自定义类

之前的例子中,我们已经编写了一些简单的类。但是,那些类都只包含一个简单的main方法。现在来学习如何编写复杂应用程序所需要的那种主力类。通常这些类没有main方法,却有自己的实例字段和实例方法。要想构建一个完整的程序,会结合使用多个类,其中只有一个类有main方法。//字段field1field2...//构造方法...//普通方法method1method2...}接下来将上面的伪代码填充完整name=n;}}}文件staff){...
原创
发布博客 2022.07.26 ·
769 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

常用的分布式事务解决方案

事务由一组操作构成,我们希望这组操作能够全部正确执行,如果这一组操作中的任意一个步骤发生错误,那么就需要回滚之前已经完成的操作。也就是同一个事务中的所有操作,要么全都正确执行,要么全都不要执行。说到事务,就不得不提一下事务著名的四大特性。原子性 原子性要求,事务是一个不可分割的执行单元,事务中的所有操作要么全都执行,要么全都不执行。一致性 一致性要求,事务在开始前和结束后,数据库的完整性约束没有被破坏。隔离性 事务的执行是相互独立的,它们不会相互干扰,一个事务不会看到另一个正在运行过程中的事务的数据。持久性
原创
发布博客 2022.06.23 ·
590 阅读 ·
0 点赞 ·
1 评论 ·
2 收藏

数据库面试题(开发者必看)

存储过程就像我们编程语言中的函数一样,封装了我们的代码(PLSQL、T-SQL)。存储过程的优点:存储过程的缺点:上面的文字我们肯定是看不懂的,也不愿意看下去的。接下来我就总结一下:视图是一种基于数据表的一种虚表有的时候,我们可能只关系一张数据表中的某些字段,而另外的一些人只关系同一张数据表的某些字段...那么把全部的字段都都显示给他们看,这是不合理的。我们应该做到:他们想看到什么样的数据,我们就给他们什么样的数据...一方面就能够让他们只关注自己的数据,另一方面,我们也保证数据表一些保密的数据不会泄露出来
原创
发布博客 2022.06.22 ·
3495 阅读 ·
5 点赞 ·
0 评论 ·
15 收藏

源码解析:面试必问的LinkedList,看这篇文章就够了

LinkedList 底层基于链表实现,增删不需要移动数据,所以效率很高。但是查询和修改数据的效率低,不能像数组那样根据下标快速的定位到数据,需要一个一个遍历数据。 是基于链表实现的结构,主要核心是 节点,源码如下:结构如下图所示:这是一个双链表的的结构,有 前置指针和 后置指针。还有首节点、尾结点、长度:添加数据LinkedList添加元素有两个方法:add(E e) 和 **add(int index,E e)**。add(E e) 是在链表的尾部添加数据add(int index,
原创
发布博客 2022.06.22 ·
365 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多