自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

诗人不写诗

有感而发

  • 博客(446)
  • 资源 (9)
  • 问答 (1)
  • 收藏
  • 关注

原创 微信有关白名单IP

一、商家支付二、公众号。

2024-04-21 16:44:10 151

原创 docker 安装nginx

为了先复制出部分文件,先启动一个临时容器。

2024-03-29 23:26:30 789

原创 Spring RestTemplate高性能配置

这里没有涉及任何连接方面的配置,直接使用,需要看源码才知道RestTemplate是如何进行网络连接的。根据经验,我们知道,发起网络通信,通常是有需要有网络连接工具类的,我们熟知的有:1、JDK自带的java.net.URLConnection3、其他一些http工具类RestTemplate也不例外。这里的createRequest()就调用到父类HttpAccessor了。RestTemplate的有关继承关系如下,上面是父类,下面是子类RestTemplate把发送请求的功能封装到。

2024-03-20 13:47:27 331

原创 PageHelper原理

所以,不要给list重新赋值,否则最后PageInfo无法从Page中拿到分页值。mybatis提供插件功能,PageHelper使用这个插件机制。

2024-02-01 21:15:38 405

原创 Spring原理提前理解

3、Spring扫描Bean上面注解没有使用反射,而是使用ASM字节码层面读取,这样就可以不用加载类就能读取类的元信息。1、Spring扫描Bean时,先生成BeanDefinition,后面再根据策略去决定是否生成对象。2、如果扫描时发现是非懒加载单例Bean,就会当场生成对象,否则不会立即生成对象。

2024-01-17 21:05:59 367

原创 一次生产问题:MySQL连接耗尽和死锁

1、线程池要隔离,特别是业务逻辑中异步处理任务较多时,要考虑异步是否需要快速处理完2、表的修改要在需要修改的时候再修改,不要无脑修改,不要怕麻烦多查询一次。

2023-12-29 19:47:57 568

原创 六边形架构

总的来说,Alistair Cockburn是一位备受尊敬的软件工程师和架构师,他的贡献和影响力对软件开发领域的发展产生了深远的影响。Alistair Cockburn是一位软件开发领域的重要人物,他通过自己的研究、著作和实践,推动了敏捷开发方法的发展和普及,对提升软件开发团队的效率和质量产生了积极的影响。除了他的学术和行业成就,Alistair Cockburn还以其独特的幽默感和迷人的演讲风格而闻名于同行。他的经验和见解使他成为了软件开发领域的权威人物,受到了业界的广泛赞誉和尊重。

2023-11-17 20:47:07 805

原创 领域驱动设计涉及的概念

一、领域、子域。

2023-11-17 20:33:37 93

原创 数据架构与数据模型

待定。

2023-11-12 16:10:26 293

原创 架构问题自查

识别和理解业务需求,可从业务全局角度,对需求进行建模设计可在指导下阅读和理解需求文档、参与需求评审会并可理解需求内容(参与需求分析/评审的相关邮件,会议纪要等)可阅读和理解需求文档、参与需求评审会并可理解需求内容(参与需求分析/评审的相关邮件,会议纪要等)可阅读和理解需求文档,并结合已有功能评估新需求关联性及影响、参与需求评审会并可提出意见和建议(参需求关件,需求审相关要证明等)需求分析方法论、行业分析报告、竞品分析报告1、业务专业词汇问答了解2、业务专业场景问答了解。

2023-11-12 14:21:38 542

原创 jenkins流水线

1、二、三、四、五、六、

2023-11-05 16:41:58 140

原创 docker安装minio

一、下载镜像二、启动。

2023-11-04 14:45:15 35

原创 docker命令使用

一、查看docker版本。docker默认安装目录。

2023-11-04 13:17:44 114

原创 加锁常见的问题

下面add()方法加了锁的,但是compare()方法中还是会出现a!必须要考虑锁的范围。

2023-10-06 18:08:34 79

