<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[thver的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/thver</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; thver]]></copyright><item><title><![CDATA[activiti集成 问题集]]></title><link>https://blog.csdn.net/thver/article/details/103699292</link><guid>https://blog.csdn.net/thver/article/details/103699292</guid><author>thver</author><pubDate>Wed, 25 Dec 2019 15:06:25 +0800</pubDate><description><![CDATA[一：An attempt was made to call the method org.apache.ibatis.session.Configuration.setVfsImpl 无法启动
原因：activiti中的mybaitis版本冲突
springboot 2.0.4.RELEASE 不支持 mybatis-plus-boot-starter 3.1.0及以上版本。
解决：
     &...]]></description><category></category></item><item><title><![CDATA[mysql数据库权限管理]]></title><link>https://blog.csdn.net/thver/article/details/103261978</link><guid>https://blog.csdn.net/thver/article/details/103261978</guid><author>thver</author><pubDate>Tue, 26 Nov 2019 18:41:23 +0800</pubDate><description><![CDATA[数据库-mysql用户权限和管理
一，查看用户权限

登入root账户

mysql -u root -p


查看所有用户

 select host,user from mysql.user;



查看某个用户的权限：


show grants for username@host; #用户名@主机

示例:
show grants for root@localhost;


二，Mysql...]]></description><category></category></item><item><title><![CDATA[在线开发-表单]]></title><link>https://blog.csdn.net/thver/article/details/103168334</link><guid>https://blog.csdn.net/thver/article/details/103168334</guid><author>thver</author><pubDate>Wed, 20 Nov 2019 18:49:30 +0800</pubDate><description><![CDATA[两步（本文2、3步）完成在线表单设计开发

最近在jeecg-boot看到有块表单设计，感觉挺酷炫的，但苦于没有企业版源码，于是自己去找开源的组件自己构建了一个
本文基于jeecg-boot 开源版构建

1.组件源码地址
https://github.com/GavinZhuLei/vue-form-making
2.引入form-making组件
2.1 确认版本
github最新版本
从np...]]></description><category></category></item><item><title><![CDATA[银行卡绑定流程]]></title><link>https://blog.csdn.net/thver/article/details/103055280</link><guid>https://blog.csdn.net/thver/article/details/103055280</guid><author>thver</author><pubDate>Wed, 13 Nov 2019 19:04:04 +0800</pubDate><description><![CDATA[流程

前置
配置系统支持的银行的银行卡
配置系统中资方/第三方支付支持的银行卡
用户输入卡号
判断有效性，获取卡bin，得到银行名称，银行code
判断是否支持
调用资方/第三方支付绑定银行卡
成功

银行卡校验规则：建议用Luhn算法
银行卡号卡bin：建议先查找本地，不存在调用阿里接口进行数据补偿（免费）
https://ccdcapi.alipay.com/validateAndCache...]]></description><category></category></item><item><title><![CDATA[实现mq延时队列（订单延时取消）]]></title><link>https://blog.csdn.net/thver/article/details/87647198</link><guid>https://blog.csdn.net/thver/article/details/87647198</guid><author>thver</author><pubDate>Mon, 18 Feb 2019 21:22:45 +0800</pubDate><description><![CDATA[1.RabbitMqConfiguration (mq配置类)
@Configuration
@Slf4j
public class RabbitMqConfiguration{

    @Bean
    public ConnectionFactory connectionFactory(@Value(&amp;quot;${rabbitmq.host}&amp;quot;) String host,
        @Val...]]></description><category></category></item><item><title><![CDATA[系统集成j2cache]]></title><link>https://blog.csdn.net/thver/article/details/87481198</link><guid>https://blog.csdn.net/thver/article/details/87481198</guid><author>thver</author><pubDate>Sat, 16 Feb 2019 23:19:16 +0800</pubDate><description><![CDATA[系统集成j2cache

 

J2Cache 是 OSChina 目前正在使用的两级缓存框架（要求至少 Java 8）。第一级缓存使用内存(同时支持 Ehcache 2.x、Ehcache 3.x 和 Caffeine)，第二级缓存使用 Redis(推荐)/Memcached 。 由于大量的缓存读取会导致 L2 的网络成为整个系统的瓶颈，因此 L1 的目标是降低对 L2 的读取次数。 该缓存框架...]]></description><category></category></item><item><title><![CDATA[数据（密码）加密 简单例子]]></title><link>https://blog.csdn.net/thver/article/details/87481067</link><guid>https://blog.csdn.net/thver/article/details/87481067</guid><author>thver</author><pubDate>Sat, 16 Feb 2019 23:17:19 +0800</pubDate><description><![CDATA[数据（密码）加密

 

1.报错加密的交易密码

/**

* 保存用户交易密码

*

* @param user

* @param payPassword

*/

