<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Aiou_W的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Aiou_W</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Aiou_W]]></copyright><item><title><![CDATA[SpringSecurity整合redission序列化问题]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/149269916</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/149269916</guid><author>Aiou_W</author><pubDate>Fri, 11 Jul 2025 12:40:38 +0800</pubDate><description><![CDATA[这里得注意几个问题：1.为什么deserializer要用new ObjectMapper答：用JsonParse的 jp.getCodec().readTree(jp);会报错 missing type id property ‘@class’。2.为什么读取子类转化子类的时候要用jp.getCodec().treeToValue(jsonNode, clazz)]]></description><category></category></item><item><title><![CDATA[解决docker compose部署rocketmq，broker端口不能访问问题]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/148904238</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/148904238</guid><author>Aiou_W</author><pubDate>Wed, 25 Jun 2025 18:42:54 +0800</pubDate><description><![CDATA[docker compose部署rocketmq，一点得注意broker暴露的端口和broker.conf里面暴露的端口是否一致，不然会一直访问不通。]]></description><category></category></item><item><title><![CDATA[docker compose部署rocketmq，broker一直启动不成功问题]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/148726527</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/148726527</guid><author>Aiou_W</author><pubDate>Wed, 18 Jun 2025 00:27:56 +0800</pubDate><description><![CDATA[修改了权限然后docker-compose重试一下就行了，重试之前先把容器停止、删除，docker network也相应删除，idea中直接点down，该操作效果同前面操作。最近搞docker compose一键部署rocketmq，namesrv和dashboard启动正常，就broker一直启动不起来，折腾了老半天，贴个docker-compose文件。咋一看，配置文件出了问题，所以我一直在找是不是配置文件的路径出了错，但是进rmqnamesrv容器里面看，路径也没问题。]]></description><category></category></item><item><title><![CDATA[easyexcel批量导入]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/141325438</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/141325438</guid><author>Aiou_W</author><pubDate>Mon, 19 Aug 2024 15:14:57 +0800</pubDate><description><![CDATA[【代码】easyexcel批量导入。]]></description><category></category></item><item><title><![CDATA[easyexcel工具+表格标题自定义+表格合并]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/129310867</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/129310867</guid><author>Aiou_W</author><pubDate>Thu, 02 Mar 2023 23:11:47 +0800</pubDate><description><![CDATA[自定义表格合并注解。表格合并策略。表格标题自定义]]></description><category></category></item><item><title><![CDATA[使用自定义配置类ConfigurationProperties启动项目报错问题]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/127931072</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/127931072</guid><author>Aiou_W</author><pubDate>Fri, 18 Nov 2022 23:07:03 +0800</pubDate><description><![CDATA[使用自定义配置类ConfigurationProperties启动项目报错问题，报错得是自定义得配置类，网上搜有解决方案，很多都是不能解决问题得。]]></description><category></category></item><item><title><![CDATA[重启脚本查出多个pid情况]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/127469254</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/127469254</guid><author>Aiou_W</author><pubDate>Sat, 22 Oct 2022 23:22:39 +0800</pubDate><description><![CDATA[所以我怀疑有该程序的干扰进程。果然查到有tail干扰进程。然而结果却查出多个pid，而且每次执行脚本pid都会变。优化后，这下总算没有了。]]></description><category></category></item><item><title><![CDATA[服务器日志按时间导出]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/124006304</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/124006304</guid><author>Aiou_W</author><pubDate>Thu, 07 Apr 2022 09:56:46 +0800</pubDate><description><![CDATA[我这里有个需求是将服务器日志按时间导出。服务器日志是按月分的，所有的都导出不现实，十几个G完全没搞头。所以就需要筛选时间来进行导出。我使用的是sed命令，例：sed -n  ‘/2022-03-30 01:00:00.582/,/2022-03-30 23:59:59.740/p’ /var/log/202203.log &gt; /var/log/0330.log。额，我发现里面模糊搜索不行的，相当于将所有的日志copy一遍。所以我用了最原始的方法。用cat命令筛选开始时间，如cat /var/log/.]]></description><category></category></item><item><title><![CDATA[jboot上传时报Corrupt form data: premature ending问题]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/123531701</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/123531701</guid><author>Aiou_W</author><pubDate>Wed, 16 Mar 2022 17:33:09 +0800</pubDate><description><![CDATA[使用postman上传报错java.io.IOException: Corrupt form data: premature ending；
解决方案：请求改为POST


]]></description><category></category></item><item><title><![CDATA[java正则过滤xml中的cdata]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/123498845</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/123498845</guid><author>Aiou_W</author><pubDate>Tue, 15 Mar 2022 11:48:43 +0800</pubDate><description><![CDATA[直接上代码
public static void main(String[] args) {
        String xml = "&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n" +
                "&lt;res&gt;\n" +
                "&lt;userName&gt;xxx&lt;/userName&gt;\n" +
                "  &lt;payListInfo&gt;\n]]></description><category></category></item><item><title><![CDATA[java 判断Object对象为空或空字符串]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/120183914</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/120183914</guid><author>Aiou_W</author><pubDate>Wed, 08 Sep 2021 16:57:39 +0800</pubDate><description><![CDATA[一个对象的属性 既有 空字符串又有null,使用StringUtils.isBlank是判断不出来的
所以参考其他代码，自己封装了个方法，代码如下：

/**
     * 判断Object对象为空或空字符串
     * @param obj
     * @return true为空 false非空
     */
    public static boolean isAllFieldNull(Object obj){
        boolean flag = false;
        tr.]]></description><category></category></item><item><title><![CDATA[vuetify calendar实现日历考勤]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/119673802</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/119673802</guid><author>Aiou_W</author><pubDate>Fri, 13 Aug 2021 14:13:05 +0800</pubDate><description><![CDATA[最近有个需求是实现根据日历控制考勤打卡，工作日开放打卡按钮，节假日休息日不能打卡。
前端框架选的是vuetify,后端框架jboot。

考勤日历表设计
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for clock_calendar
-- ----------------------------
DROP TABLE IF EXISTS `clock_.]]></description><category></category></item><item><title><![CDATA[vuetify v-img 预览功能]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/118814763</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/118814763</guid><author>Aiou_W</author><pubDate>Fri, 16 Jul 2021 18:26:03 +0800</pubDate><description><![CDATA[引入外部vue方式
 			vue = new Vue({
            vuetify:  new Vuetify(),
            el: '#app',
            data: {
            //对话框
             dialog: false,
             //预览图片url
             previewImage: '',
			},
			 created: function(){
			    //指向vue]]></description><category></category></item><item><title><![CDATA[记录后端根据高德api计算两点之间的距离]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/118018698</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/118018698</guid><author>Aiou_W</author><pubDate>Fri, 18 Jun 2021 10:47:17 +0800</pubDate><description><![CDATA[最近上线的签到功能，会出现打不起卡的情况，不在打卡范围内

这是原代码
	/**
     * 2.经纬度算出两点间距离
     * */
    private long getDistance(String startLonLat, String endLonLat){
        try {
            String queryUrl = "http://restapi.amap.com/v3/distance?key="+key+"&amp;origins="+startLonL.]]></description><category></category></item><item><title><![CDATA[layui模板页面外部引用vue+vuetify踩坑]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/117293100</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/117293100</guid><author>Aiou_W</author><pubDate>Wed, 26 May 2021 15:37:58 +0800</pubDate><description><![CDATA[引入相关js

vue须放在vuetify前面
&lt;script type="text/javascript" src="#(RESOURCE_HOST)/static/js/Vue/Vue.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="#(RESOURCE_HOST)/static/js/Vue/vuetify.min.js"&gt;&lt;/script&gt;

页面部分,id为vue的id
	&lt;div  id=.]]></description><category></category></item><item><title><![CDATA[vue-antd-admin实现异步路由自动注册以及踩坑]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/115190054</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/115190054</guid><author>Aiou_W</author><pubDate>Wed, 24 Mar 2021 23:03:15 +0800</pubDate><description><![CDATA[最近在使用vue-antd-admin搭建后台系统。发现有一个缺点，就是路由不能自动注册，需要手动在router.map.js里面声明。这样显得不太方便。
所以琢磨了半天，终于实现了这个功能。

原来的手动注册：注释部分为添加的路由组件
// 视图组件
const view = {
  tabs: () =&gt; import('@/layouts/tabs'),
  blank: () =&gt; import('@/layouts/BlankView'),
  page: () =&gt; impor]]></description><category></category></item><item><title><![CDATA[ant vue使用方法内弹出框（vue-antd-admin ）]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/115132592</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/115132592</guid><author>Aiou_W</author><pubDate>Tue, 23 Mar 2021 17:37:12 +0800</pubDate><description><![CDATA[// 自定义配置，参考 ./default/setting.config.js，需要自定义的属性在这里配置即可
module.exports = {
//全局主题色
  theme: {
    color: '#13c2c2',
    mode: 'dark',
  },
  multiPage: true,
  animate: {
    name: 'lightSpeed',
    direction: 'left'
  }
}

main.js
import * as config from ]]></description><category></category></item><item><title><![CDATA[ant vue树形菜单a-tree回显以及踩坑]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/115003142</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/115003142</guid><author>Aiou_W</author><pubDate>Fri, 19 Mar 2021 12:47:39 +0800</pubDate><description><![CDATA[废话不多说，直接贴代码
html部分
 				&lt;a-form-item
                        :label="$t('grant')"
                        :labelCol="{span: 7}"
                        :wrapperCol="{span: 10}"
                &gt;
                    &lt;a-tree
                        ]]></description><category></category></item><item><title><![CDATA[nacos每隔30秒打印c.a.n.client.config.impl.ClientWorker : get changedGroupKeys:[]正确解决方案]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/114917811</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/114917811</guid><author>Aiou_W</author><pubDate>Wed, 17 Mar 2021 10:35:34 +0800</pubDate><description><![CDATA[我使用的是spring-cloud-alibaba,版本2.2.1.RELEASE，发现里面依赖的nacos cilent是1.2.1。在网上搜索说是升级nacos版本至1.3.0即可解决问题。刚开始以为是升级server,把nacos server升级了一下，结果没用。由于我使用的是spring-cloud-alibaba，不能单独升级nacos。索性直接升级spring-cloud-alibaba。version改为2.2.2.RELEASE。重启服务，那个频繁打印的鬼东西没了。
2.2.2依赖
	!.]]></description><category></category></item><item><title><![CDATA[poi导出excel损坏无法打开]]></title><link>https://blog.youkuaiyun.com/Aiou_W/article/details/113180639</link><guid>https://blog.youkuaiyun.com/Aiou_W/article/details/113180639</guid><author>Aiou_W</author><pubDate>Tue, 26 Jan 2021 15:26:31 +0800</pubDate><description><![CDATA[使用poi生成excel文件，格式为xlsx。 生成的文件出现打不开的情况

 @GetMapping("/export/excel")
    public void export(HttpServletResponse response){
        List&lt;CertificateEntity&gt; certificateEntityList = certificateService.list();
        List&lt;CertificateExcelVO&gt; certi]]></description><category></category></item></channel></rss>