自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于分布式一致性

说到一致性,我们可能最先想到的数据库里的事务这里的讨论的是分布式的一致性

2023-09-23 03:36:04 187

原创 Java 二叉树的三种遍历 - 循环版本

【代码】Java 二叉树的三种遍历 - 循环版本。

2023-09-21 03:48:53 95

原创 ThreadLocal 原理简析(弱引用,内存泄漏)

threadlocal原理,包含弱引用,内存泄漏分析

2023-01-12 02:32:21 171

原创 大文本文件生成 python/go 性能比较

大文本文件生成 python go 性能比较

2022-10-11 04:40:01 141

原创 fedora 手动设置ip,gateway

这里要注意的是有2个概念:device和connection,其中ip,gateway是device的属性,我看好多博客说修改gateway用的是。,这样会直接报错说没有这个connection,因为connection和网卡是两码事。fedora比较新,不能用像centos-7的方式修改。文件了,需要用到nmcli命令。

2022-09-20 18:20:09 857

原创 记一次问题排查 ShardingSphere JDBC 读写分离配置 创建DataSource失败

ShardingSphere JDBC

2022-07-16 22:40:17 2407

原创 Hive 分组group by后取top-k

首先需要了解一下rank函数,这个函数有啥用呢?就是可以另外生成一列,内容是每一行的编号先看一下咱的表长啥样select * from student;然后用rank函数# 还能根据age排序select *, rank() over (order by age) from student;了解完rank的用法后,新的问题是:在group by后的每个组都单独进行编号(比如成绩按日期dt分组,然后再排序)在over’中加入parition即可,这里给出语法,场景就不解释了select

2022-05-22 10:26:54 579

原创 MyBatis中的mapper执行时会新建SqlSession吗?

MyBatis在原生的MyBatis里面,SqlSession都是手动控制的,比如官网的例子就是这样:同时官网也说了建议一个线程对应一个SqlSession。这个比较好理解,如果多个事务共用一个SqlSession的话,那就做不到相互隔离了。同时,因为tomcat将一个http请求对应一个线程,所以一个http请求对应一个SqlSession。MyBatis-Plus使用mp时,可以发现没有手动创建SqlSession的过程了,都是直接注入一个Mapper就开干,那么SqlSession什么时候

2022-04-09 10:38:52 1536 1

原创 springboot放行静态资源

