自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (4)
  • 收藏
  • 关注

原创 Windows 10 docker desktop如何给已经启动的Docker容器添加或者修改端口映射(通过修改配置文件实现)

这篇文章能帮你解决Windows docker desktop上修改容器端口映射

2022-07-07 11:18:36 3393 1

原创 橙单微服务之批量导入

上面这些代码全部是自动生成的,批量导入如果你配置了这个表单,支持批量导入,那么代码就会生成,否则不会。出于性能考虑,这里可以存储在本地,当然也可以存储在minio等oss中橙单会生成一部分需要忽略的字段,比如创建人,创建时间,更新人,更新时间,逻辑删除等。这里也给出了注释,如果要忽略其他的字段,也可以直接在这里修改,一行即可。如果excel中的顺序,不是字段中的顺序,可以在这里适当调整即可。从这两点可以看出,修改就是非常简单的。二次橙单,刻意没有去考虑生成100%的代码,而是确实预留出一.

2022-04-22 15:37:15 2207

原创 橙单微服务的权限部分之规避递归查询的部门树的实现方式

今天给大家分享一下,橙单中规避了递归查询的部门树的实现方式。这个是需要结合昨天分享的数据权限,一起去看的。橙单微服务的权限部分之过滤规则昨天我们介绍过,数据权限,几乎贯穿80%的sql,所以优化极为值得。在橙单中,有基于部门的数据过滤权限实现一下这个权限,本部门及其子部门,试想一下如果有三个部门层级,就有了递归,如果每一条涉及数据权限的sql,都会被绑定一个递归条件,这几乎是不可用的。有多种实现方式,集中最简单的就是,每个部门,都有一个parentid字段,然后过滤的时候,不停的递归这个

2022-04-15 17:19:23 454 2

原创 橙单微服务的权限部分之过滤规则

在橙单中,我们是通过mybatis拦截器统一拦截的,这样最大的好处是业务代码的解耦,不用每个开发人员,都自己写过滤了,很容易错和漏掉。而mybatis拦截器,也是比较通用的插件方式通过上图可以看到,我们支持部门过滤和用户过滤,这些都是可以在在线表单和生成器的路由表单中指定的,每个业务表都可以指定自己的上图是生成器中的配置,在线表单也类似吧重点说一下代码生成的代码中,会多出注解,分别是部门和用户过滤会生成响应的数据权限过滤注解有需求是,这个mapper下,有的方法需要过滤,有的不需要注.

2022-04-14 18:13:36 456 2

原创 橙单微服务的权限部分之权限详情

继续昨天权限部分的分享,从用户 -> 角色 -> 菜单 -> 权限字 -> 权限资源(url),这个链比较长,如果想看用户都有哪些url的访问权限就比较困难,而且反之,如果想知道url可以被哪些用户访问,也是比较费劲的。所以,橙单为了便于项目实施人员的线上问题诊断,提供了权限详情的功能。可以看到用户的权限详情,没有角色标签,是因为用户和角色是相邻关联。这个逻辑以此类推这里非常人性化的提供了分配路径,用户的操作权限,是通过哪个角色,哪个菜单,哪个权限字关联而来。反之亦然

2022-04-07 10:26:37 231

原创 橙单微服务的权限部分

假期前几天,给大家简单分享了橙单框架中的操作日志的体系,包括如何把从前端,到elk,再到skywalking等,如何完整的串联,如何使用定位线上问题,同时还介绍了JWT token部分,我们是如何实现用户身份验证的。今天分享一下我们的权限部分。橙单的权限部分,比较完整且灵活,但是如果不了解他们的作用,往往会觉得相对复杂,特别是权限字部分,其实这个是和shiro中的权限字是对等的。今天不讲代码,只是从需求视角介绍一下,为啥要这样设计,这五类数据,分别存储在独立的数据表中,同时自顶而下,他们之间都有一张

2022-04-06 15:08:27 726

原创 橙单微服务 JWT Token的用户验证部分

今天分享JWT Token的用户验证部分,通过这两点细节,应该都可以感受到,橙单对细节的把控,都是极为简单且实用的。在橙单中,有存在4中请求正常的,需要授权的请求。只有登录用户,且有权访问的用户可以被通过。白名单请求,所有合法登录用户,均可访问,降低权限配置的复杂度。纯免登陆请求,无论登录与否,均可访问。纯免登录请求,登录用户和非登录用户,均可访问,但是不同的用户可以返回不同的数据,举个例子,app首页,没有登录的用户返回缺省的数据,登录用户可以返回个性化数据。这里有一个细节的处理,在橙

2022-04-02 15:25:11 1377

原创 橙单的日志处理技巧

橙单的日志处理技巧

2022-04-02 14:03:33 988

原创 刷新了dns后Docker容器暴露的端口外网全部都访问不了解决