原创 并发工具类库使用的常见问题

由于ThreadLocal是和线程绑定的,如果线程被复用了,也即使用了线程池,那么ThreadLocal中的值是可能被复用的,这个特性如果是开发者没有预料到的,那么会产生很大的问题。例如,在JAVA web应用中,我们通常会使用很多ThreadLocal来保存一次请求的不同上下文信息,其中就包含登录用户,如果一次请求完成后,没有清理掉当前登录用户信息,那么当另外一个用户的请求进来,就会使用上一个用户,如果是涉及到数据写入,将直接导致数据错乱,造成严重生产问题。

2023-10-06 16:14:53 284

原创 领域驱动设计

有意思的是,可能因为成书年代过于久远,大多数人并没有读过 Eric 的书,而是凭直觉本能地接受了领域驱动这一说法,或是在实践中跟随周围的实践者学习使用它。所以从某种意义上说,Eric 倡导的领域驱动设计是一种模型驱动的设计方法:通过领域模型(Domain Model)捕捉领域知识,使用领域模型构造更易维护的软件。把模型作为精粹的知识,以用于传递。我们都知道有一个著名的公式“程序 = 算法 + 数据结构”,实际上这也是一种模型驱动的思路,指的是从数据结构出发构造模型以描述问题,再通过算法解决问题。

2023-10-06 15:03:51 101

原创 集合类中的反常规特性

世界上所有程序只在做一件事情:处理数据。而数据是需要结构来承载,数据结构由此而来,常见的数据结构包括 List、Set、Map、Queue、Tree、Graph、Stack 等,其中 List、Set、Map、Queue 可以从广义上统称为集合类数据结构。高级编程语言一般都会提供各种数据结构的实现,供我们开箱即用。Java 也是一样,比如提供了集合类的各种实现。Java 的集合类包括 Map 和 Collection 两大类。

2023-10-06 10:44:15 87

原创 Spring Boot-3-AbstractApplicationContext

同时,一个名为applicationEventMulticaster的multicaster在context中以bean的形式提供,并提供默认实现SimpleApplicationEventMulticaster。AbstractApplicationContext是application context的第一个实现者,还是被定义为抽象的,之所以定义成抽象的,是因为他不必、不允许被实例化,不能直接被其他类聚合(他的子类可以)。这些都在context里被定义为bean了。始自2001年1月21日。

2023-09-13 00:37:11 200

原创 JAVA项目建模之包目录结构

对于API,分为2种,一是提供API给外部调用,二是调用外部API,我们通常会封装好这2部分内容,针对提供给外部调用的接口,命名为。调用外部接口的内容,命名为。

2023-09-07 23:50:09 130

原创 编程行业专业术语

编程方法论是指软件开发中一系列编程的规则、步骤和技巧,旨在提高软件的可维护性、可复用性、可扩展性和可读性1。此外,编程方法论还包括面向过程、面向对象、面向函数等。

2023-09-06 23:19:28 273

原创 Spring之HandlerInterceptor和RequestBodyAdvice

拦截器的拦截逻辑是在org.springframework.web.servlet.DispatcherServlet中写的,需要注意的是,如果入口拦截顺序是a->b->c的话,那么出口拦截顺序是c->b->a,这个逻辑可以看org.springframework.web.servlet.HandlerExecutionChain里的一段逻辑。这里能很清晰的看到循环使用的次序。

2023-08-30 22:18:04 546

原创 yarn是什么

与npm类似,Yarn也可以用于安装、更新和删除JavaScript软件包。但相比于npm,Yarn在性能和安全性方面有一些优势。它使用并行下载和缓存机制,可以更快地安装依赖项。此外,Yarn还提供了更严格的版本锁定机制,以确保在不同环境中安装的软件包版本一致。它是由Facebook、Google、Exponent和Tilde共同开发的,旨在提供更快、更可靠的软件包安装和依赖关系管理。要使用Yarn,首先需要安装Node.js,然后在命令行中运行。命令来全局安装Yarn。安装完成后,可以使用。

