<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fly_duck的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/fly_duck</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fly_duck]]></copyright><item><title><![CDATA[Docker安装Elasticsearch以及ik分词器]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/134683786</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/134683786</guid><author>fly_duck</author><pubDate>Wed, 29 Nov 2023 11:02:03 +0800</pubDate><description><![CDATA[Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎，能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心，Elasticsearch 会集中存储您的数据，让您飞快完成搜索，微调相关性，进行强大的分析，并轻松缩放规模。项目上如果要使用Elasticsearch则需要先搭建相应的环境，用docker可以快速的搭建Elasticsearch环境。本文主要介绍如何用docker安装elasticsearch和ik分词器。]]></description><category></category></item><item><title><![CDATA[SpringBoot项目使用docker-maven-plugin插件构建docker镜像以及推送到docker hub或docker registry私服]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/124709727</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/124709727</guid><author>fly_duck</author><pubDate>Mon, 17 Oct 2022 15:01:26 +0800</pubDate><description><![CDATA[本文介绍的方式是使用docker-maven-plugin的方式构建SpringBoot的docker镜像以及推送到私服或docker hub服务器上。]]></description><category></category></item><item><title><![CDATA[vue前端使用Docker部署]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/125281076</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/125281076</guid><author>fly_duck</author><pubDate>Tue, 14 Jun 2022 17:12:53 +0800</pubDate><description><![CDATA[使用docker发布vue前端项目]]></description><category></category></item><item><title><![CDATA[CentOS安装Docker]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/125279280</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/125279280</guid><author>fly_duck</author><pubDate>Tue, 14 Jun 2022 16:09:24 +0800</pubDate><description><![CDATA[Docker是一个开源的容器引擎，它有助于更快地交付应用。本文是针对初学者推出的CentOS上安装Docker环境的详细步骤。]]></description><category></category></item><item><title><![CDATA[Python使用pandas从mysql数据库读取数据并导出到Excel]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/121561843</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/121561843</guid><author>fly_duck</author><pubDate>Fri, 26 Nov 2021 16:02:55 +0800</pubDate><description><![CDATA[工作中我们经常会从数据库中提取数据，处理之后，将结果整理为excel输出。本文主要介绍使用python的pandas工具从mysql数据获取数据，按要求处理之后，导出到excel文件。

安装依赖

首先确定已经安装PyMySQL，pandas，sqlalchemy，openpyxl包，本文会使用这几个包：


pip install PyMySQL
pip install pandas
pip install sqlalchemy
pip install openpyxl



程序代码

程序中先从m.]]></description><category></category></item><item><title><![CDATA[Python常用数据库连接以及常用数据操作]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/121509813</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/121509813</guid><author>fly_duck</author><pubDate>Wed, 24 Nov 2021 14:30:49 +0800</pubDate><description><![CDATA[使用python处理数据的时候，数据经常会由数据库提供而来。python连接不同的数据库使用的驱动以及连接方式都有所差异，本文主要记录python3连接不同数据库的方式。包含mysql, sqlite, access, sql server, neo4j和redis数据库的连接以及获取数据的使用方式。



mysql数据库

这里介绍使用pymysql连接mysql数据库，首先安装pymysql包：


pip install pymysql

python代码中初始化数据库连接以及查询数据：


imp]]></description><category></category></item><item><title><![CDATA[Mybatis使用collection分页问题]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/121399470</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/121399470</guid><author>fly_duck</author><pubDate>Mon, 22 Nov 2021 14:06:05 +0800</pubDate><description><![CDATA[项目中mybatis分页的场景是非常高频的，当使用ResultMap并配置collection做分页的时候，我们可能会遇到获取当前页的数据少于每页大小的数据问题。使用PagerHelper插件同样会遇到该问题。]]></description><category></category></item><item><title><![CDATA[Windows平台安装Solr并注册为服务]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/121399448</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/121399448</guid><author>fly_duck</author><pubDate>Thu, 18 Nov 2021 14:29:37 +0800</pubDate><description><![CDATA[Solr是一个高性能，采用Java开发，基于Lucene的全文搜索服务器。项目或者产品中我们经常会使用Solr提供全文检索功能。本文主要介绍如果在windows环境中安装solr以及注册为windows服务。



获取Solr安装包

从官方下载solr安装文件，solr下载地址：Solr Downloads - Apache Solr。



安装Solr

下载文件之后，解压文件。解压后目录结果如下：



管理员身份打开命令行工具，进入bin目录，直接运行命令：


solr start -f

.]]></description><category></category></item><item><title><![CDATA[SpringBoot通过自定义字段注解以及反射获取对象]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/120056015</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/120056015</guid><author>fly_duck</author><pubDate>Sat, 09 Oct 2021 15:34:53 +0800</pubDate><description><![CDATA[SpringBoot中通过自定义字段注解以及反射，实现从数据转换并初始化对象。应用场景主要是通过外部接口，数据库，文本或者Excel读取数据，然后通过反射以及字段注解自动转换为对象，灵活的处理外部数据到对象的转换。
]]></description><category></category></item><item><title><![CDATA[SpringBoot项目Spring Retry重试的使用]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/115296580</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/115296580</guid><author>fly_duck</author><pubDate>Thu, 01 Jul 2021 14:59:05 +0800</pubDate><description><![CDATA[项目中为了保证处理更健壮，容错性更高，更不容易失败，使用自动重试的失败的操作，可提高后续操作的可用性，保证容错性。Spring实提供了自动重试机制Spring Retry，功能简单实用。
]]></description><category></category></item><item><title><![CDATA[SpringBoot定时任务Task常用开发方式]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/112055388</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/112055388</guid><author>fly_duck</author><pubDate>Thu, 31 Dec 2020 23:20:16 +0800</pubDate><description><![CDATA[目录SpringBoot定时任务基于注解的定时任务@EnableScheduling开启定时任务@Scheduled开发定时任务@Scheduled开发示例开启多线程定时任务开启异步定时任务新的改变功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出]]></description><category></category></item><item><title><![CDATA[SpringCloud Gateway跨域CORS问题解决方案]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/111317581</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/111317581</guid><author>fly_duck</author><pubDate>Fri, 18 Dec 2020 22:27:20 +0800</pubDate><description><![CDATA[最近使用SpringCloud搭建微服务，使用Gateway网关统一对外提供API接口，项目使用前后端分离，前端开发对接接口的时候抛出接口提示跨域问题不能调用。才注意到Gateway网关没有跨域相应的配置，默认情况下，是不允许任何跨源请求的，必须显式配置以指示应允许的内容。通过官网文档查阅、网上其他网友总结，最后使用官方文档描述的方法通过配置的方式解决了Gateway网关跨域的问题。




spring:
  cloud:
    gateway:
      discovery:
        lo.]]></description><category></category></item><item><title><![CDATA[Windows服务器Nginx安装以及常用配置，配置中遇到的常见问题]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/110640225</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/110640225</guid><author>fly_duck</author><pubDate>Fri, 04 Dec 2020 23:07:32 +0800</pubDate><description><![CDATA[背景

最近项目组完成了个项目，部署到客户那里，客户提供的是Windows服务器并要求部署的站点使用HTTPS安全访问。本来以为是比较简单的事情，给域名申请个证书，然后给站点配置好HTTPS接可以了。结果因为项目是前后端分离的项目，前端域名使用HTTPS访问，导致前端无法通过HTTP请求访问后端的接口，我们必须要为后端的接口也申请证书配置HTTPS。由于后端接口由多个服务提供，那我们需要为不同的后端接口服务申请多个证书并配置HTTPS。客户只给我们申请了前端域名的证书，对于客户来说，他只需要前端访问的域名启]]></description><category></category></item><item><title><![CDATA[SpringCloud Gateway结合注册中心启用负载均衡配置uri包含下划线的一个坑]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/110221224</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/110221224</guid><author>fly_duck</author><pubDate>Fri, 27 Nov 2020 21:44:56 +0800</pubDate><description><![CDATA[最近在使用SpringCloud搭建微服务，注册中心使用Eureka，网关使用Gateway，在配置Gateway网关的时候遇到一个问题，导致请求通过网关无法转发到对应的服务上去。

抛出问题

Gateway网关中配置各个微服务的route，uri使用lb协议开启负载均衡功能，但是有些route可以正确的转发到对应的服务，有些route却无法转发到对应的服务，通过调试提示valid host。Gateway中route的配置部分示例如下：


spring:
  application:
    name]]></description><category></category></item><item><title><![CDATA[SpringBoot项目中ModelMapper配置以及使用]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/110203890</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/110203890</guid><author>fly_duck</author><pubDate>Thu, 26 Nov 2020 21:35:04 +0800</pubDate><description><![CDATA[项目中对象与对象赋值转换使用的频率非常的高，比如数据库表实体对象(Entity)与业务类对象(Model)之间的赋值传递，或者模型对象（Model）与视图对象（ViewModel）之间的赋值传递。如果我们一个一个字段的赋值，将是非常繁琐并且毫无价值的重复工作，此时虽然我们可以自己通过反射提取个公共的方法来处理，但是更高效的方式是查看是否有第三方已经提供了比较成熟稳定的工具包，避免重复造轮子的工作。

在C#中我们一般使用AutoMapper作为对象转换工具（AutoMapper配置使用参考：https://]]></description><category></category></item><item><title><![CDATA[SpringBoot数据库连接池Hikari配置]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/109755842</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/109755842</guid><author>fly_duck</author><pubDate>Tue, 17 Nov 2020 22:42:35 +0800</pubDate><description><![CDATA[在项目中，一般情况下访问数据库，会创建一个连接，用完后就关闭它，对于简单的系统这样不会带来什么明显的性能上的开销。但是对于一个复杂的系统，频繁的建立、关闭连接，会极大的减低系统的性能，因为对于数据库连接的使用可能会成为系统性能的瓶颈。数据库连接池负责分配、管理和释放数据库连接，它允许应用程序重复使用一个现有的数据库连接，而不是再重新建立一个；释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。

SpringBoot默认使用Hikari

SpringBoot项目如果]]></description><category></category></item><item><title><![CDATA[SpringBoot中使用Mybatis持久层框架操作数据库]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/109730557</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/109730557</guid><author>fly_duck</author><pubDate>Mon, 16 Nov 2020 22:40:08 +0800</pubDate><description><![CDATA[SpringBoot项目中绝大多数的数据都是存储在数据库中，所以项目与数据库的交互是很常有的操作。SpringBoot项目中我们可以使用JDBC去连接数据库，但是有非常多的 JDBC 代码、手动设置参数以及获取结果集会耗费很多时间。MyBatis 是一款优秀的持久层框架，它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。

创建项目配置pom.xml

使用IDEA开发工具创建一个空的Maven项目，pom.xml引入springbo]]></description><category></category></item><item><title><![CDATA[SpringBoot前后端分离项目上传文件功能]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/109646164</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/109646164</guid><author>fly_duck</author><pubDate>Thu, 12 Nov 2020 16:47:43 +0800</pubDate><description><![CDATA[SpringBoot前后端分离项目开发中，上传文件的功能还是比较常见的。SpringBoot是支持上传文件功能，默认的单个文件大小限制为spring.servlet.multipart.max-file-size=1MB，单个请求限制为spring.servlet.multipart.max-request-size=10MB。项目中可以设置单个文件上传大小限制以及单个请求大小限制，以及文件超过最大限制后返回自定义Restful风格的Json字符串。

功能开发

接口开发比较简单，直接在接口中处理Mult]]></description><category></category></item><item><title><![CDATA[Java微信支付官方wxpay-sdk无法继承WXPayconfig类问题]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/109504047</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/109504047</guid><author>fly_duck</author><pubDate>Thu, 05 Nov 2020 10:01:28 +0800</pubDate><description><![CDATA[在开发微信支付的过程中，微信官方提供了wxpay-sdk以及README.MD文件中开发demo。官方暂时未提供maven项目依赖，我们需要自己将wxpay-sdk代码引入项目或者自己手动打包到本地或者私服通过maven来管理。

微信支付官方sdk地址：https://pay.weixin.qq.com/wiki/doc/api/download/WxPayAPI_JAVA.zip



问题

当自己打包到本地或者私服项目通过maven管理wxpay-sdk，创建自己的实现类MyWXPayconfig继]]></description><category></category></item><item><title><![CDATA[IDEA中使用Mybatis Generator自动生成数据库持久层相应的代码]]></title><link>https://blog.youkuaiyun.com/fly_duck/article/details/109457931</link><guid>https://blog.youkuaiyun.com/fly_duck/article/details/109457931</guid><author>fly_duck</author><pubDate>Mon, 02 Nov 2020 21:58:29 +0800</pubDate><description><![CDATA[当项目中我们使用Mybatis作为ORM框架是，Mybatis的XML配置以及对应的实体类以及Mapper类的创建会占用我们大量的时间，如果我们在这上面耗费太多的时间就太浪费了。官方给我们提供了Mybatis Generator工具，只需要简单的配置，就能够自动为我们生成简单的CURD对应XML配置、数据库表对应的实体类以及Mapper类，把我们从简单重复的工作中解放出来，专注于业务的开发。

本文主要介绍IDEA开发工具中，常用的mybatis generator的配置以及基于maven方式运行mybat]]></description><category></category></item></channel></rss>