<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[OpenGao的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/OpenGao</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; OpenGao]]></copyright><item><title><![CDATA[SpringBoot3.0 Native构建]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/128273474</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/128273474</guid><author>OpenGao</author><pubDate>Sun, 11 Dec 2022 13:47:14 +0800</pubDate><description><![CDATA[SpringBoot3.0 native]]></description><category></category></item><item><title><![CDATA[请求的异步处理，多线程处理数据。问题及解决方案整体思路记录]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/126229485</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/126229485</guid><author>OpenGao</author><pubDate>Mon, 08 Aug 2022 17:09:18 +0800</pubDate><description><![CDATA[多线程拆分任务，异步执行]]></description><category></category></item><item><title><![CDATA[java创建万年历，维护节假日信息]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/125409466</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/125409466</guid><author>OpenGao</author><pubDate>Wed, 22 Jun 2022 15:05:57 +0800</pubDate><description><![CDATA[java获取万年历]]></description><category></category></item><item><title><![CDATA[你只管粘贴。复制我帮你解决]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/121140879</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/121140879</guid><author>OpenGao</author><pubDate>Thu, 04 Nov 2021 14:40:54 +0800</pubDate><description><![CDATA[上班的时候总有一些数据是要保存的。而有些时候因为数据表关联要改的数据并不是只改一张表。直接在系统中保存还方便一些。如果想要简单一些。直接拿到需要保存的数据对接口发送请求。但是需要处理授权。

    如果把要保存的数据放到Excel中。监听ctrl v然后把数据写入到粘贴板中就可以只粘贴不用复制了。

    然后就用python写一个小工具来实现这些功能

    python读取xlsl文件的时候xlrd的版本需要指定。


pip install xlrd==1...]]></description><category></category></item><item><title><![CDATA[目录下超出指定大小的文件路径]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/119701841</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/119701841</guid><author>OpenGao</author><pubDate>Sat, 14 Aug 2021 15:58:44 +0800</pubDate><description><![CDATA[目录下超出指定大小的文件路径这种需求任何语言来实现都很简单。无非是递归查询出所有的文件。判断出所有大于指定大小的文件。

之前一直使用的语言都是java，但是java对于这类很小的需求来讲。不是很适用。java语言需要依赖运行时环境。如果是编译性语言就好多了。

go语言可以直接编译成二进制文件。直接运行。不依赖运行环境。正好最近也学习了两周的go正好就当做第一阶段的go语言知识总结写了个小工具。

go语言刚刚学习。实现过程也是磕磕绊绊。代码极不规范。但是也算是有一点点成就感。



可以使用配置文件或.]]></description><category></category></item><item><title><![CDATA[一千桶水中找出一桶有毒的水]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/119519815</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/119519815</guid><author>OpenGao</author><pubDate>Sun, 08 Aug 2021 20:37:47 +0800</pubDate><description><![CDATA[起因
最近离职了，可以一整天的在技术群里吹水了。
然后在群里看到有人拿题出来，就试着做了一下。

经过
我看到题的第一个想法是每个老鼠喝两桶找到重叠被毒死的老鼠例如第一只老鼠喝1,2第二只喝2，3。如果2有毒那么就是第二只被毒死。
然后我洗澡的时候突然想起之前看李永乐老师的一个视屏。多个集合中不同的数字。让学生随意想一个数。然后是否包含在集合中快速的得出结果。用了二进制来做。我思考了一下这个解决方案完美适用。
大致思路

被毒死的填1存活的为0。这样就可以得到被存在毒药序号的二进制数。然后转成10进制就可以]]></description><category></category></item><item><title><![CDATA[获取B站评论抽奖实现]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/118032685</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/118032685</guid><author>OpenGao</author><pubDate>Fri, 18 Jun 2021 20:11:08 +0800</pubDate><description><![CDATA[今天逛B站看了一个我喜欢的up主发的视屏，（音乐区up主）。然后视屏下面有人评论说要赞助抽些奖品。我就随手写了评论。要帮他写抽奖。




]]></description><category></category></item><item><title><![CDATA[SpringBoot 打包时排除jar 使用 windows部署]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/117443432</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/117443432</guid><author>OpenGao</author><pubDate>Tue, 01 Jun 2021 15:14:10 +0800</pubDate><description><![CDATA[在pom 的plugin中添加配置信息


    &lt;build&gt;
        &lt;plugins&gt;
            &lt;plugin&gt;
                &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
                &lt;artifactId&gt;spring-boot-maven-plugin&lt;/artifactId&gt;
               ]]></description><category></category></item><item><title><![CDATA[JUC之ContDownLatch CyclicBarrier  Semaphore使用记录]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/112510498</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/112510498</guid><author>OpenGao</author><pubDate>Tue, 12 Jan 2021 15:44:24 +0800</pubDate><description><![CDATA[水平有限，只记录使用方法和个人理解，不保证全对
闲聊

第一次学习到JUC时候应该是19年，JUC包下的AQS和CAS 并发容器 相关的类都了解了一遍。当时想记录下来但是又觉得理解不够深刻。日常工作中又很少会用到相关的知识。所以一直搁浅到现在。中间陆陆续续遗忘又捡起。
慢慢的发现如果只有学习没有产出，学习的意义好像就是当你遇到一个场景会想到有这种解决方案，然后继续去找这方面的东西重新补充。
所以试着以当下的状态去叙述这些东西，也算是以后再拿起的索引

ContDownLatch

ContDownLatch]]></description><category></category></item><item><title><![CDATA[mysql 自定义函数验证证件号码]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/108321715</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/108321715</guid><author>OpenGao</author><pubDate>Mon, 31 Aug 2020 15:16:38 +0800</pubDate><description><![CDATA[证件号码有着自己的验证规则，如果只正则验证位数和字符范围系统中很有可能会出现错误的证件号码，系统中有很大多数据可能是导入并未经过系统验证。查询出这些有问题的证件号码

此函数只适用于18位证件号码，因为我们的需求就是15位证件号码算错误的


CREATE FUNCTION `getErrorIdNumer`(idNumbe VARCHAR(20)) RETURNS bigint(1)
BEGIN
  DECLARE result  BIGINT(1) DEFAULT 0;
	
	SET @i = 1; -]]></description><category></category></item><item><title><![CDATA[freemaker导出word时出现值被分割的问题处理]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/107663026</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/107663026</guid><author>OpenGao</author><pubDate>Wed, 29 Jul 2020 14:41:37 +0800</pubDate><description><![CDATA[没错，你们最爱的小工具又要出现了。博客好久没有更新了。主要吧，最近好像也没有学习什么东西。之前导出word使用的是freemaker，将编写好的word模板保存为xml格式在改成ftl。然后导出

抽取出一个工具类


import freemarker.template.Configuration;
import freemarker.template.Template;

import javax.servlet.ServletOutputStream;
import javax.servlet.htt]]></description><category></category></item><item><title><![CDATA[项目中时间格式字符转换成日期]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/102628443</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/102628443</guid><author>OpenGao</author><pubDate>Fri, 18 Oct 2019 17:43:24 +0800</pubDate><description><![CDATA[上一个项目做完了闲置了一段时间所以有一些时间将项目中一些小经验整理分享一下，也防止下次使用的时候找不到。

第一次完整的负责一个项目的框架搭建技术选型，所以也注意到了之前所忽略的一些小问题，这次拿出一个点单独分析。



访问时使用get方法直接在地址栏中输入参数看看会出现什么问题



没有任何操作的话时间格式的字符还时字符串并不能直接赋值给时间类型的变量。




@InitBinder
pu...]]></description><category></category></item><item><title><![CDATA[mybatis自动生成中文注释实体类,mapper和dao]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/90264801</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/90264801</guid><author>OpenGao</author><pubDate>Thu, 16 May 2019 16:15:09 +0800</pubDate><description><![CDATA[之前查了mybaits生成实体类,spring 可以使用generate来生成,但是注释全部都是英文,很不友好,对于我这种英语考不过二级的人来讲完全是灾难,最后在网上查了很多人通过修改源码可以生成中文注释的方法,用起来还是很不错的,也有人直接修改后打成jar包用起来也很方便改一下配置文件就可以 用了很久我才发现另一个很好用的生成带中文注释,放上地址https://github.com/macroz...]]></description><category></category></item><item><title><![CDATA[java 将查询结果集转为树形结构]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/89762668</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/89762668</guid><author>OpenGao</author><pubDate>Thu, 02 May 2019 16:57:33 +0800</pubDate><description><![CDATA[在需要使用树形菜单的时候，z-tree是可以直接传数据父级id 对应子集pid自动生成树形结构，但z-tree这个框架毕竟年级较大了大家都知道年纪大的人都长得丑毕竟像我这么年轻才能天下第一帅，在使用很多树形控件时候需要的数据格式是固定的也就是子集需要在父级的一个集合属性里。（好了，可能是我们的前端太菜了不会写，非逼着我转结构）

比如



这样就需要我们在后台将数据处理成指定格式在转成json了...]]></description><category></category></item><item><title><![CDATA[Oracle常用函数和一些常用查询使用方法]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/86551465</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/86551465</guid><author>OpenGao</author><pubDate>Mon, 21 Jan 2019 09:36:25 +0800</pubDate><description><![CDATA[这最近那不是谈了个对象吗。对象有些优秀啊，我就很着急，我要学习啊。不能让妹子给比下去了啊，所以，大家都不要嘲讽我上班时候看博客查文档总结笔记写心得了。

做为一个经验很少的开发来讲呢，对于数据库的理解非常的片面，所以这片博客呢，主要还是记录一些函数的使用方式，当然了，写这些函数之前呢当然要吹点牛了，显得我专业嘛，对于Oracle的理解呢，毕竟是小公司，每个人都是DBA（没有DBA）能接触到的厉害的...]]></description><category></category></item><item><title><![CDATA[指定字符拼装成的字符串对象,转成java对象]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/81152687</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/81152687</guid><author>OpenGao</author><pubDate>Sun, 22 Jul 2018 11:10:33 +0800</pubDate><description><![CDATA[因为业务需要,对象为字符串拼装,在网上找了很久都没有找到类似的工具类,所以就自己写了一个

去年写的代码,最近比较闲,拿过来又看了看发现了很多Bug,重新改了一下,还是有很多问题,比如集合属性的赋值

用到并完善的人请留言给我,


/**
 * String 以指定字符装换成对象的工具类
 */
public class StringToObjiect {
   //私有构造说明是工具类
   ...]]></description><category></category></item><item><title><![CDATA[跨域请求的笔记]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/80812955</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/80812955</guid><author>OpenGao</author><pubDate>Tue, 26 Jun 2018 17:01:41 +0800</pubDate><description><![CDATA[以前关于跨域请求的理解就止于jsonp请求,在慕课中看了关于跨域的问题,记录一篇笔记,首先记录一下跨域问题产生的原因,get请求跨域请求数据的时候是可以请求到后端的,后端返回数据也是正常的但是却显示不出来,并不是服务器端不允许跨域,而是浏览器端出于安全考虑而拦截了返回回来的数据,如果启动浏览器时添加参数,使浏览器不拦截返回的数据就可以看到返回数据是正常的(添加启动参数的方法请百度一下,我也没记住,...]]></description><category></category></item><item><title><![CDATA[idea忽然启动很慢的问题]]></title><link>https://blog.youkuaiyun.com/OpenGao/article/details/80306449</link><guid>https://blog.youkuaiyun.com/OpenGao/article/details/80306449</guid><author>OpenGao</author><pubDate>Mon, 14 May 2018 10:44:21 +0800</pubDate><description><![CDATA[idea确实很好用，但是配置有点麻烦。刚开始用的时候觉得很好用，但是突然就有一天启动特别的慢。在网上找了很久，有人说是项目在中文文件夹的路径下，有的说是断点在方法名上面我找了自己的项目发现还是没有符合这种情况，而且不用debug启动一样很慢，直到前天我在硬盘上想要删掉这个项目的时候，忽然发现不知道为什么多了超级多子的目录，选择删除的时候提示的是文件名过长，然后我写了个递归删除的方法，居然删了十分钟...]]></description><category></category></item></channel></rss>