2023-08-10 08:53:02 172

原创 node-sass是什么

是一种CSS预处理器,它扩展了CSS的功能并提供了更强大的样式表语言。Sass允许开发人员使用变量、嵌套规则、混合(Mixins)、继承等高级功能来编写更简洁、可维护的样式代码。Sass有两种语法格式:Sass(使用缩进)和SCSS(使用大括号和分号)。Sass语法更加简洁,没有大括号和分号,而SCSS语法更接近于常规的CSS语法,更容易学习和使用。使用Sass可以提高CSS的开发效率,减少重复的代码,增加代码的可读性和可维护性。Sass还提供了许多内置的函数和混合,可以帮助开发人员更方便地处理样式。

2023-08-09 23:46:34 4144

原创 Jenkins配置流水线

这个任务名称将会是Jenkins的workspace路径下的一个目录,如我建立了一个test任务,那么Jenkins会生成一个/jenkins_home/workspace/test目录,用来拉取代码编译等。所以请谨慎设置任务名称。

2023-08-02 00:11:13 183

原创 Mac plist文件

对于普通用户来说,基本不用管plist文件是什么,因为这个是应用程序开发者使用的。对于资深苹果使用者来说,可能需要修改应用属性或者破解软件时可能会用到。macOS、iOS、iPadOS的应用程序都可能会有plist配置文件,他是苹果系列操作系统特有的配置文件。plist的本质是个xml格式的文本文件,英文全称是property list,文件后缀使用.plist。

2023-07-30 17:55:50 1855

原创 Nginx配置实例

按照请求的资源,顺序检查资源是否存在,返回第一个找到的资源,如果没有找到请求的资源,则会使用最后一个参数进行内部重定向。会先找/a/b,没有找到,然后nginx就返回default.gif,此时浏览器地址栏上还是显示的/a/b。例1:www.example.com/a/b (假设资源不存在)

2023-07-25 12:41:49 141

原创 Linux用户和用户组

Linux是多用户、多任务操作系统一般来说,一个服务分配一个用户,这个用户只拥有这个服务相关文件的相关权限,如果用户不需要登陆,连密码都可以不分配,一般来说,非法分子都是获取当前进程的的权限来攻击服务器,而不是取得某个用户的用户名和密码。

2023-07-19 00:50:59 451

原创 Docker部署应用

docker run --name myApp -d -p 9000:8000 -v /home/a/b/logs:/logs -v /etc/localtime:/etc/localtime:ro 挂在目录,宿主目录:容器目录,后面的挂在使得容器使用宿主机的时间,ro表示只读。其中-f就是用来指定Dockerfile路径的,如果Dockerfile就在当前路径下,可以不用写-f /home/a/b/Dockerfile。docker run --name myApp 指定容器名称。三、Dockfile。

2023-07-14 01:01:22 176

原创 Spring接口受请求header影响

一般后端接口都是返回json数据,其中前端用的Accept=application/json,如果是接受的是数据流,Accept=text/event-stream,Spring会根据请求的Accept类型来决定如何响应数据。如果是流,你响应的数据只能是String。如果请求头中有Accept=text/event-stream,Spring会读取到这个值,然后走对应流程,往流中写入String类型数据,此时如果后端返回的是一个类型A,期望对象a转换成json串,就会报错类型A无法转换成String。

2023-07-13 21:35:07 55

原创 nginx配置获取真实ip

注意这个顺序,set设置要发往下一站的变量,紧接着写变量的取值。要想在应用中获取到真实IP,取决于各个转发节点的传递配置,第一、要确定客户端使用哪个请求头传递IP地址。field是变量名,是要发给下一站的变量。value是变量值,来源于请求方。

2023-07-12 23:44:21 2272

原创 MySQL创建用户