public boolean setPayPassword(User user, @NotNull String payPassword) {

if (user == null) {

log.error(&quot;user is ...]]></description><category></category></item><item><title><![CDATA[Saturn本地运行方案]]></title><link>https://blog.csdn.net/thver/article/details/87480912</link><guid>https://blog.csdn.net/thver/article/details/87480912</guid><author>thver</author><pubDate>Sat, 16 Feb 2019 23:14:43 +0800</pubDate><description><![CDATA[Saturn本地运行方案

1.软件准备

JDK &amp;gt;= 1.7

ZooKeeper &amp;gt;= 3.4.6

Mysql没有版本要求

Node4.0以上

 

2.数据准备

执行数据库脚本，创建环境所需都表结构，具体不再罗列出来。

3.运行程序步骤

1.下载远程saturn项目 git clone https://github.com/vipshop/Saturn.git

2...]]></description><category></category></item><item><title><![CDATA[java 面试]]></title><link>https://blog.csdn.net/thver/article/details/86077232</link><guid>https://blog.csdn.net/thver/article/details/86077232</guid><author>thver</author><pubDate>Sat, 16 Feb 2019 23:07:05 +0800</pubDate><description><![CDATA[一、javase

1.jdk1.8新特性



速度更快 – 红黑树
代码更少 – Lambda
强大的Stream API – Stream
便于并行 – Parallel
最大化减少空指针异常 – Optional



2.JVM结构原理、GC工作机制详解


JVM主要包括四个部分1.类加载器2.执行引擎3.内存区4.本地方法接口
垃圾检测、回收算法：1.标记-清除（Mark-sweep...]]></description><category></category></item><item><title><![CDATA[基于redis的分布式锁实现]]></title><link>https://blog.csdn.net/thver/article/details/86078723</link><guid>https://blog.csdn.net/thver/article/details/86078723</guid><author>thver</author><pubDate>Sat, 16 Feb 2019 23:06:44 +0800</pubDate><description><![CDATA[基于redis的分布式锁实现
关于分布式锁
很久之前有讲过并发编程中的锁并发编程的锁机制：synchronized和lock。在单进程的系统中，当存在多个线程可以同时改变某个变量时，就需要对变量或代码块做同步，使其在修改这种变量时能够线性执行消除并发修改变量。而同步的本质是通过锁来实现的。为了实现多个线程在一个时刻同一个代码块只能有一个线程可执行，那么需要在某个地方做个标记，这个标记必须每个线程都...]]></description><category></category></item><item><title><![CDATA[基于注解的redis的分布式锁实现]]></title><link>https://blog.csdn.net/thver/article/details/86080608</link><guid>https://blog.csdn.net/thver/article/details/86080608</guid><author>thver</author><pubDate>Sat, 16 Feb 2019 23:06:20 +0800</pubDate><description><![CDATA[基于redis的分布式锁实现的优化
上篇的redis的分布式锁实现，但还是过于繁杂，代码侵入性高
*本遍是将上篇的实现调整成注解方式，利用aop实现分布式锁
只用在方法上加个注解，同时加上了重试机制
*
1.列子
@RedisLock(lockPrefix = AbstractRedisContants.DIST_LOCK_FUND, lockParameter = &amp;amp;quot;fundId&amp;amp;quot;)
    p...]]></description><category></category></item><item><title><![CDATA[kaptcha（图形验证码）使用]]></title><link>https://blog.csdn.net/thver/article/details/86080987</link><guid>https://blog.csdn.net/thver/article/details/86080987</guid><author>thver</author><pubDate>Tue, 08 Jan 2019 16:04:40 +0800</pubDate><description><![CDATA[kaptcha使用
思路

创建bean 并注册（springboot有两种注册，xml 和java）
Controller 中注入bean
添加请求方法 调用bean 返回图片
前段显示
提交请求

流程
1.kaptcha 的maven依赖
&amp;lt;!-- 验证码 --&amp;gt;
    &amp;lt;dependency&amp;gt;
        &amp;lt;groupId&amp;gt;com.github.p...]]></description><category></category></item><item><title><![CDATA[从客户端的角度设计后端的接口]]></title><link>https://blog.csdn.net/thver/article/details/86078235</link><guid>https://blog.csdn.net/thver/article/details/86078235</guid><author>thver</author><pubDate>Tue, 08 Jan 2019 15:24:55 +0800</pubDate><description><![CDATA[转自：https://mp.weixin.qq.com/s/Ykz_VXY9ReGlO2xJ9sh_-Q

 

前言

