- 博客(126)
- 收藏
- 关注
原创 【JWT的使用】
JSON Web Token简称JWT,用于对应用程序上用户进行身份验证的标记。使用 JWTS 之后不需要保存用户的 cookie 或其他session数据,同时可保证应用程序的安全。JWT是经过加密处理与校验处理的字符串,形式为:A.B.C–A由JWT头部信息header加密得到–B由JWT用到的身份验证信息JSON数据加密得到–C由A和B加密得到,是校验部分–官方测试网站://生成token //1、准备数据 Map map = new HashMap();
2023-07-28 19:26:07
519
原创 stream流的collect出现空指针异常
如果你的stream中存在null元素,而在使用collect方法时没有对null值进行处理,你可以使用过滤器方法(filter)来过滤掉null元素,或者使用Optional类来处理可能为null的元素。如果你的代码中存在多个可能为空的对象,你可以使用Java 8中的Optional类来处理这些对象。这段代码将会将list中的null元素替换成"default"字符串,并将所有元素收集到一个新的List中。这段代码将会过滤掉list中的null元素,然后将剩余的元素收集到一个新的List中。
2023-07-18 16:33:17
5260
原创 【WebSocket】
WebSocket 是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接, 并进行双向数据传输。HTTP是短连接WebSocket是长连接HTTP通信是单向的,基于请求响应模式WebSocket支持双向通信HTTP和WebSocket底层都是TCP连接**思考:**既然WebSocket支持双向通信,功能看似比HTTP强大,那么我们是不是可以基于WebSocket开发所有的业务功能?
2023-07-13 23:44:56
657
原创 【Excel导出文件】
Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目。简单来说就是,我们可以使用 POI 在 Java 程序中对Miscrosoft Office各种文件进行读写操作。一般情况下,POI 都是用于操作 Excel 文件。银行网银系统导出交易明细各种业务系统导出Excel报表批量导入业务数据。
2023-07-12 00:05:55
164
原创 【Mybatis-Plus租户id结合定时任务 @Scheduled】
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考。
2023-07-10 09:22:15
811
4
原创 【Spring Boot中使用Quartz框架实现在到期的前一天完成提醒的Java示例代码】
这个配置文件中,我们指定了Quartz使用内存作为任务存储方式,同时配置了线程池的大小和优先级。// 设置任务参数,例如任务到期时间 } });// 每天执行一次 simpleTriggerFactoryBean . setStartTime(new Date());} }
2023-07-06 17:04:33
1000
原创 RabbitMQ部署指南
我们在Centos7虚拟机中使用Docker来安装。接下来,我们看看如何安装RabbitMQ的集群。首先,我们需要让3台MQ互相知道对方的存在。我们先来看普通模式集群。
2023-05-21 23:24:41
390
原创 SpringCloud实用篇02
使用Feign的步骤:① 引入依赖② 添加@EnableFeignClients注解③ 编写FeignClient接口④ 使用FeignClient中定义的方法代替RestTemplate类型作用说明修改日志级别包含四种不同的级别:NONE、BASIC、HEADERS、FULL响应结果的解析器http远程调用的结果做解析,例如解析json字符串为java对象请求参数编码将请求参数编码,便于通过http请求发送支持的注解格式默认是SpringMVC的注解失败重试机制。
2023-05-16 10:23:04
339
原创 nacos集群搭建
实际部署时,需要给做反向代理的nginx服务器设置一个域名,这样后续如果有服务器迁移nacos的客户端也无需更改配置.其中包含3个nacos节点,然后一个负载均衡器代理3个Nacos。官方推荐的最佳实践是使用带有主从的高可用数据库集群,主从模式的高可用数据库可以参考。将nacos文件夹复制三份,分别命名为:nacos1、nacos2、nacos3。Nacos默认数据存储在内嵌数据库Derby中,不属于生产可用的数据库。然后分别修改三个文件夹中的application.properties,
2023-05-16 10:19:54
430
原创 【SpringCloud01】
单体架构:简单方便,高度耦合,扩展性差,适合小型项目。例如:学生管理系统分布式架构:松耦合,扩展性好,但架构复杂,难度大。适合大型互联网项目,例如:京东、淘宝微服务:一种良好的分布式架构方案①优点:拆分粒度更小、服务更独立、耦合度更低②缺点:架构非常复杂,运维、监控、部署难度提高SpringCloud是微服务架构的一站式解决方案,集成了各种优秀微服务功能组件SpringCloudRibbon的底层采用了一个拦截器,拦截了RestTemplate发出的请求,对地址做了修改。
2023-05-11 00:59:47
674
原创 Linux中docker的学习与使用
1.(统一软件规范)传统虚拟机是虚拟出一个主机硬件, 并且运行一个完整的操作系统, 然后在这个系统上安装和运行软件,各种操作系统安装的软件差异较大。所以选择在操作系统上安装一个容器类软件docker ,将来我们安装软件全部都安装在docker里面,那么安装文件就完全一样了。而且他像yum一样有自己的远程仓库。2.(容器:[运行的程序]间是相互隔离,线程和内存)容器内的应用直接运行在宿主机的内核之上, 容器并没有自己的内核, 也不需要虚拟硬件, 相当轻量化。
2023-05-08 14:18:22
356
原创 创建VUE2 前端以及后端的交互
创建vue2项目1.javascript–>vue(不要勾选)–>安装element-ui()–>执行指令(npm i element-ui -S)–>在main.js中引入(import ElementUI from ‘element-ui’;),再引入使用指令引入后最终样式为2.安装axios()–>起步–>安装(npm install axios)3.进入vue-router官网(
2023-05-08 11:53:58
751
原创 【linux的学习与软件安装】
提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-05-05 20:51:48
468
原创 【运维篇 项目打包部署】
将request.js的url改成/?将生成的dist下的静态资源放到static下在登录配置类中添加放行路径用maven的package打成jar包提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-05-04 23:34:06
377
原创 分页 查询 搜索
service跟serviceImpl也要改。UserManager.vue页面。做页面表格,发axios请求。request.js页面。controller改一下。拦截器里面做跨域预检。
2023-04-20 20:03:01
65
原创 小程序开发
rich-text nodes="标题">* 页面相关事件处理函数--监听用户下拉动作。* 生命周期函数--监听页面初次渲染完成。* 生命周期函数--监听页面加载。* 生命周期函数--监听页面显示。* 生命周期函数--监听页面隐藏。* 生命周期函数--监听页面卸载。* 页面上拉触底事件的处理函数。* 用户点击右上角分享。
2022-10-05 22:40:59
287
原创 【接口的内容小结】
在Java9+版本中,接口的内容可以有:1.成员变量其实是常量,格式:[public] [static] [final] 数据类型 常量名称 = 数据值;注意:常量必须进行赋值,而且一旦赋值不能改变。常量名称完全大写,用下划线进行分隔。2.接口中最重要的就是抽象方法,格式:[public] [abstract] 返回值类型 方法名称(参数列表);注意:实现类必须覆盖重写接口所有的抽象方法,除非实现类是抽象类。3.从Java8开始,接口里允许定义默认方法,格式:[pub
2022-03-13 23:46:34
48
原创 【接口的抽象方法定义】
package cn.itcast.day10.demo01;/*在任何版本的Java中,接口都能定义抽象方法。格式:public abstract 返回值类型 方法名称(参数列表);注意事项:1.接口当中的抽象方法,修饰符必须是两个固定的关键字:public abstract2.这两个关键字修饰符,可以选择性的省略。(今天刚学,不推荐)3.方法的三要素可以随意定义 */public interface MyInterfaceAbstract { //这是一个抽象方法 .
2022-03-13 11:32:45
851
原创 【接口的定义基本格式】
package cn.itcast.day10.demo01;/*接口就是多个类的公共规范。接口是一种引用数据类型,最重要的内容就是其中的:抽象方法如何定义一个接口的格式:public interface 接口名称{ //接口内容}备注:换成了关键字interface之后,编译生成的字节码文件仍然是:.java-->.class.如果是Java7,那么接口中可以包含的内容有:1.常量2.抽象方法如果是Java8,还可以额外包含有:3.默认方法4.静态方法.
2022-03-13 11:20:51
1195
原创 【Math练习:小学数学真题】
package cn.itcast.day08.demo04;/*题目:计算在-10.8--5.9之间,绝对值大于6或者小于2.1的整数有多少个?分析:1.既然已经确定了范围,for循环2.起点位置-10.8应该转换成为-10,两种办法: 2.1可以使用Math.ceil方法,向上(向正方向)取整 2.2强转成为int,自动舍去所有小数位3.每一个数字都是整数,所以步进表达式应该是num++,这样每次都是+1的。4.如何拿到绝对值:Math.abs方法。5.一旦发现了一.
2022-03-08 17:51:30
155
原创 【数学工具类Math】
package cn.itcast.day08.demo04;/*java.util.Math类是数学相关的工具类,里面提供了大量的静态方法,完成与数学运算相关的操作。public static double abs(double num):获取绝对值。有多种重载public static double ceil(double num):向上取整。public static double floor(double num):向下取整。public static long round(dou.
2022-03-08 17:30:34
139
原创 【Arrays练习:字符串倒序】
package cn.itcast.day08.demo04;import java.util.Arrays;/*题目:请使用Arrays相关的API,将一个随机字符串中的所有字符升序排列,并倒序打印。 */public class Demo02ArraysPractise { public static void main(String[] args) { String str = "jdwhsjshdui35413dkjjcj"; //如何进行.
2022-03-08 17:08:41
55
原创 【数组工具类Arrays两个常用方法】
package cn.itcast.day08.demo04;import java.util.Arrays;/*java.util.Arrays是一个与数组相关的工具类,里面提供了大量静态方法,用来实现数组常见的操作public static String toString(数组):将参数数组变成字符串(按照默认格式:[元素1,元素2,元素3....]public static void sort(数组):按照默认升序(从小到大)对数组的元素进行排序。备注:1.如果是数值,sort.
2022-03-08 16:57:33
80
原创 【静态代码块】
package cn.itcast.day08.demo03;/*静态代码块的格式是:public class 类名称{ static{ //静态代码块的内容 }}特点:当第一次用到本类时,静态代码块执行唯一的一次静态内容总是优先于非静态,所以静态代码块比构造方法先执行静态代码块的典型用途:用来一次性的对静态成员变量进行赋值 */public class Demo04Static { public static void main(String[].
2022-03-08 16:38:27
75
原创 【静态static关键字修饰成员方法】
package cn.itcast.day08.demo03;public class MyClass { int num;//成员变量 static int numStatic;//静态变量 //成员方法 public void method(){ System.out.println("这是一个成员方法。"); //成员方法可以访问成员变量 System.out.println(num); .
2022-03-07 11:16:04
64
原创 【静态static关键字修饰成员变量】
package cn.itcast.day08.demo03;/*如果一个成员变量使用了static关键字,那么这个变量不再属于对象自己,而是属于所在的类。多个对象共享同一份数据。 */public class Demo01StaticField { public static void main(String[] args) { Student one = new Student("郭靖",19); one.room = "101教室"; .
2022-03-07 10:42:39
63
原创 【统计输入的字符串中各种字符出现的次数】
package cn.itcast.day08.demo02;import java.util.Scanner;/*题目:键盘输入一个字符串,并且统计其中各种字符出现的次数种类有:大写字母、小写字母、数字、其他思路:1.既然用到键盘输入,肯定是Scanner2.键盘输入的是字符串,那么:String str = sc.next();3.定义四个变量,分别代表四种字符各种的出现次数4.需要对字符串一个字、一个字检查,String-->char[],方法就是toCharArra.
2022-03-05 22:07:38
775
原创 【按指定格式拼接字符】
package cn.itcast.day08.demo02;/*题目:定义一个方法,把数组{1,2,3}按照指定格式拼接成一个字符串。格式参照如下:[word1#word2#word3]分析:1.首先准备一个int数组,内容是1、2、32.定义一个方法,用来将数组变成字符串三要素返回值类型:String方法名称:fromArrayToString参数列表:int[]3.格式:[word1#word2#word3]用到:for循环、字符串拼接、每个数组元素之前都有一个word字.
2022-03-05 21:41:28
102
原创 【字符串的分割方法】
package cn.itcast.day08.demo02;/*分割字符串的方法:public String[] split(String regex):按照参数的规则,将字符串切割成为若干部分。注意事项:split方法发参数其实是一个正则表达式,今后学习今天要注意:如果按照英文句点“.”进行切分,必须写“\\.”(两个反斜杠) */public class Demo05StringSplit { public static void main(String[] args) {.
2022-03-05 21:24:15
224
原创 【字符串的转换相关方法】
package cn.itcast.day08.demo02;/*String当中与转换相关的常用方法有:public char[] toCharArray():将当前字符串拆分成为字符数组作为返回值public byte[] getBytes():获得当前字符串底层的字节数组public String replace(CharSequence oldString,CharSequence newString);将所有出现的老字符串替换成为新的字符串,返回替换之后的结果新字符串备注:Ch.
2022-03-05 17:53:41
67
原创 【字符串的获取相关方法】
package cn.itcast.day08.demo02;/*String当中获取相关的常用方法有:public int length():获取字符串当中含有的字符个数,拿到字符串长度public String concat(String str):将当前字符串和参数字符拼接成为返回值新的字符串public char charAt(int index):获取指定索引位置的单个字符。(索引从0开始)public int indexOf(String str):查找参数字符串在本字符串当中.
2022-03-05 17:14:07
114
原创 【字符串的比较相关方法】
package cn.itcast.day08.demo02;/*==是进行对象的地址值比较,如果确定需要字符串的内容比较,可以使用两个方法:public boolean equals(Object obj):参数可以是任何对象,只有参数是一个字符串并且内容相同的才会给true,否则返回false注意事项:1.任何对象都能用Object进行接收2.equals方法具有对称性,也就是a.equals(b)和b.equals(a)效果一样3.如果比较双方一个常量一个变量,推荐把常量字符串写在.
2022-03-05 10:51:33
61
原创 【字符串的常量池】
package cn.itcast.day08.demo01;/*字符串常量池;程序当中直接写上的双引号字符串,就在字符串常量池中。对于基本类型来说,==是进行数值比较对于引用类型来说,==是进行地址值比较 */public class Demo02StringPool { public static void main(String[] args) { String str1 = "abc"; String str2 = "abc"; .
2022-03-05 10:15:45
31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人