F12看看你的请求要访问哪些静态资源,然后用/**/*.xx的格式写即可如果拦截器已经写好了,就不用看下面这个拦截器代码了@Component@Slf4jpublic class AuthInterceptor implements HandlerInterceptor { @Value("${delivery.auth.activate}") private boolean activate; @Autowired private HttpSession ses

2022-04-06 19:35:12 1872

原创 centos7安装mysql客户端

centos7安装mysql正确姿势

2022-01-15 12:17:32 839

原创 获取int成员变量,报NullPointerException

get成员变量,报空指针异常

2022-01-13 20:28:44 96

原创 powermock mock私有方法

单单用来自Mockito的@InjectMocks了会报错还要再套一层PowerMockito的spypublic class World { private Banana banana = new Banana(); public Banana getBanana() { return banana; } private String secretGreeting(String s){ return "i am sec

2021-12-02 00:54:05 5748

原创 VS Code将内置PowerShell的编码修改为UTF-8

ctrl+shift+b打开命令面板,输入settings.json,打开配置文件在最后的大括号里面加上: "terminal.integrated.profiles.windows": { //这里的windows表示win10系统 "PowerShell-1": { "source": "PowerShell", "args": ["-NoExit", "chcp 65001"] //设置编码 // "args": [

2021-09-02 11:47:03 763

原创 为什么读也要加锁?通过ArrayBlockingQueue源码进行分析

首先分析一下为什么写要加锁以offer方法为例(增加元素)public class ArrayBlockingQueue<E> extends AbstractQueue<E> implements BlockingQueue<E>, java.io.Serializable { /** 存元素的数组 */ final Object[] items; /** take, poll, peek , remove: 出队,队首元素的下标

2021-03-05 18:11:34 334

原创 SpringBoot和AJAX

ajax写法不同,springboot接收参数的方式也不同ajax如果这样写:有两点注意:contentType指定为json,那么data需要用stringify包装,否则@RequestParam就要报错了(返回状态码400)另外,json数据不能用@RequestParam接收,因为@RequestParam接收的是url后面跟着的参数,而不是body中的 $.ajax({ url:"http://127.0.0.1:8088/hello/u2", data: JSON.s

2021-01-14 01:01:19 523

原创 linux maven 打包失败

从镜像生成的云主机就是不利索mvn package时总是报错:[ERROR] The build could not read 1 project -> [Help 1][ERROR][ERROR] The project com.wyz:DeliveryTakingSystem:0.0.2-SNAPSHOT (/root/gitRepo/DeliveryTakiingSystem/pom.xml) has 5 errors[ERROR] Non-readable POM /ro

2021-01-12 03:40:40 1184

原创 前后端分离 jquery ajax 表单提交

首先来看一下form格式,注意我们可以不用用原生的action和method,而是在后面用jquery帮我们完成一切<form method="post" class="layui-form"> <input name="username" placeholder="用户名" type="text" lay-verify="required" class="layui-input" > <hr class="hr15"> <input n

2020-11-26 21:00:38 446

原创 springboot集成thymeleaf找不到模板

报错:template might not exist or might not be accessible by any of the configured我最终发现是pom.xml里面多写了一些东西,删了就好: <!-- <packaging>pom</packaging> <modules> <module>profiles</module> </modules>

2020-11-26 00:09:24 630

原创 java指定编码utf8 编译 运行

编译:javac -encoding utf8 Cut.java执行:java -Dfile.encoding=utf8 Cut

2020-09-28 11:57:00 5001 2

原创 servlet 405问题

忘记注释了原来的doGetprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //super.doGet(req, resp); String name = req.getParameter("name"); resp.getWriter().write(name);}...

2020-09-19 23:09:28 99

原创 java web: NoClassDefFoundError解决

问题在servlet里面用了spring,启动tomcat时报错网上查了之后发现这个是 运行时错误,也就是说运行时找不到jar包了原因servlet执行的原理是把war包打出来后放到tomcat里,而我的pom.xml里面没有 <build>标签,导致打出来的war包没有lib,所以找不到依赖的jar包解决方法加上build标签 <build> <finalName>java_web_01</finalName>

2020-09-02 12:59:29 495

原创 剑指offer 丑数

题目描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。分析看了别人的思路, 感觉挺抽象, 自己又总结了一下…根据已有的丑数数组data, 通过乘上2,3,5, 去生成新的丑数[1] -> [1,2] -> [1,2,3]有3个指针p_2, p_3, p_5, 被指向的数会乘2,3,5, 每个指针都要遍历已有丑数数组, 这样就能保证不漏min(da

2020-08-25 11:45:58 102

原创 按层打印 按行打印 二叉树 双队列法

10 / \1 2 / \ 3 5用两个队列, 交替放层中的节点:把root节点放如队列0:队列0: [10]把对列0的节点都拿出来打印, 并把left和right放到队列1:队列1: [1,2]把对列1的节点都拿出来打印, 并把left和right放到队列0:队列0:[3,5]交替进行…每次把队列的元素拿光时, 换行即可public class Solution { public void f(TreeNode..

2020-08-23 10:28:18 127

原创 动态规划的2钟思路

例子:错排公式有n个信封(编号从1到n),n个信,每个信封放编号不同的信,有几种放法?1.生成法根据F(n-1)生成F(n):已经有n-1个错排好的信封了,再来一个信封n(里面放了信n),把信封n里面的信分别跟前面的n-1个信封i里的信j互换,可以生成的放法为:(n−1)∗F(n−1)(n-1)*F(n-1)(n−1)∗F(n−1)仔细观察互换的结果:原本:信封n — 信n信封i — 信j互换后:信封n — 信j信封i — 信n可以发现还漏了一种情况,即互换后还能是:信封n —

2020-08-10 10:42:58 99

原创 Java内部默认编码

不同平台可能不一样,一般是utf-8或者utf-16可以用以下代码查看String a = "坚持";byte[] bs = a.getBytes();System.out.println(new String(bs,"utf8"));System.out.println(new String(bs,"utf16"));结果如下:坚持髦貁说明我的默认编码是utf-8...

2020-07-21 11:15:03 334

原创 关闭Hyper-V, 再次开启虚拟机

window10家庭版搞docker之后发现虚拟机开不了了开mumu虚拟机的时候他给了我解决方法点击这个网易牛逼!!!

2020-06-03 00:13:19 1256

原创 Java遍历的坑

Java用int下标遍历数组时,如果数组太长,下标就溢出了,所以要采用迭代器的方法。https://leetcode-cn.com/problems/is-subsequence

2020-05-12 13:57:34 114

原创 栈运算器 Java实现

顺序是true and false, 运算符在中间状态转移图要想清楚遇到运算符, 如果栈顶是数值就直接压进去, 不要再去读下一个来计算, 因为我们的运算符在中间遇到数值, 这是再从栈中pop, 这时左中右是完整的, 可以进行计算栈顶是or(优先级低), 直接压栈, 以后处理栈顶是and(优先级高), pop两个, 计算完之后把新值压栈最后and都处理完了, 栈里...

2020-04-23 12:02:19 108

原创 Trie树 Java实现 内部类

Node每个Node用HashMap来实现, key是char, value是一个内部类DataData有两个成员, next指向下一个Node; isWord表示这个字母是不是单词的结尾内部类的成员和方法即使是private, 外部类也可访问Node有put方法, 用来放入对应的字母, 如果这个字母已经在node里了, 就看看需不需要改isWordNode有getNext方...

2020-04-23 00:23:19 103

原创 Sublime编译并运行Java,带Dos窗口(绝对ok)

因为懒得在后面的步骤中写path...故先将java的路径放进环境变量中,这些步骤详见    http://jingyan.baidu.com/article/d5c4b52b80665fda560dc5e4.html?allowHTTP=1然后在sublime-&gt;tools-&gt;build system-&gt;new build system中写入以下代码/*************...

2018-05-08 17:35:13 846

空空如也

空空如也

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

TA关注的人

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