起因发邮件报错dns 解析不了这个域名java.net.UnknownHostException: www.xxx.cn: Temporary failure in name resolution然后本机配置了一个dns,刷新了dns刷新了dns后Docker容器暴露的端口外网全部都访问不解决试图重启了相关docker容器的服务都还是连不上要执行systemctl restart docker 重启docker服务没想到刷新本地dns缓存,docker进程也需要重启...

2021-10-26 16:29:04 479

原创 解决nacos报错 tried: ErrCode:503, ErrMsg:server is DOWN now, please try again later!

错误现象:服务启动后控制台报错,服务链接不上nacos报错中有 server is DOWN now, please try again later!字眼关键报错信息com.alibaba.nacos.api.exception.NacosException: failed to req API:/nacos/v1/ns/service/list after all servers([127.0.0.1:8848]) tried: ErrCode:503, ErrMsg:server is DOWN

2021-04-23 11:14:18 6638 3

原创 解决idea git can‘t update 未设置上下文导致直接拉取代码失败

直接拉代码报错.No tracked branch configured for branch master or the branch doesn’t exist. To make your branch track a remote branch call, for example, git branch --set-upstream-to=origin/master master这个报错的意思就本地跟远端没有建立上下文关系git branch --set-upstream-to=origin/

2021-01-06 11:18:32 2862

原创 解决报错 errMsg: Nacos serialize for class [com.alibaba.nacos.common.http.HttpRestResult] failed.

报错2020-12-24 11:00:48.685 ERROR 43256 --- [ecurity.updater] c.a.nacos.client.security.SecurityProxy : [SecurityProxy] login http request failed url: http://127.0.0.1:8848/nacos/v1/auth/users/login, params: {username=nacos}, bodyMap: {password=nacos}, err

2020-12-24 11:28:30 14609 4

原创 解决feign调用序列化日期时间失败 Cannot deserialize value of type `java.util.Date` from String “2020-09-07 18:36:“

feign远程调用报错,不能序列化,把字符串的时间格式化成data类型feign.codec.DecodeException: Error while extracting response for type [com.bgi.standarddatabase.common.entity.result.WebResult<java.util.List<com.bgi.standarddatabase.common.po.enterprise.Enterprise>>] and co

2020-10-16 09:28:17 4547 7

原创 ‘ribbonServerList‘ defined in com.alibaba.cloud.nacos.ribbon.NacosRibbonClientConfiguration: Unsatis

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'ribbonServerList' defined in com.alibaba.cloud.nacos.ribbon.NacosRibbonClientConfiguration: Unsatisfied dependency expressed through method 'ribbonServerList'.

2020-09-24 11:31:39 3291

原创 解决Shiro 加权限注解失效 或者报错 This subject is anonymous

报错堆栈org.apache.shiro.authz.UnauthenticatedException: This subject is anonymous - it does not have any identifying principals and authorization operations require an identity to check against. A Subject instance will acquire these identifying principals a

2020-09-12 12:52:47 12748 2

原创 总结 zuul 路由配置规则 以及 超时设置

总结:1.配置zuul.routes.<路由规则> 如果路由规则和存在的服务应用名是一致的serviceID可以不用配置2.配置服务的ribbon超时时间应该 小于 hystrix 时间,否则ribbon超时失效3.服务配置的 ribbon.ReadTimeout: 30000 超过30s 会执行 implements FallbackProvider 自定义的兜底方法application.yml配置文件spring: profiles: active: dev ap

2020-09-10 23:42:32 1500

原创 idea 断点被跳过解决 skiped breakpoint at xxx because it happened inside debugger

Skipped breakpoint com.domoyun.gmall.common.common.MQProducerAckConfig;45 because it happened inside debugger evaluationidea提示断点某行断点被跳过,无法断在指定断点解决

2020-06-29 21:07:27 11919 1

原创 谷粒商城微服务分布式高级篇——06.ElasticSearch 课件讲义

谷粒商城微服务分布式高级篇——06.ElasticSearch 课件讲义

2020-06-18 14:53:26 1468

原创 解决 elasticsearch 集群各找不到主节点。

错误截图集群配置文件cluster.name: aubin-cluster #必须相同 # 集群名称(不能重复)node.name: els1(必须不同)# 节点名称,仅仅是描述名称,用于在日志中区分(自定义)#指定了该节点可能成为 master 节点,还可以是数据节点 node.master: true node.data: truepath.data: /opt/data# 数据的默认存放路径(自定义)path.logs: /opt/logs # 日志的默认存放路径

2020-06-15 20:08:01 4988 4

原创 nginx配置笔记

nginx配置笔记

2020-06-09 00:00:08 172

原创 在vm虚拟机上安装esd格式的win7系统文件

esd格式的win7系统文件,如何装在vm虚拟机上?看我怎么操作的