数据库用户需要有权限区分,必须创建独立的账户。

2023-07-11 22:23:16 430

原创 Nginx配置文件

其中,这里并不是真的启动一个服务,是一个逻辑服务,是去匹配来请求服务的路径,listen是匹配请求者访问了什么端口,server_name是匹配请求者用了什么域名,location是将匹配上的请求转发到哪个地方去,proxy_pass的值是下游,或者叫转发目的地的域名。

2023-06-30 08:51:25 159

原创 对接百度文心一言

一、接口地址。

2023-06-28 23:38:40 436

原创 Jenkins安装

>或2>&1作用:同时将错误信息、普通信息一并重定向输出到指定文件,会覆盖。1、下载war包并上传到服务器/usr/local/jenkins目录。2、设置Jenkins工作目录,需要使用环境变量设置。末尾的& 表示后台运行。

2023-06-08 23:22:23 902

原创 安装docker

安装 Docker 软件后,您可以直接通过 docker pull 命令拉取镜像。如您未配置镜像加速源,直接拉取 DockerHub 中的镜像,通常下载速度会比较慢。为此,我们推荐您使用腾讯云 Docker 镜像源加速镜像下载。不同操作系统的详细操作步骤略有区别,请使用对应的操作步骤进行配置。执行以下命令,打开 /etc/docker/daemon.json 配置文件。执行以下命令,重启 Docker 即可。示例命令以 CentOS 7 为例。按 i 切换至编辑模式,添加以下内容,并保存。

2023-06-08 09:05:51 86

原创 Linux系统分类&yum&apt-get

一、Linux系统主要可以分为2大类:1、RedHat系列:RedHat、Centos、Fedora等2、Debian系列:Debian、Ubuntu等。

2023-06-07 23:26:16 157

原创 Spring Retry-01

到了这里就涉及到Spring框架了,其中MethodInterceptor是Spring引入aop联盟的接口,用来封装方法增强的逻辑。MethodInterceptor只提供了一个方法invoke(),实现这个方法的人只需要加上自己的增强逻辑后再调用参数的Methodinvocation,执行被增强的逻辑即可。Spring新建了一个类RetryTemplate来封装增强的逻辑,可以看看这个类中最里面的逻辑doExecute()方法,里面有个while循环就知道是重试的核心。

2023-06-02 20:56:19 108

原创 idea 注入mapper报错报红的几种解决方案

1、mpper接口上加上@Repository注解。2、使用@Resource。

2023-06-02 20:08:36 750

原创 微信服务号对接相关

access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。

2023-05-03 14:23:11 680 1

原创 Vue.js学习-3-监视属性

有时需要观察某些属性的变化而触发一些操作,此时就可以通过在watch属性里配置观察对象和对应handler()

2023-04-26 23:45:05 65

spring-framework-1.0-m1.zip源码

Spring1.0,2003-08-30

2021-06-03

《Java开发手册o》v1.5.0 华山版.pdf

阿里巴巴编程规约华山版

2021-05-24

炼数成金 MySQL数据库运维全套视频教程 阿里巴巴DBA讲授

专业运维维护MySQL,阿里巴巴DBA讲述,专业线上生产环境讲述,非玩具。

2019-03-17

SpringCloud实战房地产项目

SpringCloud架构微服务视频教程,实战房地产项目,前端后台都有。

2019-03-16

尚硅谷git&GitHub;视频百度网盘

尚硅谷git&GitHub;视频百度网盘,git命令行使用,github操作等。

2019-03-16

StartUML V3.0.1-V2.8.1

StartUML官方安装包,V2.8.1,V3.0.0,V3.0.1,三个版本下载,百度云地址

2018-07-22

editplus v3.5

最新版官方editplus,包括注册码一起奉上

2013-05-29

依信破解补丁

补丁可以让e信分享成功,将补丁装入netkeeper\bin目录下就ok了

2013-03-16

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

TA关注的人

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