自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 文件下载并打成压缩包

【代码】文件下载并打压缩包。

2022-11-17 15:56:29 325 1

原创 rabbitmq入门

一 、什么是消息队列消息队列可以看作是一个存放消息的容器,当我们需要使用消息的时候,直接从容器中取出消息供自己使用即可。中间件二、 为什么要用消息队列 通过异步处理提高系统性能(减少响应所需时间)。 削峰/限流 降低系统耦合性。 三 、使用消息队列带来的一些问题 系统可用性降低: 系统可用性在某种程度上降低,为什么这样说呢?在加入 MQ 之前,你不用考虑消息丢失或者说 MQ 挂掉等等的情况,但是,引入 MQ 之后你就需要去考虑了! 系统复杂性提高: 加入

2021-09-20 22:59:33 167

原创 反转n到m的链表节点

public ListNode reverseList2(ListNode head, int left, int right) { ListNode node = new ListNode(0); //为原链表定义一个头节点,方便操作 node.next = head; //定位到left节点前一个位置 ListNode pre = node; for (int i = 0; i < left -...

2021-09-17 21:28:46 174

原创 三数之和的简单解法(容易理解)

主要是对双指针的运用。1.把数组进行排序,这样两个相同的数就会排在一起,方便去重。2.外层循环确定第一个数,里面两个指针确定另外两个数。public class ThreeSumDemo { public static List<List<Integer>> threeSum(int[] nums){ List<List<Integer>> lists = new ArrayList<>(); .

2021-09-16 19:38:10 8133

原创 LRU算法(最近最少使用)的简单实现

public class LRUCacheDemo { int cap; //利用有序的map来存贮元素 Map<Integer, Integer> map = new LinkedHashMap<>(); //初始化容量上限 public LRUCacheDemo(int capacity) { this.cap = capacity; } public int get(int key) { .

2021-09-15 09:26:05 171

原创 从上到下打印二叉树

public class PrintFromTopToBottomDemo { public ArrayList<Integer> printFromTopToBottom(TreeNode root){ //创建返回的集合 ArrayList<Integer> arrayList = new ArrayList<>(); //创建要借助的队列 LinkedList<TreeNode&gt.

2021-09-14 22:20:17 66

原创 java的快速排序一种思路

/** * 快速排序 */ public static int[] QuickSort(int[] arr, int left, int right) { if (left > right) { return arr; } //找到主元 int pivot = arr[left]; int i = left; int j = right; .

2021-09-12 13:17:07 47

原创 ThreadPoolExcutor线程池的简单实践

线程池的执行流程:首先创建一线程池,使用带有核心线程数、最大线程数、销毁时间、单位、阻塞队列和拒绝策略的构造方法。 使用循环创建线程并执行 最后销毁执行细节:任务的请求到来时,如果线程池的核心线程数未满,则创建线程,否则查看阻塞队列,如果阻塞队列未满添加任务进阻塞队列,否则查看线程池中的线程是否达到最大,如果没有达到最大,则创建线程,否则使用拒绝策略public class ThreadPoolDemo { private static final int COREPOOLSIZ

2021-09-10 16:45:30 595

原创 JDK动态代理实现短信的发送

注意:jdk的动态代理,被代理的对象必须要实现接口。//定义发送短信的接口public interface SmsService { String send(String message);}//实现类class SmsServiceImpl implements SmsService{ @Override public String send(String message) { System.out.println("输入的是"+messa.

2021-09-09 20:10:19 134

原创 简述选择排序的思路

思路:先找出数组中的最小值,然后获得最小值和最小值的索引,把最小值与第一个值交换 。确定最小的的位置后,不再把有序部分纳入下个最小值的查找。 public static int[] select(int[] arr){ for(int i=0;i<arr.length-1;i++){ int min=arr[i]; int minIndex=i; for(int j=i+1;j<arr.l

2021-09-09 18:28:52 131

原创 简述插入排序的思路

思路:1.把整个数组分为有序和无序两部分,拿第后面一个与前一个相比,如果小于前一个,就把前面的往后挪,直到找到插入的位置。2.每次比较都从有序部分最后一个往前比。3.一轮后前面有序的部分往后增加,一轮结束后,找到最大值。public static int[] insertion(int[] arr){ for(int i=1;i<arr.length;i++){ int temp=arr[i]; int j; .

2021-09-08 20:58:33 375

原创 大白话冒泡排序

思路:像冒泡一样,每一轮通过比较找到一个最大的排到最后, 接下里每一轮都减少一次比较 循环轮数是数据总数减1优点:思路简单缺点:每次都要比较,效率低代码如下:用两种不同的方式表达,最后结果都是相同的public static int[] bubble(int[] arr){ for (int i = arr.length-1; i > 0; i--) { for (int j=0;j<i;j++){ i..

2021-09-07 22:40:01 57

原创 mybatis-plus插件的问题

问题:发现MybatisPlusInterceptor报红,显示不存在。发现mybatis-plus的坐标也导入了。解决:原来是版本的问题,mybatis-plus3.4.0之后才有的这个类,换3.4.0之后就好了

2021-08-21 15:32:12 501 1

原创 MySQL “Zero date value prohibited“ 问题

Cause: java.sql.SQLException: Zero date value prohibited; Zero date value prohibited; nested exception is java.sql.SQLException: Zero date value prohibited日期的最小值不能比“1900-01-01 00:00:00”更小了 否则会报错!解决方法:1.修改原数据 2.在mysqlurl 中添加z...

2021-08-21 15:13:07 5055

原创 springboot中无法访问static中的静态资源?

在springboot中访问一个路径却报404

2021-06-19 11:44:32 228 1

原创 模拟CAS

package test;import java.time.LocalDateTime;public class test10{ public static void main(String[] args) { final CompareAndSwap cas=new CompareAndSwap(); for(int i=0;i<10;i++) { new Thread(new Runnable() { @Override public void ru.

2021-05-26 00:43:34 59

原创 方法参数传递机制

1.形参是基本数据类型传递数据值2.实参是引用数据类型的值传递地址值特殊的类型:String,包装类等不可变性例子:import java.util.Arrays;public class test11 { public static void main(String[] args) { int i=1; Integer num=2; int[] arr=new int[]{1,2,3}; String str="he"; change(i,num

2021-05-21 16:08:42 39

原创 类初始化和实例初始化

一、类的初始化过程1.一个类要创建实列需要先加载并初始化该类——main方法所在的类需要先加载和初始化2.一个子类要初始化需要先初始化父类3.一个类初始化就是执行<clinit>()方法——<clinit>()方法由静态代码类变量显示赋值代码和静态代码块组成——类变量显示赋值代码和静态代码块代码从上到下顺序执行——<clinit>()方法只执行一次程序执行结果:(5)(1) (10) (6)二、实例初始化过程1.实例初始化就

2021-05-21 15:25:04 439

原创 单例模式的实现

一、饿汉式//饿汉式class Singleton{ public static final Singleton SINGLETON=new Singleton(); private Singleton() { }}1.类加载的时候创建对象//枚举类饿汉式enum Singleton1{ SINGLETON;}2.枚举类默认是static的//静态代码块的饿汉式class Singleton2{ public static final Sing..

2021-05-21 13:20:03 61 1

原创 SSM慕课书评网项目

目录一、主要涉及的技术点二、项目展示三、ssm整合四、项目的目录结构五、项目地址一、主要涉及的技术点1.spring、springmvc、mybatis-plus 框架2.前端bootstrap UI和wangEditor富文本编辑器3.Kaptcha验证码组件4.springtask任务调度5.mysql数据库和可视化工具navicat二、项目展示三、ssm整合1.添加相关依赖<repositories> &l.

2021-05-20 20:12:31 1382 16

空空如也

空空如也

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

TA关注的人

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