2020-06-08 00:54:02 24691 4

原创 mybatis 复习笔记

mybatis 复习笔记

2020-06-07 12:46:13 163

原创 Mysql主从复制配置方式 及 从机连不上主机 Slave_IO_Running: Connecting 状态值一直是Connecting 解决方案

文中配置的是基本的一主一从主机从机数据库均为mysql5.7文章内容包括文中配置主从复制的方式遇到的的问题配置主从复制 一主一从的方式原理图:slave会从master读取binlog来进行数据同步master将改变记录到二进制日志(binary log)。这些记录过程叫做二进制日志事件,binary log eventsslave将master的binary log events拷贝到它的中继日志(relay log) slave重做中继日志中的事件,将改变应用到自己的数据库.

2020-05-30 00:52:02 4682

原创 HashMap 底层源码浅析

文章内容包含- JDK1.8 HashMap扩容时做了哪些优化?- 加载因子为什么是0.75?- 当哈希冲突时,HashMap是如何查找并确定元素的?- HashMap源码中有哪些重要的方法?- HashMap是如何导致死循环的?

2020-05-28 14:04:50 737

原创 安装mysql5.7解决报错 TIMESTAMP with implicit DEFAULT value is deprecated.

安装mysql 5.7.16在需要执行mysqld --initialize --user=mysql命令对mysql数据库初始化的情况下包了两个错误报错一 --initialize specified but the data directory has files in it. Aborting.[root@lzs mysql5.7]# mysqld --initialize --user=mysql2020-05-26T12:11:14.759497Z 0 [Warning] TIMEST.

2020-05-26 14:03:28 14660 1

原创 【多图警告】Redis简介安装以及五大数据类型

NoSQL数据库概述NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库。NoSQL 不依赖业务逻辑方式存储,而以简单的key-value模式存储。因此大大的增加了数据库的扩展能力。不遵循SQL标准。不支持ACID。远超于SQL的性能。NoSQL适用场景对数据高并发的读写海量数据的读写对数据高可扩展性的NoSQL不适用场景需要...

2020-05-24 12:13:56 149

原创 spring security 报错 权限登录接口找不到

