自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 RabbitMQ真延时队列实现消息提醒功能

RabbitMQ真延时队列实现消息提醒功能一、需求场景用户可以制定多个计划,同时可给该计划设置是否需要到点提醒,且中途可以取消提醒或修改提醒时间。二、需要解决的问题学习过rabbitmq的同学们都知道,通过TTL+死信队列可以实现延时队列的效果,​ TTL+死信队列实现延时队列示意图但是这个延时队列有个弊端,即里面的消息死亡并非是异步的,举个例子:消息1设置的死亡时间是5分钟,消息2设置的死亡时间是10分钟,当消息2比消息1先进入队列时,消息2没有死

2021-01-21 15:59:38 2204 2

原创 超详细!手把手搭建Jenkins实现自动化部署 (已排雷)

手把手搭建Jenkins实现自动化部署 (已排雷)一、搭建环境使用Jenkins做部署之前,需要安装jdk和maven,docker私有仓库,项目需要连接数据库就要安装数据库如mysql0、mysql安装在命令行窗口执行拉取镜像命令docker pull mysql:5.7下载完成后,查看镜像docker images[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JTBArDTB-1600064401636)(C:\Users\蔡隽贤\AppDat

2020-09-14 14:32:31 7599 3

原创 SpringSecurity+Jpa在前后端分离项目中的实现(含接入数据库部分)

SpringSecurity+Jpa在前后端分离项目中的实现(含接入数据库部分)一、前言本篇只是简单的Spring Security前后端分离的小Demo,不细讲代码,得对SpringSecurity有一定了解才能看得懂。二、基本思路服务端通过 JSON字符串,告诉前端用户是否登录、认证;前端根据这些提示跳转对应的登录页、认证页三、具体实现 pom依赖: <dependencies> <dependency> ...

2020-09-14 14:16:49 376

原创 【三】kubernetes kuboard部署分布式系统

接上文,我们已经部署了k8s集群,本文将讲解如何利用kuboard部署完整的微服务系统。具体包括docker私有仓库的搭建、工作负载的创建、配置中心、存储挂载、负载均衡等内容。

2023-10-19 17:35:52 288

原创 【二】kubernetes master单节点拓展为集群

一、ubuntu20.04上搭建containerd版( 1.2.4 以上)k8s及kuboard V3接上文中,我们已经部署好了单节点master的k8s集群,在生产环境中,单节点的master肯定是不行的,那么我们如何对master进行集群的拓展呢?对master拓展,实际上就是对api-server的拓展,只要对其做个负载均衡即可。本文选型 haproxy + keepalive 方案来实现。当然也可以选择 nginx + keepalive。

2023-09-01 22:30:45 817

原创 【一】ubuntu20.04上搭建containerd版( 1.2.4 以上)k8s及kuboard V3

手把手教你部署k8s集群,后续还会有多节点master集群拓展、微服务应用部署的教学

2023-08-17 20:42:03 1361

原创 全球矢量、影像数据(亿个小文件)入库经验总结

inode译成中文就是索引节点,每个存储设备(例如硬盘)或存储设备的分区被格式化为文件系统后,应该有两部份,一部份是inode,另一部份是Block,Block是用来存储数据用的。这种情况的原因通常是:尽管那个分区的磁盘占用率未满,但是inode已经用完,应该是该磁盘的某些目录下存在大量的小文件导致。得益于瓦片数据的文件目录的固定规则,我们可以简单的将z层级作为集合,文件夹的名称作为列x,文件的名称作为字段y,而文件的二进制则是单独一个字段 data。然而发现影像的大小是矢量的20倍(未解压时 70T)

2023-08-14 14:01:47 206

原创 SpringBoot引入WebSocket依赖报ServerContainer no avaliable

需要使用@ServerEndpoint来建立websocket链接。引入依赖。启动报错 java.lang.IllegalStateException:javax.websocket.server.ServerContainernotavailable

2023-02-03 10:11:36 3898 5

原创 统计多台linux服务器容量脚本

现在我有一个文件(servers.txt),里面记录了若干个服务器账号密码,我需要统计里面的服务器的剩余容量并输出到output.txt文件中。

2023-01-03 15:37:22 210

原创 springboot注解 + mybatisplus拦截器实现数据权限拦截(兼容分页插件)

需求要求在同一个数据请求方法中,根据不同的权限返回不同的数据集,而且无需并且不能由研发编码控制。设计思路竟然要实现查询语句与权限解耦,第一想法联想到的就是AOP,拦截所有的底层sql,加入过滤条件。1、在数据库中新建一张权限表,记录权限点以及其对应的sql2、编写一个自定义注解,在需要被拦截的mapper方法上标记并指定其权限过滤方式。3、利用mybatis拦截器(插件)拦截mapper方法的sql,并根据对应的权限点对原有的sql进行修改。代码部分数据库设计权限表sql@Tabl

2022-03-13 18:02:29 8076 3

原创 解决druid+mybatis-plus异常:java.sql.SQLFeatureNotSupportedException

错误在使用@EnumValue注解将数据库对应的枚举值转换为枚举类时出现Error attempting to get column 'XXX' from result set. Cause: java.sql.SQLFeatureNotSupportedException排查发现是druid和mybatis-plus版本不兼容的问题。出现问题的版本 <dependency> <groupId>com.alibaba</grou

2022-02-28 18:14:27 1225

原创 java 自定义注解实现不同对象之间的拷贝(支持大小写、驼峰转换)

自定义注解实现不同对象之间的根据不同策略的拷贝(支持大小写、驼峰转换)

2021-12-15 16:17:44 1211

原创 Sentinel整合gateway之Route ID模式失效

在使用sentinel整合gateway网关时使用Route ID一直没有拦截效果,之后尝试了一下api分组模式就成功了。于是将问题定位到网关路由配置上。排查半

2021-06-15 18:13:21 1295

原创 SpringdataJpa利用@CreateBy自动填充实现雪花算法生成实体Id

公司项目需要使用SpringDataJpa,但是Jpa自带的Id生成策略又不存在雪花算法。查了一下网上的配置方法都过于麻烦。于是想到利用Jpa的自动填充,在插入前给其生成一个id具体方法如下首先在启动类上加入注解@EnableJpaAuditing在实体类上加入注解@EntityListeners(AuditingEntityListener.class)加入该注解能监听 创建/更新的操作。在主键加入@CreateBy注解 @Id @Column(name = "id")

2021-03-19 10:37:21 4030

原创 Navicat 快速生成数据库设计文档

SELECT COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHARACTER_MAXIMUM_LENGTH 长度, IS_NULLABLE 是否为空, COLUMN_DEFAULT 默认值, COLUMN_COMMENT 备注FROM INFORMATION_SCHEMA.COLUMNS WHERE-- developerclub为数据库名称,到时候只需要修改成你要导出表结...

2021-03-09 12:03:01 2766 3

原创 在Centos 7服务器下完整部署 Odoo13 (基于python13和pg10)

参考文章:https://blog.csdn.net/weixin_42552923/article/details/103151256在这篇文章的基础上,对其中的一些内容进行修改与完善,升级数据库为PostgreSQL10,并解决前端代码丢失以及镜像源超时或过慢的问题。Python3.7的安装需要切换到root用户:sudo root安装相关编译工具yum -y groupinstall "Development tools" yum -y install zlib-de.

2021-02-20 16:42:15 777

原创 OpenFeign调用时报错缺少:HttpMessageConverters注入失败

今天在使用OpenFeign,Demo2模块远程调用Demo1模块时,报错。报错内容为:feign.codec.DecodeException: No qualifying bean of type 'org.springframework.boot.autoconfigure.http.HttpMessageConverters'查阅大量资料说添加fastjson或手动注入HttpMessageConverters都不行。后来自己通过debug发现,是在远程调用成功,但是在demo2中返回值的时

2021-02-04 13:42:01 2744

原创 自定义序列化类 将ListLong转为String字符串解决雪花算法id精度丢失问题

自定义序列化类 将ListLong转为String字符串解决雪花算法id精度丢失问题众所周知,当后端使用Mybatis plus的雪花算法生成id时,会生成一个长度为19位的ID然后当我们和前端小伙伴对接时,需要转为JSON给前端的js对象接收,此时接收Long类型的是number然而number类型的长度只有16位!这就出现了精度丢失的问题前端接收的 ---> 后端实际传的1297873308628300000 ---> 1297873308628307970

2021-01-15 16:39:03 2639

原创 WebSocket实现服务端接收移动端定位在网页前端显示

WebSocket笔记——服务端接收移动端定位在前端显示一、需求服务端需要对接APP和网页前端,将APP端的定位信息整理并返回给前端。前端需要展示在线人员位置以及基础信息。一开始想用netty(网络I/0编程框架)实现,后面考虑到成本和时间问题,最后选择简单的webSocket协议。二、什么是WebSocket?1、介绍WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向

2020-12-09 14:13:17 1498 1

原创 Jave+WebSocket实现视频异步解析

Jave+WebSocket实现视频异步转码并上传需求:用户客户端上传视频后,服务端异步进行视频在线转码为MP4并保存,操作完成后,给客户端推送视频url进行在线播放。1、WebSocket实现异步消息推送1、webSocket和Http的区别相同点都是一样基于TCP的,都是可靠性传输协议。都是应用层协议。不同点WebSocket是双向通信协议,模拟Socket协议,可以双向发送或接受信息。HTTP是单向的。WebSocket是需要握手进行建立连接的。联系WebSocket在

2020-10-29 14:32:42 1274

原创 【String】关于intern方法的测试与理解

最近在看虚拟机,了解到了有关intern的知识,感觉理解起来有点困难,于是乎就直接动手敲敲代码。以下是案例(注意:测试环境是jdk 1.7以上,1.6以下结果因为永久代的影响又是另一个!)案例1:String str1 = new String("计算机") + new String("软件"); System.out.println(str1 == str1.int...

2019-07-09 16:13:51 206

原创 【SpringBoot】关于@Configuration

假如有两个配置类当初始化ApplicationContext时两个配置类中的方法都会被运行。配置类代码如下:@Configurationpublic class MyAppConfig { //将方法的返回值添加到容器中,容器中这个组件默认的id就是方法名 @Bean public HelloService helloService(){...

2019-07-05 10:27:25 768

转载 【转】Struts2 validate验证指定方法的三种方式。

一开始发现自己写的退出登陆方法一直直接被校验器拦截掉,直接返回到input指定的路径,经过百度后发现可以指定不校验的方法,指定的方法如下:https://blog.csdn.net/snow_crazy/article/details/20954557...

2019-06-12 10:45:45 133

转载 懒加载 no session 错误(配置文件解决方法)

https://blog.csdn.net/cuibruce/article/details/53484645

2019-06-03 00:16:18 215

原创 算法——关于char的第i位置0置1 以及获取char的第i位 ,翻转

为什么用char作为单位呢?一个char是一个字节,一个字节是8位,故使用char作为单位。void SetBit(char &c,int i,int v){ if(v){ //置1 c |= (1 << i);}else{ //置0 c &= ~(1<<i);} }获取int get...

2019-04-11 17:14:10 1848

原创 Inverse属性导致级联cascade属性失效

一开始把cascade属性写在“一”的一侧:<set name="EmployeeSet" inverse="true" > <key column="cid" > </key> <one-to-many class="com.cjx.entity.Employee" cascade= "all" in...

2019-04-10 00:14:38 129

转载 【转】Spring4+Hibernate5:报错Cannot unwrap to requested type [javax.sql.DataSource]

原文链接:https://blog.csdn.net/bolon_57使用Spring4+Hibernate5时,如果使用hibernate.cfg.xml配置数据源,则会报错:Cannot unwrap to requested type [javax.sql.DataSource]。具体原因不明有人给出的解释是:<propertyname="hibernate.curren...

2019-03-28 10:54:07 165

原创 s:radio 传值是字符而不是数字

其实就是一个小技巧很多例子中的s:radio是这样写的:<s:radio list="#{1:'男',0:'女'}" value="0" label="性别" name = "student.ssex"></s:radio>这样上传的值是1,然后我就开始想,如果我想直接传 男 这个字符的话怎么弄呢?然后我大胆的试了一下。<s:radio li...

2019-03-22 17:05:26 888

原创 struts2 validation.xml 校验成功但是出现404错误

if(hasErrors()) {return "input";}原因是Action那里没有加这一段,出现错误时没有跳转页面解决方法:补上上面代码,input对应的页面为提交表单的页面。要在 struts.xml 被拦截的ACTON中配上 <result name="input">/WEB-INF/jsp/index.jsp</result>...

2019-03-22 16:02:21 255

转载 [转]Struts 关于validator的regex验证

原文:https://blog.csdn.net/freewindgo/article/details/52005860之前因为版本问题导致校验一直没有报错但是也没有效果,多谢这位大大的文章,才让我知道是版本问题。<field name="student.sid"> <field-validator type="regex"> <param name="...

2019-03-22 15:59:43 255

原创 【android学习笔记】第四篇——基础控件2

好久没上啦!补更。 ProgressBar 长条形进度条变动态:写一个让进度值变大变小的实例://progress bar 在Oncreate 中生命,class要接上Runnable接口 private Thread th;//线程 private ProgressBar pbh; private boolean statechange;/...

2018-08-08 11:38:29 139

原创 【android学习笔记】第三篇——基础控件1

哦豁~上次学完了布局后,我们今天来谈谈控件。如果有时间,我会把自定义动画也学了~同样写在这一篇博文里面。导入资源,Ctrl+C,选中文件夹,Ctrl+V出现了Androidstudio 出现 Call requires API level 24(current minimum is 15):android.icu.util.calendar 问题时的办法https://blog.csd...

2018-07-28 15:18:46 173

原创 【android学习笔记】第二篇——Android Logcat 与布局

Hello!今天是学习的第二天,也要元气满满哦!根据书本的内容今天一开始我要接触的是Log打印。一起来看看吧一、Log不过在测试之前,我们得先调一下AS默认的LogCat找到Setting——Color Scheme——Android Logcat去掉然后就可以自己弄自己喜欢的颜色啦!弄了一个Button来测试public void LogCl...

2018-07-26 12:59:52 167

原创 【android学习笔记】第一篇——Android开发工具及安卓基础

人生中的第一篇博文。第一次写博客,本文仅用来记录自己学习安卓开发上的遇到的问题与学习心得,想看就看。( ̄▽ ̄)/捣鼓了好几天,今天终于确定了自己的Android开发工具。duang!就是他Eclipse(老版教材之王)Android Studio为什么不用Eclipse...哎,配置了好几天,最后还是一堆报错!枉费我一番心思!然后Android Studio,下载,安装,...

2018-07-25 21:40:13 315

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除