编程
小朋友哈哈
喝咖啡的小朋友
展开
-
JWT的基础介绍
JWT原创 2022-07-04 10:51:32 · 289 阅读 · 1 评论 -
Map的实现类的顺序性
Map的实现类原创 2022-06-24 10:26:23 · 801 阅读 · 0 评论 -
swagger文档配置
springboot整合swagger配置原创 2022-06-23 15:47:01 · 1012 阅读 · 0 评论 -
stream使用
文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言stream流的使用一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、流的中间操作1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotli.原创 2022-04-25 16:54:17 · 255 阅读 · 0 评论 -
map中put和putIfAbsent的区别
put:不管key存不存在,都要进行保存操作(假如key存在,相当于这次put会覆盖之前的key和value值);putIfAbsent:如果key已存在,则不进行保存;原创 2022-04-25 10:54:04 · 278 阅读 · 0 评论 -
拦截器和过滤器
拦截器对action请求起作用,动态拦截action调用的对象。主要是拦截客户请求并作出相应的处理。实现原理基于Java反射机制(动态代理)来实现的。不依赖servlet容器触发时机:请求进入servlet后,在进入Controller之前拦截器的方法 方法名 说明 preHandle() 此方法将在请求处理之前调用,返回值是Boolean类型。如果返回false,标识请求结束,之后的拦截器和contr原创 2022-04-24 19:49:36 · 707 阅读 · 0 评论 -
JSON.parseObject的用法
fastJson对于json格式字符串的解析主要用到了一下三个类:JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换。JSONObject:fastJson提供的json对象。JSONArray:fastJson提供json数组对象。我们可以把JSONObject当成一个Map<String,Object>来看,只是JSONObject提供了更为丰富便捷的方法,方便我们对于对象属性的操作。我们看一下源码。同样我们可以把JS原创 2022-04-07 10:53:43 · 24255 阅读 · 0 评论 -
java状态机(订单状态控制)
一.状态机状态机是状态模式的一种应用,相当于上下文角色的一个升级版。在工作流或游戏等各种系统中有大量使用,如各种工作流引擎,它几乎是状态机的子集和实现,封装状态的变化规则。状态机可以帮助开发者简化状态控制的开发过程,让状态机结构更加层次化。二.状态机要素把状态机的要素分为4个要素,即:现态、条件、动作、次态。“现态”和“条件”是因,“动作”和“次态”是果。(1)现态:是指当前所处状态;(2)条件:又称为“事件”。当条件被满足时,将会触发一个动作,或者执行一次状态的迁移。(3)动作:条件原创 2022-04-06 16:23:51 · 15628 阅读 · 1 评论 -
npm install全局安装找不到命令
所有账户均有效修改/etc/profile文件sudo vi /etc/profile在末尾添加以下内容export PATH=$PATH:/opt/node-v16.14.2-linux-x64/bin退出当前shell再重新登录即可生效或执行source /etc/profile该命令npm install全局安装找不到命令_Andy____Li的博客-CSDN博客_npm: 未找到命令http://t.csdn.cn/OtdWH...原创 2022-03-30 16:31:44 · 3389 阅读 · 0 评论 -
java 获取当前时间的三种方法
1.通过Util包中的Date获取Date date = new Date();SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd :hh:mm:ss");System.out.println(dateFormat.format(date));2.通过Util包的Calendar 获取Calendar calendar= Calendar.getInstance();SimpleDateFormat dateFor原创 2022-02-23 15:10:06 · 851 阅读 · 0 评论 -
正则表达式
正则表达式基本语法_w3cschool正则表达式匹配:Pattern.compile("xxx").matcher("xx").matches()正则表达式查找Pattern.compile("xxx").matcher("xx").find()1. ^表示字符串的开始,$表示字符串的结束"^The":表示所有以"The"开始的字符串("There","The cat"等);"of despair$":表示所以以"of despair"结尾的字符串; "^abc$":表示开原创 2022-02-11 15:17:31 · 99 阅读 · 0 评论 -
list.stream().的操作
1.StringUtils类中isEmpty与isBlank的区别StringUtils.isEmpty(String str)判断某字符串是否为空,为空的标准是 str==null 或 str.length()==0StringUtils.isNotEmpty(String str)等价于 !isEmpty(String str)System.out.println(StringUtils.isEmpty(null)); //trueSystem.out.println(..原创 2022-01-19 17:59:22 · 2709 阅读 · 0 评论 -
lambdaQueryWrapper中常用方法
原创 2021-12-22 11:24:30 · 1004 阅读 · 0 评论 -
把新建的项目提到gitLab的一个组内
1.首先要配置SSHKey2.在组内新建一个project,(里面可以设置项目的存储路径以及项目名称)3.选中上传文件夹右键选择Git Bash Here4.git设置5.项目上传git initgit remote add origin [email protected]:mizyy/test1.git(自己的git地址)git add .git commit -m "Initial commit"git push -u origin master...原创 2021-11-05 14:45:45 · 496 阅读 · 0 评论 -
java获取当前时间,本周一,周日..的时间,以及时间格式转换
import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;public class TestDate { public static void main(String[] args) { //时间格式转换 SimpleDateFormat dateFormat =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); .原创 2021-10-19 16:48:47 · 1835 阅读 · 0 评论 -
java标准日期和毫秒时间戳
import java.text.ParseException;import java.text.SimpleDateFormat; public class dateFormatUtil { public static void main(String[] args) throws ParseException { //当前时间的时间戳(毫秒) long time = System.currentTimeMillis(); System.ou.原创 2021-10-19 16:13:03 · 537 阅读 · 1 评论 -
Mysql通过limit和offset分页
//从student表中筛选出前10个学生select * from student limit 10//索引是从0开始的,从第2条数据开始取,取10条数据select * from student limit 1,10//从student表中筛选出10个学生,从第四个数据开始取select * from student limit 10 offset 3...原创 2021-09-27 16:28:32 · 202 阅读 · 0 评论 -
java将结果导出以及获取excel的数据
/** * 导出changeQuery结果 */ public String resultExport(long taskId) { //创建工作表和sheet XSSFWorkbook workbook = new XSSFWorkbook(); XSSFSheet sheet = workbook.createSheet(); sheet.setDefaultColumnWidth(20); ...原创 2021-09-27 15:03:38 · 234 阅读 · 0 评论 -
Java8 流处理过程进行toMap规约处理时的java.util.stream.Collectors.lambda$throwingMerger$0(Collectors.java:133)异常
一、异常现象和问题描述在进行将流规约处理为Map时出现冲突导致规约合并失败异常导致流规约异常,异常现象为抛出合并异常,如下:运行抛出异常:Exception in thread "main" java.lang.IllegalStateException: Duplicate key 28 at java.util.stream.Collectors.lambda$throwingMerger$0(Collectors.java:133) at java.util.HashMa转载 2021-09-18 09:53:57 · 2138 阅读 · 0 评论 -
git撤销已经推送(push)到远程仓库的提交(commit)信息操作
(说在前面,其实也可以不用撤销,重新提交便可。老板可以直接看你最后一次提交的和最开始哪里有变化,中间的不会在意,当然前提是允许)本文是git需要撤销已经push到远程仓库的提交操作。在git push之后,发现还有一些代码需要修改,这些改动的代码在原则上不应该作为一次新的提交,这个时候,就需要撤销推送(git push)与提交(git commit),然后进行代码修改,再次重新提交和推送。1.撤销提交信息首先通过git log 查看提交的信息,可以获取需要回退的版本号. 查看提交...原创 2021-08-18 11:08:58 · 11859 阅读 · 1 评论 -
守护线程和非守护线程
1.java提供两种类型的线程:用户线程和守护线程。2.用户线程是高优先级线程,jvm在终止任务之前等待所有用户线程完成其任务。 守护线程是低优先级线程,其作用是为用户线程提供服务。3.一个守护线程是在后台执行并且不会阻止JVM终止的线程。4.只要当前JVM存在一个非守护线程没有结束,守护线程就全部工作,只有当最后一个非守护线程结束时,守护线程就会随着JVM一同结束工作。(如果用户线程已经全部退出运行,只剩下守护线程,那么JVM就会退出。)5.java线程的退出:至少有一个线程是非守护.原创 2021-08-17 15:14:50 · 917 阅读 · 1 评论 -
字母的排列问题(java实现)import java.util.ArrayList; import java.util.List; import java.util.Scanner; public c
假设s="ABC",若f(String str)方法可以实现str的全排列第一种方式:采用list实现:递归的方式import java.util.ArrayList;import java.util.List;import java.util.Scanner;public class test { public static void main(String[] args) { Scanner sc=new Scanner(System.in);原创 2020-10-25 16:28:14 · 4053 阅读 · 0 评论 -
mysql(case when then)用法
case 有两种格式,简单case函数和case搜索函数一.简单case函数和搜索函数简单case函数case sex when '1' then '男' when '2' then '女’ else '其他' end搜索函数case when sex = '1' then '男' when sex = '2' then '女' else '其他' end二.不同:这两种方式可以实现相同的功能,但是有的时候,函数在功能方面没有搜索函数好;case函数.原创 2020-10-04 09:15:04 · 7915 阅读 · 1 评论 -
Servlet的生命周期
1.Servlet的生命周期:是从Servlet出现到销毁的全过程。分为以下阶段:加载类-->实例化(为对象分配空间)-->初始化(为对象的属性赋值)-->请求处理(服务阶段)-->销毁2.3.服务器启动时(web.xml中配置load-on-startup=1,默认为0)或者第一次请求该servlet时,就会初始化一个Servlet对象,也就是会执行初始化方法init(ServletConfig conf),该servlet对象去处理所有客户端请求,service(原创 2020-08-21 20:00:32 · 142 阅读 · 0 评论 -
TCP连接管理机制(三次握手和四次挥手)
建立连接都是单方向建立的。1.三次握手(可以超过三次,但不能低于三次)(1)过程:客户端发送一个建立连接的SYN请求到服务端,服务端接收以后,返回对这条SYN建立连接请求的一个ACK响应,并且发送一个服务端到客户端建立连接的一个SYN请求 ,合并发送到客户端,客户端接收以后,这个时候客户端到服务端的连接就建立起来了。客户端还要回复一个ACK响应给服务端,服务端接收到这个响应以后,服务端到客户端就连接起来了。 第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入S...原创 2020-08-18 17:40:06 · 272 阅读 · 0 评论 -
OSI七层网络模型
第一层至第七层:物理层:(硬件)(集线器,双绞线,wifi电磁波)数据链路层:互联设备之间传送和识别数据帧。(交换机)网络层:地址管理与路由选择(路由器)(ARP,IP,ICMP)传输层:数据传输,负责可靠传输(UDP和TCP,SCTP,DCCP)(复用分用)会话层:通信管理,负责建立和断开通信连接。(没有落地)表示层:设备固有数据格式和网络标准数据格式的转换。(没有落地)应用层:(主机)针对特定应用的协议。(DNS,URL,HTML,HTTP,NAT,NADP,TSL/SSL,原创 2020-08-17 20:01:34 · 94 阅读 · 0 评论 -
java中,CompareTo方法
CompareTo方法1.用于两种方式的比较:(1)字符串与对象进行比较; (2)按字典顺序比较两个字符串;2.语法: int compareTo(Object o) ...原创 2020-08-09 09:37:40 · 3383 阅读 · 0 评论 -
不重复打印排序数组中相加和为给定值的所有二元组(杠上了)
给定排序数组arr和整数k,不重复打印arr中所有相加和为k的不降序二元组例如, arr = [-8, -4, -3, 0, 1, 2, 4, 5, 8, 9], k = 10,打印结果为:1, 92, 8[要求]时间复杂度为O(n),空间复杂度为O(1)import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Sc原创 2020-08-04 16:43:34 · 203 阅读 · 0 评论 -
堆排序,包含建大堆小堆
堆排序:堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。堆:堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆对堆中的结点按层进行编号,将这种逻辑结构映射到数组中堆排序的基本思想:将待排序序列构造成一个大顶堆,此时,整个序列的最大值就是堆顶的根节点。将其与末尾元素进行交换,此时末尾就为最大值。然后将剩余n-1个元原创 2020-07-30 21:28:33 · 821 阅读 · 0 评论 -
ReentranceLock和synchronized的区别
1.synchronized是可重入锁,同一线程每进入一次,锁的计数器都会加一,释放锁时计数器都会减一,只有当计数器为0时,才能释 放锁。2.ReentranceLock是JDK实现的,synchronized是JVM实现的,前者可以看到源码,后者很难看到。3.synchronized的性能在以前是很差的,但引入了偏向锁,轻量级锁之后两者的性能就差不多了4.synchronized的使用比较方便简洁,由编译器去保证锁的加锁和释放,jvm会帮助我们做释放锁的操作,而ReentranceLoc..原创 2020-07-28 16:45:42 · 754 阅读 · 0 评论 -
图书管理系统(基于Java和MySQL)
项目名称 图书管理系统项目介绍 图书管理系统主要是针对管理员的,管理员首次登录需要注册,登录进去之后,管理员可以对学生的借书,还书的信息进行管理,也可以对学生,班级和图书进行不同的分类和管理,达到方便,快速管理书籍的目的。开发环境与涉及到的知识 Windows ...原创 2020-07-24 13:43:38 · 8445 阅读 · 5 评论 -
背包问题(求和,神奇的口袋)java
1.求和输入两个整数 n 和 m,从数列1,2,3.......n 中随意取几个数,使其和等于 m ,要求将其中所有的可能组合列出来题目解析:基于递归实现 dfs(深度优先搜索) 即可. 这是一个比较典型的背包问题思路:假设问题的解为F(n, m),可分解为两个子问题 F(n-1, m-n)和F(n-1, m)。对这两个问题递归求解,求解过程 中,如果找到了符合条件的数字组合,则打印出来 例如 1, 2, 3, 4, 5, 求有多少中组合和为 5 对于 1 这个元素 来说, 可能会放到结果中,原创 2020-05-29 16:26:07 · 317 阅读 · 0 评论 -
Http状态码
1开头的http状态码表示临时响应并需要请求者继续执行操作的状态代码。100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。2开头的http状态码表示请求成功200 成功处理了请求,一般情况下都是返回此状态码;201 请求成功并且服务器创建了新的资源。202 接受请求但没创建资源;203 返回另一资源的请求;204 服...原创 2020-05-15 16:53:05 · 89 阅读 · 0 评论 -
IP地址为A类B类C类D类E类
简单的说根据IP地址的范围可以判断:A、类网络的IP地址范围为:1.0.0.1-126.255.255.254;B、类网络的IP地址范围为:128.1.0.1-191.255.255.254;C、类网络的IP地址范围为:192.0.1.1-223.255.255.254具体解释:1.A类IP地址一个A类IP地址由1字节(每个字节是8位)的网络地址和3个字节主机地址组成,网络地址的最高位必须是“0”,即第一段数字范围为1~126。每个A类地址可连接16387064台主机,Interne..原创 2020-05-15 16:43:10 · 6214 阅读 · 0 评论 -
年会抽奖----java
今年公司年会的奖品特别给力,但获奖的规矩却很奇葩:1. 首先,所有人员都将一张写有自己名字的字条放入抽奖箱中;2. 待所有字条加入完毕,每人从箱中取一个字条;3. 如果抽到的字条上写的就是自己的名字,那么“恭喜你,中奖了!”现在告诉你参加晚会的人数,请你计算有多少概率会出现无人获奖?输出描述:对应每一组数据,以“xx.xx%”的格式输出发生无人获奖的概率。重点:错排错排可以用下面两种方式计算:1)公式:2)递推:a1=0,a2=1,当n≥3时,这个问题可以转化为排列.原创 2020-05-11 22:56:32 · 668 阅读 · 0 评论 -
成绩排序(java)
查找和排序题目:输入任意(用户,成绩)序列,可以获得成绩从高到低或从低到高的排列,相同成绩都按先录入排列在前的规则处理。示例:jack70peter96Tom70smith67从高到低成绩peter96jack70Tom70smith67从低到高smith...原创 2020-05-05 20:39:45 · 2391 阅读 · 0 评论 -
排序时间
1:简单选择 最好时间 O(n^2) 平均时间O(n^2) 最坏时间 O(n^2) 2:直接插入 最好时间 O(n) 平均时间O(n^2) 最坏时间 O(n^2) 3:冒泡排序 最好时间 O(n) 平均时间O(n^2) 最坏时间 O(n^2) 4:希尔排序 最好时间 O(n) ...原创 2020-05-03 20:33:32 · 253 阅读 · 0 评论 -
旧键盘(java)
旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc=new Scanner(Sys...原创 2020-04-22 15:31:13 · 178 阅读 · 0 评论 -
赋值带随机指针的链表
给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。要求返回这个链表的深拷贝。我们用一个由 n 个节点组成的链表来表示输入/输出中的链表。每个节点用一个 [val, random_index] 表示: val:一个表示 Node.val 的整数。 random_index:随机指针指向的节点索引(范围从 0 到 n-1);如果不指向...原创 2020-04-22 12:18:17 · 136 阅读 · 0 评论 -
只出现一次的数字(java)
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。class Solution { public int singleNumber(int[] nums) { //方法一 Set<Integer> s=new HashSet<>(); for (int i =...原创 2020-04-22 12:14:57 · 215 阅读 · 0 评论