<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Alfalfa99的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Alfalfa99</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Alfalfa99]]></copyright><item><title><![CDATA[SpringBoot调用高德地图IP定位API （RestTemplate）]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/109493244</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/109493244</guid><author>Alfalfa99</author><pubDate>Wed, 04 Nov 2020 17:06:57 +0800</pubDate><description><![CDATA[奇怪的目录增加了！前言正文了解API接口编写代码完成依赖注入获取用户IP向API接口发送请求后记
前言
各位读者好久不见，由于最近都在摸鱼 准备明年的春招以及去尝试一下校招，所以这一个多月都没在写博客。言归正传，最近手头一个项目有一个要求，要求记录访问者的ip信息和访问的页面等信息，所以我采用了高德地图的IP定位API。

高德地图IP定位API
https://lbs.amap.com/api/webservice/guide/api/ipconfig/

正文
在这里其实有如下两种选择：

工具类的方式]]></description><category></category></item><item><title><![CDATA[JForum论坛安装以及部署(JDK8+MySQL8.0.x版本)]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108987146</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108987146</guid><author>Alfalfa99</author><pubDate>Fri, 09 Oct 2020 22:03:44 +0800</pubDate><description><![CDATA[虚假的目录前言改造jforum后记
前言
因为学校一门叫软件测试技术的课需要安装这个玩意，就去装了一下，jforum的版本是2.1.9，Tomcat版本是8.5.58, JDK 8。由于这东西实在是太古老了，他不支持MySQL8.0+，只能对其进行改造了。
Tomcat、JDK的安装网上很多资料在此不再详细讲述，请自行查阅相关资料。
改造jforum
当你看到这步时我已经默认你已经成功部署了jforum并能成功访问如下页面(取决于你部署的机器ip)
http://192.168.1.195:8080/jfo]]></description><category></category></item><item><title><![CDATA[nacos集群部署报错]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108905414</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108905414</guid><author>Alfalfa99</author><pubDate>Fri, 02 Oct 2020 22:17:52 +0800</pubDate><description><![CDATA[近日在整合Dubbo与Nacos集群出现如下错误
failed to req API:/nacos/v1/ns/instance after all servers([xxx.xx.xxx.xx:8045]) tried: ErrCode:500, ErrMsg:java.net.SocketTimeoutException: ConnectTimeOut
看过笔者Nacos集群部署文章的读者应该都知道在笔者之前已经成功的部署了三个nacos注册中心并通过Nginx组成集群且能成功的访问到nacos后台，然]]></description><category></category></item><item><title><![CDATA[从零开始的SpringBoot前后端分离入门级项目（七）]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108803120</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108803120</guid><author>Alfalfa99</author><pubDate>Fri, 25 Sep 2020 21:27:00 +0800</pubDate><description><![CDATA[一个很正经的目录！分页参数PageParamDTO后记
分页参数PageParamDTO
在我们进行分页查询的时候，我们经常需要对其中的某些字段进行某种排序(升序，降序)。那么前端每次都需要发送不同的参数，甚至不同个数的参数，这就对后端如何接受参数有所要求，有时候可能直接将排序规则拼接在字符串中如下
@PathVariable("/findAll/{id}/{DESC}")

那么这就是对id的降序排序，但是我们需要思考一个问题，分页和排序一般需要几个参数

当前页数是哪一页
每页展示几条数据
待排序的字段]]></description><category></category></item><item><title><![CDATA[从零开始的SpringBoot前后端分离入门级项目（六）]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108783676</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108783676</guid><author>Alfalfa99</author><pubDate>Fri, 25 Sep 2020 19:52:46 +0800</pubDate><description><![CDATA[一个不正经的目录生成验证码新建验证码实体类新建验证码工具类修改拦截器配置类修改两个DTOSpringBoot集成Redis更新yml配置文件修改UserController
生成验证码
验证码是一个保障接口和用户密码安全的良好工具，在项目中进行一些比较“危险”的操作的时候我们需要让输入验证码才能进入到下一步，话不多说，先来编写一个验证码工具类:
新建验证码实体类
在bean子包下新建VerifyCode实体类：
/**
 * @Author Alfalfa99
 * @Date 2020/9/19 22:1]]></description><category></category></item><item><title><![CDATA[从零开始的SpringBoot前后端分离入门级项目（五）]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108756863</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108756863</guid><author>Alfalfa99</author><pubDate>Wed, 23 Sep 2020 20:02:58 +0800</pubDate><description><![CDATA[一个很正常的目录前情回顾数据传输对象(DTO)创建登录和注册功能的DTOUserLoginDTOUserRegisterDTO修改UserController修改UserService用户初始权限的设置初始权限的设置添加初始权限和查询用户角色授予初始权限启用事物管理改进用户登录模块保护用户的隐私信息！
前情回顾
在前一篇博客我们成功的编写了登录与注册的接口，但是还存在着一些问题，这篇博客我们将会更深入的对登录与注册的进行讲解。
数据传输对象(DTO)
我们在登录或者注册时，其实只用到了User对象的某些属性]]></description><category></category></item><item><title><![CDATA[从零开始的SpringBoot前后端分离入门级项目（四）]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108730154</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108730154</guid><author>Alfalfa99</author><pubDate>Tue, 22 Sep 2020 20:41:23 +0800</pubDate><description><![CDATA[这是一个目录前情回顾正文构建注册接口构建UserDao构建UserService分布式ID生成算法时间戳转换工具(DateTimeTransferUtil)构建UserController测试注册接口配置SpringSecurity构建登录接口向UserDao添加方法向UserService添加方法向UserController添加方法
前情回顾
在前面几篇文章中我们完成了项目的构建、统一请求返回体和权限验证层面代码的编写，在本次博客我们将通过用户注册和登录功能的编写来感受SpringBoot为程序员带来的]]></description><category></category></item><item><title><![CDATA[从零开始的SpringBoot前后端分离入门级项目（三）]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108712156</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108712156</guid><author>Alfalfa99</author><pubDate>Mon, 21 Sep 2020 17:13:32 +0800</pubDate><description><![CDATA[这是一个目录实体类编写利用Token进行用户鉴权创建Jwt工具类利用拦截器(interceptor)实现用户访问的拦截与鉴权编写InterceptorConfig
实体类编写
在前面的文章中我们已经完成了项目目录和基本框架的搭建，现在我们开始编写实体类，首先我们在model包下创建一个pojo子包。
注意：关于PO、VO、POJO、DTO等概念网络上已经有很多资料了，在本项目中不再阐述其的详细含义，且为了方便起见只划分POJO与DTO，为此产生的一些有歧义或错误的划分方法或用法请读者们见谅。
创建好子包之后]]></description><category></category></item><item><title><![CDATA[从零开始的SpringBoot前后端分离入门级项目（二）]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108697582</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108697582</guid><author>Alfalfa99</author><pubDate>Mon, 21 Sep 2020 13:40:48 +0800</pubDate><description><![CDATA[导航栏正文编写启动类及配置文件启动类配置文件启动测试搭建项目的基本框架统一请求返回体（统一请求响应体）CommonResult约定状态码分页结果类全局异常处理类GlobalException
正文
上回我们已经将项目创建好并且引入了本次项目所需要用到的依赖，这次我们就正式进入项目的编写
编写启动类及配置文件
启动类
在java文件夹下新建两级目录并创建MainApplication.class


按照上述步骤创建并编写完启动类后就可以开始配置文件的创建了。
配置文件
在resources目录下创建appl]]></description><category></category></item><item><title><![CDATA[[已完结]从零开始的SpringBoot前后端分离入门级项目（一）]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108692775</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108692775</guid><author>Alfalfa99</author><pubDate>Sun, 20 Sep 2020 19:42:04 +0800</pubDate><description><![CDATA[导航栏前言项目使用到的框架或技术项目的需求及架构数据库脚本正式开始创建项目
前言
各位读者好久不见，一转眼就过去了一个多月，由于之前忙于复习和考试就没有更新博客，原本说好写一个Sentinel 对集群流控的文章，但是实验室刚上大二的弟弟妹妹们开始学习SpringBoot了，苦于没有一个比较简单且便于入门的练手项目，于是乎帮他们构思并实现了一个简单的SpringBoot前后端分离项目。
tips：本文所需前置知识如下

JavaSE基础
会使用Maven
了解过redis
会编写简单的SQL语句

温馨提示：]]></description><category></category></item><item><title><![CDATA[使用Docker完成Nacos集群部署]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/108042109</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/108042109</guid><author>Alfalfa99</author><pubDate>Sun, 16 Aug 2020 20:57:55 +0800</pubDate><description><![CDATA[前言
距离上一篇文章已经过去挺久的了,因为笔者前段时间去长沙玩了一阵子233。
那么言归正传，上次笔者展示了如何在Windows安装和部署了Nacos1.3.1，这次打算将其使用Docker部署到虚拟机上，笔者使用的系统是CentOS7.5，Docker的安装在此处不再赘述。
Nacos镜像拉取
确保docker安装完成并成功运行之后执行如下指令：
docker pull nacos/nacos-server

小贴士：笔者在使用腾讯云服务器拉取镜像时速度很慢，更换了中科大和网易的镜像源问题仍没有解决，最终]]></description><category></category></item><item><title><![CDATA[Nacos1.3.1启动报错解决方法]]></title><link>https://blog.youkuaiyun.com/Alfalfa99/article/details/107746742</link><guid>https://blog.youkuaiyun.com/Alfalfa99/article/details/107746742</guid><author>Alfalfa99</author><pubDate>Sun, 02 Aug 2020 16:37:38 +0800</pubDate><description><![CDATA[由于Spring Cloud Eureka的各个组件都进入了维护模式,所以笔者最近在把项目逐步移植到Spring Cloud Alibaba(主要是想要体验一下新东西,逃)
首先打算从注册中心和配置中心开始移植,Alibaba提供了新的解决方案用nacos替代Eureka+Cloud+Bus,于是乎我就打开了nacos的官网查看一下quickstart如下:

.
我选择了最新的版本(1.3.1),下载完成并解压后如下图:
按照官网教程打开/bin/startup.cmd

直到这步看似顺利谁知下一秒钟开始]]></description><category></category></item></channel></rss>