<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Alicia]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/vdora</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; vdora]]></copyright><item><title><![CDATA[Java POI导出Excel时，合并单元格没有边框的问题]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/128565951</link><guid>https://blog.youkuaiyun.com/vdora/article/details/128565951</guid><author>vdora</author><pubDate>Thu, 05 Jan 2023 16:59:15 +0800</pubDate><description><![CDATA[Java POI导出Excel时，合并单元格没有边框的问题]]></description><category></category></item><item><title><![CDATA[解决 IntelliJ IDEA 高版本无法预览markdown的问题]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/122859489</link><guid>https://blog.youkuaiyun.com/vdora/article/details/122859489</guid><author>vdora</author><pubDate>Thu, 10 Feb 2022 14:13:39 +0800</pubDate><description><![CDATA[Markdown插件提示 There are no available preview providers，因此 使用插件更换IDEA JDK

一、下载Choose Runtime插件
快捷键Ctrl + Alt + S 打开设置 -&gt; Plugins

二、下载并解压IDEA JDK
IDEA JDK 下载地址
我下载的是这个（操作系统：Linux）：

下载之后解压IDEA JDK
使用插件更换IDEA JDK
快捷键Ctrl + Shift + A，输入choose，然后选择图中的选项

选.]]></description><category></category></item><item><title><![CDATA[Docker部署IDEA项目]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/121676672</link><guid>https://blog.youkuaiyun.com/vdora/article/details/121676672</guid><author>vdora</author><pubDate>Thu, 02 Dec 2021 15:40:04 +0800</pubDate><description><![CDATA[不得不说，用Docker部署项目真的太方便啦！
这里示例的是Docker部署Java项目，如果需要其他环境，创建对应的容器并配置即可。
Docker版本：1.13.1
JDK版本：openjdk version “1.8.0_111-internal”（因为镜像比较小）
Maven版本：3.5.4

一、开启2375端口

开启2375端口会引起安全漏洞。Docker提供了加密的远程管理端口2376，配合CA证书，就能提供TLS连接。

1、修改docker配置文件

vim /usr/lib/syste.]]></description><category></category></item><item><title><![CDATA[Java(Jdk1.8)通过ODBC 连接数据库(以SQLServer为例)]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/119870738</link><guid>https://blog.youkuaiyun.com/vdora/article/details/119870738</guid><author>vdora</author><pubDate>Mon, 23 Aug 2021 16:22:27 +0800</pubDate><description><![CDATA[由于JDK1.8移除了ODBC相关的部分，而将jdk1.8改为1.7也十分复杂（需要改动很多代码），因此可以采用以下的方案

一、配置ODBC数据源（Windows）

打开ODBC数据源设置（这里注意根据数据源选择对应的设置），选错会导致无法连接到数据库，我选择的是64位的。（如果不确定也可以先选择一种试一下，不成功的话换另一种）

在系统DNS中单击添加按钮3. 选择SQL Server Native Client 10.0
分别输入数据源名（数据库名）和IP地址

输入连接数据库的用户名和密码

单.]]></description><category></category></item><item><title><![CDATA[Ubuntu/Windows下Intelij IDEA无法使用Ctrl+Shift+F快捷键]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/119605506</link><guid>https://blog.youkuaiyun.com/vdora/article/details/119605506</guid><author>vdora</author><pubDate>Wed, 11 Aug 2021 14:38:48 +0800</pubDate><description><![CDATA[一、Windows

在Windows中可能是因为与 搜狗输入法 或者 QQ 中的快捷键冲突

原因：快捷键冲突
解决方案：取消或修改切换简繁体的快捷键 或者 为Find in files.../Find in path设置新的快捷键
1、取消或修改切换简繁体的快捷键
找到系统功能快捷键，取消勾选切换简繁体的快捷键并点击确定保存即可


2、修改快捷键
按快捷键Ctrl + Alt + S或者打开设置，在keymap搜索Find in Path，选中Find in Path后先移除Ctrl+Shift+F快]]></description><category></category></item><item><title><![CDATA[实体类与Map、JSONObject（fastjson）之间的互相转化]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/119350061</link><guid>https://blog.youkuaiyun.com/vdora/article/details/119350061</guid><author>vdora</author><pubDate>Tue, 03 Aug 2021 18:05:47 +0800</pubDate><description><![CDATA[一、Map和实体类之间的转换
# 以实体类User 为例
User user = new User();
Map&lt;String,Object&gt; map = new HashMap&lt;&gt;();

# Map转为实体类
User user = JSON.parseObject(JSON.toJSONString(map), User.class);

# 实体类转为Map
Map newMap = JSON.parseObject(JSON.toJSONString(user), Map.]]></description><category></category></item><item><title><![CDATA[Ubuntu20.04 安装 Tomcat 9.0.34]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/116588370</link><guid>https://blog.youkuaiyun.com/vdora/article/details/116588370</guid><author>vdora</author><pubDate>Mon, 10 May 2021 11:09:18 +0800</pubDate><description><![CDATA[一、解压安装包
tar -zxvf apache-tomcat-9.0.34.tar.gz 

二、修改目录所有权
用ll命令查询

修改所有权
chown -R 用户名:组名 文件

sudo chown -R alicia:alicia /usr/local/tomcat

修改之后，用ll查询

三、启动、停止Tomcat
# 启动
sh /usr/local/tomcat/apache-tomcat-9.0.34/bin/startup.sh
# 停止
sh /usr/local/tomcat/ap]]></description><category></category></item><item><title><![CDATA[Ubuntu20.04 安装 MySQL并配置远程连接（以MySQL 5.7.30为例）]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/116525006</link><guid>https://blog.youkuaiyun.com/vdora/article/details/116525006</guid><author>vdora</author><pubDate>Sat, 08 May 2021 14:56:43 +0800</pubDate><description><![CDATA[一、下载安装包
到官网下载所需版本的安装包
这里选择的是：

二、安装
1、解压压缩包
tar -xvf mysql-server_5.7.30-1ubuntu18.04_amd64.deb-bundle.tar

解压之后有这些文件

2、按照顺序安装
sudo dpkg -i libmysqlclient20_5.7.30-1ubuntu18.04_amd64.deb

（其他版本，根据这个顺序修改命令后面的deb文件即可，例如这里根据libmysqlclient20寻找对应的deb文件）


sudo]]></description><category></category></item><item><title><![CDATA[Ubuntu20.04 将 IDEA 加入菜单]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/116497271</link><guid>https://blog.youkuaiyun.com/vdora/article/details/116497271</guid><author>vdora</author><pubDate>Fri, 07 May 2021 16:54:24 +0800</pubDate><description><![CDATA[cd /usr/share/applications
sudo touch IDEA.desktop
sudo vim IDEA.desktop

写入以下内容并保存：
[Desktop Entry]
Encoding=UTF-8
Name=IDEA
Exec=/usr/local/idea-IU-211.7142.45/bin/idea.sh
Icon=/usr/local/idea-IU-211.7142.45/bin/idea.png
Terminal=false
Type=Application
C]]></description><category></category></item><item><title><![CDATA[解决“虚拟机使用的是此版本 VMware Workstation 不支持的硬件版本”]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/116492982</link><guid>https://blog.youkuaiyun.com/vdora/article/details/116492982</guid><author>vdora</author><pubDate>Fri, 07 May 2021 14:58:50 +0800</pubDate><description><![CDATA[今天将另外一台虚拟机复制到我的电脑上，用VMware Workstation打开的时候，提示当前版本的VMware Workstation不支持虚拟机使用的硬件版本

如果是新建虚拟机的时候，设置的硬件版本太低的话，可以通过更改的这里的设置来解决问题
右键单击虚拟机 -&gt; 管理 -&gt; 更改硬件兼容性

进入更改硬件兼容性向导，修改硬件兼容性


但是我这里的硬件兼容性已经是当前的VMware Workstation所能支持的最高的了，所以只能提高VMware Workstation的版本了。

]]></description><category></category></item><item><title><![CDATA[疑惑：Java JDK1.8的String的indexOf()方法，查找空字符串的索引，返回的是-1]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/116270721</link><guid>https://blog.youkuaiyun.com/vdora/article/details/116270721</guid><author>vdora</author><pubDate>Thu, 29 Apr 2021 15:57:30 +0800</pubDate><description><![CDATA[今天在使用indexOf遇到了一个不理解的情况，记录一下，希望已解决的人可以回复一下！
        String a = "alicia";
        int count1 = a.indexOf("",0);
        System.out.println(count);

上面这段代码的输出结果是0。于是我看了源码，传入的字符串为空字符串 的时候，他通过一个判断，返回的是这个字符串的长度，也就是0。

但是我觉得这和indexOf的返回值所代表的的含义不同。如果返回0说明在索引为0的位置]]></description><category></category></item><item><title><![CDATA[Java编译和反编译]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/115868519</link><guid>https://blog.youkuaiyun.com/vdora/article/details/115868519</guid><author>vdora</author><pubDate>Mon, 19 Apr 2021 17:05:39 +0800</pubDate><description><![CDATA[今天在研究自动装箱与拆箱，通过反编译的方式来看具体是怎么实现的，所以使用了编译和反编译的命令，记录一下。
public class Main{
    public static void main(String[] args) {
        Integer i1 = 40;
        Integer i2 = 40;
        Integer i3 =0;
        System.out.println(i1 == i2 + i3);
    }
}

编译
javac Main.]]></description><category></category></item><item><title><![CDATA[解决Swagger（“/“、“/error“）、Knife4j（“/service-worker.js“）配置拦截路径后依旧被拦截的问题]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/115705055</link><guid>https://blog.youkuaiyun.com/vdora/article/details/115705055</guid><author>vdora</author><pubDate>Wed, 14 Apr 2021 18:04:31 +0800</pubDate><description><![CDATA[今天用SpringBoot整合Swagger和Knife4j的时候，都遇到了配置拦截白名单之后，依旧被拦截的问题。
解决方案：更换版本

Swagger 不使用2.9.x版本即可
Knif4j 可以更换为2.0.3版本或者更高的版本

Swagger
在浏览器按F12，点击Network查看网络请求
或者在控制台打印拦截的路径

可以发现"/"、"/error"这两个路径被拦截
后来发现是Swagger2.9.x版本会出现的问题，更换为其他版本即可解决问题。
Knife4j
集成Knife4j的时候，遇到了]]></description><category></category></item><item><title><![CDATA[解决mapper文件夹下的xml没有被加载的问题（Maven问题）]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/115379931</link><guid>https://blog.youkuaiyun.com/vdora/article/details/115379931</guid><author>vdora</author><pubDate>Thu, 01 Apr 2021 18:05:47 +0800</pubDate><description><![CDATA[今天在写SpringBoot整合MyBatis Plus项目的时候，发现找不到我写在xml文件中的sql语句，提示内容：
org.apache.ibatis.binding.BindingException: 
Invalid bound statement (not found): xxx.SalaryMapper.getByType

此时，在target文件夹中可以看到xml文件

然后我就忽略了检查在配置文件（application.properties）中配置的扫描路径
最后发现是路径填写错误的问]]></description><category></category></item><item><title><![CDATA[使用MyBatis时，部分字段的值无法插入到数据库中（基本数据类型必须使用包装类型）]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/115356042</link><guid>https://blog.youkuaiyun.com/vdora/article/details/115356042</guid><author>vdora</author><pubDate>Wed, 31 Mar 2021 18:02:56 +0800</pubDate><description><![CDATA[今天在写代码的时候，发现使用insertSelective时，有一个字段type的值无法插入到数据库中。
查看日志中的Sql语句：

发现这里并没有包含这个字段
后来想起来，我之前看到的一个要求：

JavaBean 的整体要求：

不得有任何的业务逻辑或者计算
基本数据类型必须使用包装类型（Integer, Double、Boolean等）
不允许有任何的默认值
每个属性必须添加注释，并且必须使用多行注释。
必须使用 lombok 简化 getter/setter 方法
建议对象使用 lombok 的 @]]></description><category></category></item><item><title><![CDATA[将数据从Excel导入MySQL数据库（使用Navicat）]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/115228746</link><guid>https://blog.youkuaiyun.com/vdora/article/details/115228746</guid><author>vdora</author><pubDate>Fri, 26 Mar 2021 11:03:27 +0800</pubDate><description><![CDATA[数据库中的表已经建好了，现在要将数据从Excel导入
要求：

Excel中要有一行为字段名（可以与数据库表中的字段名顺序不一样）

具体步骤
1、右键单击表，选择 导入向导
2、选择 Excel 格式，然后点击下一步

3、选择要导入的文件，并且勾选 Sheet1，点击下一步

4、定义附加选项，然后点击下一步

数据库中的字段

Excel表中的字段以及行数

5、选择目标表，然后点击下一步

7、定义字段映射

Excel表中的字段顺序：

如果Excel中的字段名和表中的不一致，需要指定对应关系

]]></description><category></category></item><item><title><![CDATA[Tomcat日志切割+清除]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/110394395</link><guid>https://blog.youkuaiyun.com/vdora/article/details/110394395</guid><author>vdora</author><pubDate>Wed, 24 Mar 2021 15:27:34 +0800</pubDate><description><![CDATA[由于Tomcat产出的Catalina.out日志内容过多，因此需要定时切割并删除过期日志

Linux Crontab 定时任务常用命令
//启动服务 
service crond start    
//关闭服务 
service crond stop     
//重启服务 
service crond restart   
//重新载入配置 
service crond reload    
 //查看crontab服务状态
service crond status   

具体步骤
#安装cro.]]></description><category></category></item><item><title><![CDATA[Linux安装Redis并进行相关配置（云服务器 Ubuntu 20.04.1）]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/115128457</link><guid>https://blog.youkuaiyun.com/vdora/article/details/115128457</guid><author>vdora</author><pubDate>Wed, 24 Mar 2021 11:03:22 +0800</pubDate><description><![CDATA[由于需要在云服务器上快速安装Redis，因此采用apt-get命令安装。

apt-get 命令是 Ubuntu 系统中的包管理工具,可以用来安装、卸载包，也可以用来升级包，还可以用来把系统升级到新的版本。

一、安装Redis
1、安装Redis服务
sudo apt-get install redis-server

2、查看redis 服务的进程以及默认端口号：6379

3、查看redis服务器状态（3种方式）：
sudo netstat -nlt|grep 6379


sudo /etc/ini]]></description><category></category></item><item><title><![CDATA[Java学习笔记——实体类（ENTITY，VO，DTO，BO）]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/115113227</link><guid>https://blog.youkuaiyun.com/vdora/article/details/115113227</guid><author>vdora</author><pubDate>Tue, 23 Mar 2021 11:19:21 +0800</pubDate><description><![CDATA[最近在写代码的时候，对于Entity、VO、DTO、BO的概念有些混淆，不太了解具体的用途以及作用，所以想梳理一下。

阿里巴巴Java开发手册中的分层领域模型规约：

DO（Data Object）：此对象与数据库表结构一一对应，通过 DAO层向上传输数据源对象。
DTO（Data Transfer Object）：数据传输对象，Service 或Manager 向外传输的对象。
BO（Business Object）：业务对象，可以由Service层输出的封装业务逻辑的对象。
Query：数据查询对象，]]></description><category></category></item><item><title><![CDATA[Elasticsearch SQL]]></title><link>https://blog.youkuaiyun.com/vdora/article/details/111573899</link><guid>https://blog.youkuaiyun.com/vdora/article/details/111573899</guid><author>vdora</author><pubDate>Wed, 23 Dec 2020 10:33:40 +0800</pubDate><description><![CDATA[Elasticsearch SQL

Elasticsearch SQL是一个X-Pack组件，它允许针对Elasticsearch实时执行类似SQL的查询。无论使用REST接口，命令行还是JDBC，任何客户端都可以使用SQL对Elasticsearch中的数据进行原生搜索和聚合数据。可以将Elasticsearch SQL看作是一种翻译器，它可以将SQL翻译成Query DSL。

官方文档(ElasticSearch[7.x])
语法
在ES中使用SQL查询的语法与在数据库中使用基本一致，具体格式如下：]]></description><category></category></item></channel></rss>