自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

orichisonic的专栏

蜗牛爬行的轨迹

  • 博客(846)
  • 资源 (137)
  • 收藏
  • 关注

转载 权限体系设计:融合了组织和岗位的权限模型长啥样?

文章从RBAC的基本原理出发,结合案例对权限设计中一个职位对应多个岗位的的情况进行了说明,并分享了相关权限模型,供大家一起参考和学习。传统RBAC与现实的距离传统的RBAC(基于角色的访问权限控制)是一个经典的权限管理模型,基本原理是不直接对系统种的用户赋权,而是通过角色作为系统用户和系统资源之间的中介,将资源权限绑定到角色,再将角色绑定到用户,来完成整个赋权的流程,从而简化赋权和修改权限的过程。(多扯一句,这个理念和计算机软件体系中,大家谈到的,当你觉得一个系统太复杂的时候,就给它加.

2022-03-10 10:32:28 794

转载 与接口相关的设计模式(1):定制服务模式和适配器模式详解

在Java中我们通常把接口作为系统与外界交互的窗口,接下来我们来考虑以下问题:如何设计接口?当两个系统之间接口不匹配时,如何处理?但系统A无法便捷的引用系统B的接口的实现类实例时,如何处理?……为了解决以上问题,需要引入与接口相关的设计模式,接下来介绍定制服务模式、适配器模式、默认适配器模式、代理模式、标识类型模式和常量接口模式。- 定制服务模式在如今的商业领域,很流行定制服务。例如电信公司会制定各种各样的服务套餐,满足各种客户的需求。下表是电信公司为个人用户定制的两款宽带服务套餐:极

2022-03-10 10:28:03 632

转载 B端设计实战:基于角色&属性的权限设计

编辑导读:“权限控制”是中后台的基础能力,用于管控操作人员在平台内可做的事项内容。即通过权限控制,可以决定哪些人在平台内可以做哪些事。本文作者围绕角色&属性的权限设计展开分析,希望对你有帮助。Hello,我是一名交互设计师。随着3月暖春的即将到来,苏州的疫情却似乎没有好转的迹象,于是被迫居家隔离的我,反而有了更多的时间来思考复盘自己参与B端设计后的一些收获。我现在参与的项目是资源生产中台,说白了,就是当字节内部的业务需要某类资源时(如教育业务需要题目资源、电商业务需要竞品价格...

2022-03-10 10:25:13 1396

转载 将Map转换为Java 对象

正在上传…重新上传取消​public class MapUtil { public static Object convert2Object(Class clazz,Map<String,Object[]> map) throws IntrospectionException, InstantiationException, IllegalAccessException{ BeanInfo bi = Introspector.getB..

2021-12-10 09:24:29 623

转载 Web全自动配置

web可视化动态配置数据权限动态配置需要依赖数据库,所以我们需要前往web端进行配置 配置逻辑与纯注解配置一致,其实就是把注解配置拓展,并做成了web可视化 下面我们来打开web工程,进行操作把~Web配置打开saber,进入数据权限,点击通知公告模块的数据权限按钮 在弹层点击新增按钮 填入对应的参数 这里有一点注意的是权限类名字段,之所以可以实现自动配置,就是因为我们指定了Mapper层对应执行的方法。所以我们对应的路径需要指定正确,不能出错。 还有一点需要

2021-09-17 13:11:58 480

转载 纯注解配置

纯注解配置如果是纯注解配置,那么是不通过数据库的,相当于是离线配置。 我们只需要关注column、type、value这三个字段。 column:需要过滤的数据库字段 type:数据权限过滤的类型 value:当数据权限类型为自定义的时候,配置的sql条件语句所在机构可见配置DataAuth注解,因为默认字段就是create_dept,所以无需配置column postman调用接口获取token 将token传入header并调用对应接口 查看具体返..

2021-09-17 12:30:43 346

转载 数据权限简介

前言我们知道,一般的系统都离不开权限模块,它是支撑整个系统运行的基础模块。而根据项目类型和需求的不同,权限模块的设计更是大相径庭。但不管怎么变,权限模块从大的方面来说,可以分为三种大的类型:功能权限、接口权限、数据权限。 功能权限:也就是我们最熟悉的菜单、按钮权限。可以配置各个角色能看到的菜单、按钮从而从最表层分配好权限 接口权限:顾名思义,配置不通角色调用接口的权限。有些敏感接口,是只能有固定的一些角色才能调用,普通角色是不能调用的。这种情况需要有一个明确的系统来控制对应的访问权限 数据权限:是

2021-09-17 12:28:23 9892 2

转载 Postman测试上传MultipartFile文件

单个文件上传后台代码View CodePostman设置注意:上传文件时点击下拉框时,只有光标不在文本框中时下拉框才会显示出来。多文件上传后台代码View Code分类:开发工具...

2021-07-21 17:32:17 1354

转载 Redis与MySQL双写一致性如何保证?

往期热门文章:1、程序员版孔乙己2、还在用 Random生成随机数了?试试 ThreadLocalRandom,好用!3、从 0 到 1 手把手教你制作酷炫可视化大屏4、为什么不建议你用a.equals(b)判断对象相等5、为什么不推荐使用BeanUtils属性转换工具前言四月份的时候,有位好朋友去美团面试。他说,被问到Redis与MySQL双写一致性如何保证?这道题其实就是在问缓存和数据库在双写场景下,一致性是如何保证的?本文将跟大家一起来探讨如何回答这个问题。

2021-07-20 10:07:02 207

转载 还在用分页?太Low !试试 MyBatis 流式查询,真心强大!

往期热门文章:1、告别 swagger-ui ,我选择了这款神器!2、JDK/Dubbo/Spring 三种 SPI 机制,谁更好?3、小团队真的适合引入Spring Cloud微服务吗?4、IDEA 中的热部署神器!5、我承认 IDEA 2021.3 有点强!基本概念流式查询指的是查询成功后不是返回一个集合而是返回一个迭代器,应用每次从迭代器取一条查询结果。流式查询的好处是能够降低内存使用。如果没有流式查询,我们想要从数据库取 1000 万条记录而又没有足够的内存时,就不得

2021-07-20 10:05:02 182

转载 Git 各指令的本质,真的是通俗易懂!

作为当前世界上最强大的代码管理工具 Git 相信大家都很熟悉,但据我所知有很大一批人停留在 clone、commit、pull、push...的阶段,是不是对 rebase 心里没底只敢用 merge?碰见版本回退就抓瞎?别问我怎么知道的,问就是:“我曾经就是这样啊~~”。针对这些问题,今天我就将这几年对 Git 的认知和理解分享出来,尽可能的从本质去讲解 Git,帮助你一步一步去了解 Git 的底层原理,相信读完本篇文章你便可以换种姿态,更加风骚得使用 Git 各种指令。基本概念Git 的

2021-07-15 15:07:26 206

转载 .NET Core with 微服务 - Consul 配置中心

上一次我们介绍了Elastic APM组件。这一次我们继续介绍微服务相关组件配置中心的使用方法。本来打算介绍下携程开源的重型配置中心框架 apollo 但是体系实在是太过于庞大,还是让我爱不起来。因为前面我们已经介绍了使用Consul 做为服务注册发现的组件,那么干脆继续使用 Consul 来作为配置中心吧。Consul 除了服务注册发现功能,还有个 Key/Value 存储的功能,我们把本地的 appsettings.json 文件的内容搬到 Key/Value 上就可以实现配置中心了。把服务

2021-07-15 15:01:35 366

转载 Spring SPI 机制总结

1、概念: SPI(Service Provider Interface)服务提供接口,简单来说就是用来解耦,实现插件的自由插拔,具体实现方案可参考JDK里的ServiceLoader(加载classpath下所有META-INF/services/目录下的对应给定接口包路径的文件,然后通过反射实例化配置的所有实现类,以此将接口定义和逻辑实现分离) Spring在3.0.x的时候就已经引入了spring.handlers,很多博客讲Spring SPI的时候并没有提到spring.hand...

2021-07-15 15:00:44 290

转载 Spring是如何解决循环依赖的呢?

1、什么是循环依赖?循环依赖就是循环引用,就是两个或多个bean相互之间的持有对方。A类中有一个B类型的成员变量,需要注入BB类中有一个A类型的成员变量,需要注入A2、循环依赖的场景2.1、构造器的循环依赖【spirng无法解决】两个循环依赖的类//A类publicClassA{privateBb;pubcliA(Bb){this.b=b;}}//B类publicClassB{private...

2021-07-15 14:58:54 249

转载 .NET 之 Docker 部署详细流程

开篇语自己从头开始走一遍docker部署.net的流程,作为一种学习总结,以及后续会写一些在该基础之上的文章。本次示例环境:vs2019、net5、docker、postman创建项目本次事例代码是用过vs2019创建的ASP.NET Core Web API项目目标框架是.NET 5,无需身份验证,不配置HTTPS(根据个人需求勾选),启动Docker(我习惯于后期添加),启用OpenAPI支持(添加swagger文档)默认配置创建完成后,我们查看项目目录为下

2021-07-15 14:57:24 925

转载 Spring Boot 注解大全,一键收藏了!

# 注解(annotations)列表@SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。@Configuration 等同于spring的XML配置文件;使用Java代码可以检查类型安全。@EnableAutoConfiguration自动配置。

2021-07-15 14:55:59 97

转载 分布式事务的 6 种解决方案,写得非常好!

介绍在分布式系统、微服务架构大行其道的今天,服务间互相调用出现失败已经成为常态。如何处理异常,如何保证数据一致性,成为微服务设计过程中,绕不开的一个难题。在不同的业务场景下,解决方案会有所差异,常见的方式有: 阻塞式重试; 2PC、3PC 传统事务; 使用队列,后台异步处理; TCC 补偿事务; 本地消息表(异步确保); MQ 事务。 本文侧重于其他几项,关于 2PC、3PC 传统事务,网上资料已经非常多了,这里不多做重复。阻塞式重试在

2021-07-15 14:54:57 431

转载 GitLab 自带的 CI/CD 实现 .NET Core 应用程序的部署

前言这两天在折腾持续集成和交付,公司考虑使用gitlab自带的ci/cd来处理,特此记下来整个流程步骤。一、安装gitlab这个自然不用多说二、使用docker容器安装gitlab-runner组件新建一个docker-compose.yml文件,内容如下,在linux系统下使用 docker-compose up -d 命令跑起来就好(如果不会,可度娘搜索安装和使用)1version:"3.3"2services:3gitlab-run...

2021-07-15 14:53:56 1724

转载 强大的 Stream 函数式编程

前言Java8(又称为 Jdk1.8)是 Java 语言开发的一个主要版本。Oracle 公司于 2014 年 3 月 18 日发布 Java8,它支持函数式编程,新的 JavaScript 引擎,新的日期 API,新的 Stream API 等。Java8 API 添加了一个新的抽象称为流 Stream,可以让你以一种声明的方式处理数据。Stream API 可以极大提高 Java 程序员的生产力,让程序员写出高效率、干净、简洁的代码。Java8 新特性 Lambda 表达式 − Lambd

2021-07-15 14:51:45 439

转载 回归初心,近三万字详解 23 种设计模式(多图 + 代码)

一直想写一篇介绍设计模式的文章,让读者可以很快看完,而且一看就懂,看懂就会用,同时不会将各个模式搞混。自认为本文还是写得不错的????????????,花了不少心思来写这文章和做图,力求让读者真的能看着简单同时有所收获。设计模式是对大家实际工作中写的各种代码进行高层次抽象的总结,其中最出名的当属Gang of Four(GoF) 的分类了,他们将设计模式分类为 23 种经典的模式,根据用途我们又可以分为三大类,分别为创建型模式、结构型模式和行为型模式。有一些重要的设计原则在开篇和大家分享下,这些原则

2021-07-15 14:50:32 297 1

原创 基于租户权限管理平台MSP的设计方案和规划

引言随着外包业务以及人力资源公司的日益增长,各个单体结构的平台系统各自为政,Saas化改造处于当务之际的情况下,邦芒集团急需一套租户权限管理平台以及推送下游系统,诸如HRO,HRM,OA来消费的治理平台,根据以往酒店信息化赋能的经验,组织架构统一,普通角色加特殊角色比较繁多(大概80条不到的角色),统一组织架构和角色岗位是后期一个任重道远的任务,但是目前关键还是租户管理分发显得更有商业价值,各个子系统各自监管自己的组织架构同时将菜单功能权限推送到msp,并且由msp统一配置分发基础数据给下游系统...

2021-07-14 10:35:14 543

原创 SQL Server域Alwayson 部署

引言 基于windows2012 server和sql server2012的域控的设置方法在很多场景已经使用,不仅需要windows的域部署,故障转移部署,以及sql server的域部署以及仲裁机等操作,使用起来非常麻烦,现在sql server2016来了,听说sql server2017可以在linux上部署AG,又是一个降低运营成本的好消息,这边先以sql server2016为例,详细讲述下如何部署实施。 操作步骤 2.1 Windows 2016 无域故障转移群集部署方法...

2021-07-14 10:27:12 1173

转载 @Autowired 与@Resource的区别(详细)

参考博文:http://www.cnblogs.com/happyyang/articles/3553687.htmlhttp://blog.csdn.net/revent/article/details/49203619http://blog.csdn.net/ad921012/article/details/49679745spring不但支持自己定义的@Autowired注解,还支持几个由JSR-250规范定义的注解,它们分别是@Resource、@PostConstruct以及@

2021-07-14 10:13:08 670

转载 浅谈Spring Cloud Ribbon的原理

这篇文章主要介绍了浅谈Spring Cloud Ribbon的原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随即连接等)去连接这些机器。我们也很容..

2021-07-14 10:10:04 160

原创 单元调试的问题

using System;using Microsoft.VisualStudio.TestTools.UnitTesting;using MG.HR.Model;using System.Collections.Generic;using MG.HR.Service;using MG.HR.Model.Form;namespace MG.HR.ServiceTest{ [TestClass] public class EntryFormalTransferSlipTest...

2020-07-05 13:09:32 247

原创 如何获得前一天的时间

SELECT GETDATE() AS CurrentDateTime 获得当天日期时间select dateadd(day, -1, getdate()) 获得前一天的日期时间Select Convert(DateTime,Convert(Varchar(10),dateadd(day, -1, getdate()),120)) 获得前一天的凌晨0点的时间SELECT DATEADD(day,DATEDIFF(day,'20010101',CURRENT_TIMESTAMP),'2001.

2020-06-05 15:26:12 1008

原创 job 的调度程序quartz为什么立即执行的问题

Problemwindows 服务每次启动会立即执行那些服务Solution<trigger> <cron> <name>ProbationPositiveJobTrigger</name> <group>HR</group> <description></description> <job-name>P...

2020-06-05 15:24:33 1181

原创 如何根据小数点后的第一位小数按照自定义规则取整

SELECT al.NUHours,al.NUHours/2920,ji.JoinGroupDate,datediff(day,ji.JoinGroupDate,GETDATE()) AS 天数,cast(cast(al.NUHours*datediff(day,ji.JoinGroupDate,GETDATE())as decimal(38,2))/2920 AS DECIMAL(38,1)),floor((cast(cast(al.NUHours*datediff(day,ji.JoinGroupDa

2020-06-05 15:23:32 348

转载 SQL 从字符串中提取数字

一基础使用:--声明一个nvarchar类型的变量并赋值declare @Name nvarchar(50)set @Name='我正在123学.习22.SQL中11.的一些函数'--patindex函数返回所查内容在字符串中第一次出现的内容print patindex('%在%',@Name) --此处会返回3print patindex('%[0-9]%',@Name) --此处会返回4--STUFF函数删除指定长度的字符在指定的起始点插入另一组字符--格式 stuff(param...

2020-05-11 19:49:09 14268

原创 iOS开发证书、bundle ID、App ID、描述文件、p12文件,及企业证书打包发布详述

引言此操作手册用于提供客户进行企业发布299美金的账户发布非AppStore的app程序的CSR证书,distribution证书以及p12证书导出用。2 .iOS开发证书,描述文件,bundle ID的关系苹果为了控制应用的开发与发布流程,制定了一套非常复杂的机制。这里面的关键词有:个人开发者账号,企业开发者账号,bundle ID,开发证书,发布证书(又...

2020-04-15 14:31:32 1069

转载 Insert select 带选择复制一张表到另一张表

 使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。   1.INSERT INTO SELECT语句  语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1 [where column =value][]为可选内容要求目标表Table2必须在由...

2018-12-05 13:26:07 1014

转载 ajaxFileUpload上传文件简单示例

 写在前面:  上传文件的方式有很多,最近在做项目的时候,一开始也试用了利用jquery的插件ajaxFileUpload来上传大文件,下面,用一个上传文件的简单例子,记录下,学习的过程~~~   还是老样子,上代码最明了啦。。  前台jsp页面:&lt;%@ page contentType="text/html;charset=UTF-8" language="j...

2018-12-04 10:13:01 558

转载 Promise,Async,await简介

 Promise 对象转载:http://wiki.jikexueyuan.com/project/es6/promise.html基本用法ES6 原生提供了 Promise 对象。所谓 Promise 对象,就是代表了某个未来才会知道结果的事件(通常是一个异步操作),并且这个事件提供统一的 API,可供进一步处理。有了 Promise 对象,就可以将异步操作以同步操作的流程表...

2018-12-04 10:03:47 558

转载 js模板引擎-art-template常用总结

 art-templatejavascript 模板引擎,官网:https://github.com/aui/art-template分为原生语法和简洁语法,本文主要是讲简洁语法基础数据渲染 输出HTML 流程控制 遍历 调用自定义函数方法 子模板引入基础数据渲染一、引入art-template.js文件&lt;script src="template-deb...

2018-12-04 10:02:56 803

转载 JavaScript模块化 --- Commonjs、AMD、CMD、es6 modules

  随着前端js代码复杂度的提高,JavaScript模块化这个概念便被提出来,前端社区也不断地实现前端模块化,直到es6对其进行了规范,下面就介绍JavaScript模块化。   这篇文章还是希望能给大家一个比较好的思路,即JavaScript模块化是如何一步一步地发展起来的,并且也会主要对这些模块化方式做一个简单的比较。  第一阶段:无模块化  JavaScript最初的作用仅...

2018-12-04 10:02:06 214

转载 js如何获取服务器端时间?

 用js做时间校正,获取本机时间,是存在bug的。使用js也可获取到服务器时间,原理是使用 ajax请求,返回的头部信息就含有服务器端的时间信息,获取到就可以了。以下:1、依赖jQuery代码:function getServerDate(){ return new Date($.ajax({async: false}).getResponseHeader("Date...

2018-12-04 10:01:11 1857 1

转载 javascript 获取日期不足两位补 0

&lt;script&gt;    function appendZero(obj) {        if(obj&lt;10) return "0" +""+ obj;        else return obj;    }    function getWeek(weeknum) {        if(weeknum==0)  week="周日";        if(we...

2018-12-04 09:55:43 790

原创 如何获得前一天的时间

  SELECT GETDATE() AS CurrentDateTime 获得当天日期时间select dateadd(day, -1, getdate()) 获得前一天的日期时间Select Convert(DateTime,Convert(Varchar(10),dateadd(day, -1, getdate()),120)) 获得前一天的凌晨0点的时间 SELEC...

2018-12-04 09:53:29 1029

原创 如何根据小数点后的第一位小数按照自定义规则取整

  SELECT al.NUHours,al.NUHours/2920,ji.JoinGroupDate,datediff(day,ji.JoinGroupDate,GETDATE()) AS 天数,cast(cast(al.NUHours*datediff(day,ji.JoinGroupDate,GETDATE())as decimal(38,2))/2920 AS DECIMAL(...

2018-12-04 09:52:36 1122

转载 javascript Date() 浏览器兼容问题解决

 在平常系统中时间的显示格式为:2016-07-20 12:21:12,但是这种时间格式不被IE等浏览器格式所识别,必须将时间格式中的”-“替换为”/”,如:2016/07/20 12:21:12,才是被各个浏览器所广泛支持的,‘-’连接的日期字符串,则是只在chrome下可以正常工作。 所以正确的写法为:var time = "2016-07-20 12:21:12";var ti...

2018-12-04 09:51:26 427

VC技术内幕(第四版)配套光盘

和书配套光盘...............................................................

2007-12-07

Windows 程序调试.part2

.............................................................

2007-11-08

windows程序调试

不错的调试书籍....................

2007-11-08

NET资料.part03

.......................

2007-10-22

NET资料

个人收集整理的NET资料,大家有需要可以参考,都是些web的保存

2007-10-22

领域驱动设计2.part5

...................................

2007-10-22

领域驱动设计2.part4

..........................

2007-10-22

领域驱动设计2.part3

.................................

2007-10-22

领域驱动设计2.part2

..........................

2007-10-18

领域驱动设计2.part1

接在领域驱动设计1后

2007-10-17

领域驱动设计.part5

.......................

2007-10-17

领域驱动设计.part4

..........................

2007-10-17

领域驱动设计.part3

...........................

2007-10-17

领域驱动设计.part2

..................................

2007-10-16

领域驱动设计.part1

软件工程类UML方面的书

2007-10-16

CodeGuru Visual C++ 编程精粹(配套光盘)

CodeGuru Visual C++ 编程精粹(配套光盘)

2007-10-09

CodeGuru Visual C++编程精粹.part5

...........................

2007-10-09

CodeGuru Visual C++编程精粹.part4

.........................

2007-10-09

CodeGuru Visual C++编程精粹.part3

.......................

2007-10-09

CodeGuru Visual C++编程精粹.part2

里面有很多c++技巧,学习md5算法也在这个网站上找到的

2007-10-09

CodeGuru Visual C++编程精粹.part1

codeguru程序员方面资料,不错的关于vc++方面的资料

2007-10-09

3D游戏程序设计入门(龙书)

很经典的关于线性数学在dx下的运用,适合学习入门参考

2007-09-27

Visual C++角色扮演游戏程序设计

游戏编程资料.................

2007-09-27

meiyuan.part07

梅园街道动态网站.................

2007-09-23

meiyuan.part06

梅园街道动态网站.................

2007-09-23

meiyuan.part05

梅园街道动态网站.................

2007-09-23

meiyuan.part04

梅园街道动态网站........

2007-09-23

meiyuan.part03

梅园街道动态网站.................

2007-09-23

meiyuan.part02

梅园街道动态网站.................

2007-09-23

梅园街道动态网站

asp写的......................

2007-09-23

asp+dcom做的无纸化办公系统

一个很成功的产品,原来asp的字典以及vbscript和vc++的com结合能够做出那么优秀的系统,真应征了一句话,一个微软产品不强大,多个开发产品结合就具有很强大的功能

2007-09-23

The Old New Thing

关于开发win32出现的各种场景的解决办法!

2013-05-01

代码阅读方法与实践.part2

...................................

2007-12-21

代码阅读方法与实践.part1

...........................

2007-12-21

汇编语言编程艺术(清晰版).part6

......................................................................

2007-12-05

汇编语言编程艺术(清晰版).part5

......................................................................

2007-12-05

汇编语言编程艺术(清晰版).part4

.............................................................

2007-12-05

汇编语言编程艺术(清晰版).part3

................................................

2007-12-05

汇编语言编程艺术(清晰版).part2

.............................................

2007-12-05

汇编语言编程艺术(清晰版).part1

在CSDN上下载来的,觉得好,再上传一份

2007-12-05

空空如也

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

TA关注的人

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