兵马未动，粮草先行。在一款APP产品的各个版本迭代中，兵马的启动指的是真正开始敲代码的时候，粮草先行则是指前期的需求，交互，UI等评审准备阶段，还有本文要说的接口的设计与评审。虽然很多时候一个api接口的业务，数据逻辑是后端提供的，但真正使用这个接口的是客户端，一个前端功能的实...]]></description><category></category></item><item><title><![CDATA[软件设计的总体思路]]></title><link>https://blog.csdn.net/thver/article/details/86077663</link><guid>https://blog.csdn.net/thver/article/details/86077663</guid><author>thver</author><pubDate>Tue, 08 Jan 2019 15:16:02 +0800</pubDate><description><![CDATA[参考博客原址：

https://www.cnblogs.com/trendline/articles/how-to-create-design-doc.html

软件设计的本质就是针对软件的需求，建立模型，通过将模型映射为软件，来解决实际问题。因此软件设计需要解决的核心问题是建立合适的模型，使得能够开发出满足用户需求的软件产品，并具有以下特性：

灵活性（Flexibility）
	有效性（E...]]></description><category></category></item><item><title><![CDATA[Spring Boot工程的脚手架]]></title><link>https://blog.csdn.net/thver/article/details/86077054</link><guid>https://blog.csdn.net/thver/article/details/86077054</guid><author>thver</author><pubDate>Tue, 08 Jan 2019 15:07:06 +0800</pubDate><description><![CDATA[https://start.spring.io/


]]></description><category></category></item><item><title><![CDATA[编程规约]]></title><link>https://blog.csdn.net/thver/article/details/80410611</link><guid>https://blog.csdn.net/thver/article/details/80410611</guid><author>thver</author><pubDate>Tue, 22 May 2018 19:39:17 +0800</pubDate><description><![CDATA[一、编程规约

(一) 命名规约 (二)常量定义 (三)格式规约 (四)OOP规约 (五)集合处理 (六)并发处理 (七)控制语句 (八)注释规约 (九)其它



二.异常日志

(一) 异常处理 (二) 日志规约



三.MySQL规约

(一) 建表规约 (二)索引规约 (三)SQL规约 (四)ORM规约 



四、工程规约

(一) 应用分层  
(二)二方库规约  
(三)服务器规约...]]></description><category></category></item><item><title><![CDATA[数据库锁表及阻塞的原因和解决办法]]></title><link>https://blog.csdn.net/thver/article/details/80409998</link><guid>https://blog.csdn.net/thver/article/details/80409998</guid><author>thver</author><pubDate>Tue, 22 May 2018 18:47:59 +0800</pubDate><description><![CDATA[
        
            数据库锁表及阻塞的原因和解决办法
        
        
        
            问题说明当多个用户并发地存取数据时，在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据，破坏数据库的一致性。加锁是实现数据库并发控制的一个非常重要的技术。在实际应用中经常会遇到的与锁 相关的异常...]]></description><category></category></item><item><title><![CDATA[ZooKeeper源码分析（一）—ZooKeeper接口介绍]]></title><link>https://blog.csdn.net/thver/article/details/80367503</link><guid>https://blog.csdn.net/thver/article/details/80367503</guid><author>thver</author><pubDate>Mon, 21 May 2018 09:39:02 +0800</pubDate><description><![CDATA[
        
            ZooKeeper源码分析（一）—ZooKeeper接口介绍
        
        
        
            一、Server角色
每个Server在工作过程中有三种状态：
　　① LOOKING：当前Server不知道leader是谁，正在搜寻。
　　② LEADING：当前Server即为选举出来的leader。
　　③...]]></description><category></category></item><item><title><![CDATA[ZooKeeper学习第七期–ZooKeeper一致性原理]]></title><link>https://blog.csdn.net/thver/article/details/80367219</link><guid>https://blog.csdn.net/thver/article/details/80367219</guid><author>thver</author><pubDate>Mon, 21 May 2018 09:38:10 +0800</pubDate><description><![CDATA[
        
            ZooKeeper学习第七期–ZooKeeper一致性原理
        
        

    &amp;amp;lt;div class=&amp;quot;postBody&amp;quot;&amp;amp;gt;
        &amp;amp;lt;div id=&amp;quot;cnblogs_post_body&amp;quot; class=&amp;quot;blogpost-body&amp;quot;&amp;amp;gt;&a]]></description><category></category></item><item><title><![CDATA[ZooKeeper学习第六期—ZooKeeper机制架构]]></title><link>https://blog.csdn.net/thver/article/details/80367157</link><guid>https://blog.csdn.net/thver/article/details/80367157</guid><author>thver</author><pubDate>Fri, 18 May 2018 17:16:25 +0800</pubDate><description><![CDATA[
        
            ZooKeeper学习第六期—ZooKeeper机制架构
        
        
        
            一、ZooKeeper权限管理机制　
1.1 权限管理ACL(Access Control List)　
ZooKeeper 的权限管理亦即ACL 控制功能，使用ACL来对Znode进行访问控制。ACL的实现和Unix文...]]></description><category></category></item></channel></rss>