报错链接: vue-element-admin-template 登陆报500超时错误 解决方案.之前写的 这篇文章是使用的模拟登录接口返回进行登录到后台,展示后台页面的现在整合spring security用自己的权限管理框架去实现后台的认证和授权管理遇到了以下问题工程目录结构疑惑:后台是没有对应的 admin/acl/login 处理控制器的是spring security 处理了/** * <p> * 登录过滤器,继承UsernamePasswordAuthent

2020-05-20 00:47:49 6165 44

原创 IDEA快捷键 进行查找和批量替换

很多类全路径都多了这一段前缀Ctrl+Shift+R 批量替换

2020-05-19 00:15:21 14549 1

原创 idea删除 maven工程列表中重复模块

idea删除 maven工程列表中重复模块

2020-05-18 22:07:59 8500

原创 微信支付 扫码后页面无跳转卡住

生成二维码一扫就卡住了。没有页面跳转 记录

2020-05-16 18:49:15 7397

原创 解决mysql数据库插入数据乱码

解决mysql数据库插入数据乱码

2020-05-15 17:47:47 233

原创 IDEA 程序包不存在,找不到符号但是明明存在对应的jar包 的解决方案

环境IntelliJ IDEA 2020.1JDK1.8前提概要问题1和问题2其实是同一个问题,但是表现上有一点不一样具体是如何引起该问题,尚不清楚,特此记录问题1描述一运行springboot启动类,就报一大堆jar报idea Kotlin: Classpath entry points to a non-existent location:类路径条目指向不存在的位置 程序包不存在 找不到符号我jar包本地仓库也不是存在这个位置啊然后我就去这个文件目录下找这个目录删除了。还是报这个

2020-05-15 01:19:09 81833 131

原创 爬虫 一言

代码粗糙因为接口返回的语录是随机的,目前只能拿到3618条,很多访问的结果都是重复的实现思路通过httpclient工具类访问接口返回json数据 存入数据库如果数据有该条记录,不存入数据开启线程,批量访问 @GetMapping("/httpclient/{c}") public R ok(@PathVariable String c) throws Exception { Thread t1 = new okthread(hitokotoService,c).

2020-05-13 17:52:45 295

原创 【笔记】多线程编程基础

内容来自互联网 未知出处 多线程学习笔记 ,侵权联系删除

2020-05-11 23:27:36 115

原创 【解决】 io.lettuce.core.RedisCommandExecutionException: ERR wrong number of arguments for 'set' command

这个问题花了我挺长时间,在csdn上结果也不操作10条我是用的windows -redis在本地环境测试一开始的版本是更换了就不会报错 io.lettuce.core.RedisCommandExecutionException: ERR wrong number of arguments for ‘set’ command具体表现我是通过 swagger访问写好的接口,会断在controller执行service返回一次,能正常返回数据不会报错但是通过前台页面刷新访问会断在contr.

2020-05-10 10:13:03 7245 5

原创 解决'org.springframework.cache.interceptor.CacheExpressionRootObject' - maybe not public or not valid?

错误堆栈信息org.springframework.expression.spel.SpelEvaluationException: EL1008E: Property or field 'selectIndexList' cannot be found on object of type 'org.springframework.cache.interceptor.CacheExpressionRootObject' - maybe not public or not valid? at org.

2020-05-09 22:56:56 10438 2

原创 【API使用】 redisTemplate.opsForValue()的重载方法 void set(K key, V value, long offset)使用说明

遇到的问题在使用的时候,我也以为set三个参数的情况下,第三个参数是过期时间,但是默认单位是什么呢?**四个重载方法,我们只看最后一个void set(K key, V value, long offset);分析springdata-redis提供的操作redis模板 redisTemplateredisTemplate.opsForValue() 拿到ValueOperationsValueOperations 是一个接口ValueOperations 介绍原文:Redis ope

2020-05-09 17:52:02 2545 1

原创 # springboot整合redis启动 启动类程序直接终止

springboot整合redis启动 启动类程序直接终止报错信息org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘redisTemplate’ defined in class path resource [com/domoyun/servicebase/config/RedisConfig.class]: Unsatisfied dependency exp

2020-05-09 13:36:36 1358

原创 简单的数据封装 - 两级树形结构实现

@Override public List<ChapterVo> getChapterVideoById(String courseId) { //根据id查询章节信息 QueryWrapper<EduChapter> queryWrapperchpter = new QueryWrapper<>(); ...

2020-05-07 01:29:23 596

原创 解决方案 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*'

以下的问题由我斌哥提供解决方案 https://me.csdn.net/Duktig19 他的 个人站点.文中内容由本人测试和整理环境文中使用的环境是 "name": "vue-admin-template", "version": "3.8.0" using [email protected] using [email protected]先看三张图,正常都是服务器返回session,然后浏览...

2020-05-03 21:22:33 30751 5

StringAPI.java

Java String 类型 API 测试代码 1.String和char[]之间的转换 toCharArray(); 2.String和byte[]之间的转换 getBytes() Arrays工具类 : Arrays.toString(names) String类 String replace(char oldChar, char newChar) String replace(CharSequence target, CharSequence replacement) String[] split(String regex) boolean contains(CharSequence s):当且仅当此字符串包含指定的 char 值序列时,返回 true int indexOf(String str):返回指定子字符串在此字符串中第一次出现处的索引 int indexOf(String str, int fromIndex):返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始 int lastIndexOf(String str):返回指定子字符串在此字符串中最右边出现处的索引 int lastIndexOf(String str, int fromIndex):返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索 boolean endsWith(String suffix):测试此字符串是否以指定的后缀结束 boolean startsWith(String prefix):测试此字符串是否以指定的前缀开始 boolean startsWith(String prefix, int toffset):测试此字符串从指定索引开始的子字符串是否以指定前缀开始 int length():返回字符串的长度: return value.length char charAt(int index): 返回某索引处的字符return value[index] boolean isEmpty():判断是否是空字符串:return value.length == 0 String toLowerCase():使用默认语言环境,将 String 中的所有字符转换为小写 String toUpperCase():使用默认语言环境,将 String 中的所有字符转换为大写 String trim():返回字符串的副本,忽略前导空白和尾部空白 boolean equals(Object obj):比较字符串的内容是否相同 boolean equalsIgnoreCase(String anotherString):与equals方法类似,忽略大小写 String concat(String str):将指定字符串连接到此字符串的结尾。 等价于用“+” String substring(int beginIndex):返回一个新的字符串,它是此字符串的从beginIndex开始截取到最后的一个子字符串。 String substring(int beginIndex, int endIndex) :返回一个新字符串,它是此字符串从beginIndex开始截取到endIndex(不包含)的一个子字符串。

2019-12-23

dotnet代码混淆.zip

工具+图文使用文档 1、设置dll目录 2、拖入需要混淆的dll 3、混淆设置 3.1编辑规则 4、执行代码混淆

2019-07-22

C#代码编写规范.pdf

本规范为一套编写高效可靠的 C# 代码的标准、约定和指南。它以安全可靠的软件工程原则为基础,使代码易于理解、维护和增强,提高生产效率。同时,将带来更大的一致性,使软件开发团队的效率明显提高。

2019-07-22

黑鹰36课易语言基础教程资源包

黑鹰36课易语言基础教程资源包适合新手朋友的学习

2012-05-05

空空如也

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

TA关注的人

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