自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring Boot 整合 Freemarker,50 多行配置是怎么省略掉的?

[干货|最新版 Spring Boot2.1.5 教程+案例合集](()[](()Freemarker 简介========================================================================这是一个相当老牌的开源的免费的模版引擎。通过 Freemarker 模版,我们可以将数据渲染成 HTML 网页、电子邮件、配置文件以及源代码等。Freemarker 不是面向最终用户的,而是一个 Java 类库,我们可以将之作为一个普通的组件嵌入到我.

2022-05-05 18:17:32 280

原创 Spring Boot 2

分别创建两个数据源的JPA配置。Primary数据源的JPA配置:@Configuration@EnableTransactionManagement@EnableJpaRepositories(entityManagerFactoryRef=“entityManagerFactoryPrimary”,transactionManagerRef=“transactionManagerPrimary”,basePackages= { “com.didispace.chapter38.p” }.

2022-05-05 18:10:27 505

原创 shell进阶--信号,finish函数

[](()1.各种信号1信号SIGHUP:hub 进程重新读取对应的配置文件(不重启计算机,就可以生效)2信号SIGINT :中断------ctrl+c 就会触发该信号int3信号SIGQUIT:从键盘上杀死进程的信号 ctrl+\ 也就是发送QUIT信号(只对终端内的进程有效)9信号SIGKILL:必杀信号,强制杀死进程(无法捕捉信号),KILL信号不做善后,例如:临时清理文件,刷新磁盘等15信号SIGTERM:终止进程,(安全),有善后18信号SIGCONT:让进程从stopped状态恢

2022-05-05 18:08:16 401

原创 shell写一个自动遍历服务器的脚本

expect “*]#” {send " echo “hostname: hostname” \r"} //查看主机名expect “*]#” {send “df -h\r”} //查看磁盘expect “*]#” {send “df -h|awk 'BEGIN{OFS=”\t"}{if($5>11){print }}'\r"} //第五个参数大于11的数据send “exit\r” //退出ex 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威

2022-05-05 18:06:23 746

原创 Redis(三十三)

关于被导入的数组,是会被记录在目标节点的importing_slots_form数组中的,这个数组是一个clusterNode数组,是用来记录当前节点正在从哪些节点导入槽typedef struct clusterState(//…clusterNode *importing_slots_from[16384];//…)clusterState;可以看到这是一个clusterNode数组,但容量却是16384,对应的是槽的数量,使用索引i记录槽举个栗子假如importing_slots_fr

2022-05-05 18:02:49 609

原创 Redis系列笔记之 —— 键

单位秒。设置 key 的过期时间以毫秒计PEXPIRE key milliseconds和 EXPIRE 类似EXPIREAT key timestampEXPIREAT 的作用和 EXPIRE 类似,都用于为 key 设置过期时间。 不同在于 EXPIREAT 命令接受的时间参数是 UNIX 时间戳(unix timestamp)。和 EXPIRE 类似PEXPIREAT key milliseconds-timestamp设置 key 过期时间的时间戳(unix timest

2022-05-05 18:00:18 191

原创 RabbitMQ的高级特性和消息补偿机制

#####消息成为死信的三种情况:1.队列消息长度到达限制;2.消费者拒接消费消息,并且不把消息重新放入原目标队列;3.原队列存在消息过期设置,消息到达超时时间未被消费;#####死信队列和死信交换机:死信队列和死信交换机与正常的队列和交换机一模一样, 没有任何区别 !!如何实现队列与死信交换机绑定 , 给队列设置如下参数:x-dead-letter-exchange : 设置死信交换机x-dead-letter-routing-key : 设置死信路由key5. 延迟队列消

2022-05-05 17:56:15 311

原创 “我骑着我心爱的小摩托,他又在这里翻车了

第2章微框架Spring BootSpring Boot是一个Spring框架模块,它为Spring框架提供RAD(快速应用开发)功能。它高度依赖于启动器模板功能,该功能非常强大且完美无缺。Spring Boot同样也是Spring Cloud的重要组成部分。第3章从服务注册与发现说起在微服务中,消费者为了完成一次服务请求,需要知道具体服务的详细地址(IP和端口)。传统应用都运行在物理服务器上,服务实例的网络位置都是相对固定的。怎样从一个经常变更的配置中读取网络位置尤为重要。第4章服务提供者与.

2022-05-04 14:23:07 134

原创 Windows10桌面美化推荐之Dock栏

一款国产桌面工具栏,颜值高,动画流畅,占用小,并且有许多实用功能。喜欢苹果桌面的可以试试,用了之后桌面确实好看且简洁多了BitDock支持鼠标拖曳方式来自定义添加程序或是资料夹。它还拥有天气预报/搜索/截图/取色/日历时钟 / 天气等 20+桌面插件…众多丰富功能满足你各种需求,其出色的体验,赢得了广大用户的好评!轻松更改Dock的外观,可独立设置自定义图标(支持ICO/PNG/JPG/SVG/动态GIF/静态GIF/BMP等图标格式)。也可以设计更具个性的Dock皮.

2022-05-04 14:21:15 8726 1

原创 Visual Studio安装程序中的背景图绿帽子摊上事了?

评论中有人支持这位BUG提出者,事实上, @EdiWang这位哥们只是向微软提建议,不知道为啥传回国内就变成提BUG了,一位名为 AnduinXue的哥们表示:我发现大多数评论非常消极。难道你还不明白@Edi Wang只是向Visual Studio团队提出建议吗?而不是决定。关于问题本身,是微软考虑并接受了它。对于Microsoft而言,任何反馈意味着对国际产品的贡献。任何建议都应予以考虑。然而,这个被接受了。也许看起来很荒谬但对微软来说确实有意义。所以停止毫无意义的争论。贡献总是积极的,这个没有任何

2022-05-04 14:19:10 1173

原创 UML—静态图(类图

1、概念:用于定义系统中的类,包括描述类的内部结构和类之间的关系。类图主要用于描述系统的静态结构。2、组成:类、接口、 协作、依赖关系、泛化关系、实现关系以及关联关系。1)类:类是面向对象系统组织结构的核心。类是对一组具有相同属性、操作、关系和语义的对象的描述。在UML中,类用矩形来表示,并且该矩形被划分为3个部分:名称部分(Name)、属性部分(Attribute)和操作部分(Operation,也可以称为方法)2)接口:接口是在没有给出对象的实现和状态的情况下对对象行为的描述。接口包含操作但不包

2022-05-04 14:17:33 2645

原创 Swin Transformer对CNN的降维打击

Resolution:假设一张图像的分辨率为224x224,这里所说的224就是像素。Patch:所谓的Patch就是由多少个像素点构成的,假设一个patch的size为4x4,则这个patch包含16个像素点。Window:window的size是由patch决定的,而不是由像素点,假设window的size为7x7,则该window包含49个patch,而不是49个像素点。在对swin-transformer网络进行讲解之前,我们首先需要明确一点:无论是transformer还是s..

2022-05-04 14:15:41 807

原创 svn重设日志内容 及 如何修改SVN已提交项目的message log

svn propset PROPNAME [PROPVAL | -F VALFILE] PATH…svn propset PROPNAME --revprop -r REV [PROPVAL | -F VALFILE] [TARGET][](()[](()描述设置文件、目录或者修订版本的属性PROPNAME为PROPVAL。第一个例子在工作副本创建了一个版本化的本地属性修改,第二个例子创建了一个未版本化的远程的对版本库修订版本的属性修改(TARGET只是用来确定访问哪个版本库)。提示Subver

2022-05-04 14:13:04 969

原创 StringBuilder简介,你都知道多少?

stringBuilder.append(‘W’);System.out.println(stringBuilder1);// cnm1true3.14W 等同于stringbuilder}}1234567891011121314151617181920StringBuilder可以和String进行相互转换============================String --> StringBuilder:可以使用StringBuilder的带参构造方法StringBuilder

2022-05-04 14:11:33 222

原创 Spring系列第7篇:依赖注入之手动注入

constructor-arg用户指定构造器的参数type:构造函数参数的完整类型,如:java.lang.String,int,doublevalue:构造器参数的值,value只能用来给简单的类型设置值案例diByConstructorParamType.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns=“http://www.springframework.org/sc.

2022-05-04 14:09:33 515

原创 Spring精讲:什么是BeanFactory?

我们可以看到DefaultListableBeanFactory实现的接口有:SingletonBeanRegistry: 定义了对单例缓存池相关的操作,如将bean注册到单例缓存池中ConfigurableBeanFactory: 可配置的BeanFactory,定义了各种各样的配置能力,如bean的作用域,bean的classLoader,添加bean的后置处理器,设置bean的创建状态,销毁bean等等AutowireCapableBeanFactory: 能进行自动装配的Bean.

2022-05-04 14:07:31 390

原创 SpringMVC源码剖析-SpringMVC执行流程

}}return null;}public final HandlerExecutionChain getHandler(HttpServletRequest request) throws Exception {//找到HandlerObject handler = getHandlerInternal(request);if (handler == null) {handler = getDefaultHandler();}if (handler == null) {return

2022-05-04 14:05:50 340

原创 更新了SpringBoot版本, SpringBootAdmin的Httptrace不见了

这两天突然发现SpringBootAdmin监控页面左侧菜单的Web-HttpTraces不见了;直接访问端点http://ip:port/../httptrace,404了,莫名其妙哦(๑°3°๑)[](()Analysis印象里关于监控这里,最近没什么改动,除了一次SpringBoot版本的升级。。去SpringBoot仓库的Issue查看,发现了这一条:[Consider disabling management.trace.http by default](()再去看官方文档:[https:

2022-05-03 17:20:20 294

原创 数论-扩展欧几里得算法

int d=exgcd(b, a%b, y, x);y -= a / b * x;return d;}}int main(){int n;cin >> n;while (n–){int a, b, x, y;cin >> a >> b;exgcd(a, b, x, y);cout << x << " " << y << endl;}return 0;}[](()4.AcWing 878.

2022-05-03 17:11:42 119

原创 数据库隔离级别有哪些,各自的含义是什么,MYSQL默认的隔离级别是是什么

那怎么解决脏读呢?Read committed!读提交,能解决脏读问题。Read committed读提交,顾名思义,就是一个事务要等另一个事务提交后才能读取数据。事例:程序员拿着信用卡去享受生活(卡里当然是只有3.6万),当他埋单时(程序员事务开启),收费系统事先检测到他的卡里有3.6万,就在这个时候!!程序员的妻子要把钱全部转出充当家用,并提交。当收费系统准备扣款时,再检测卡里的金额,发现已经没钱了(第二次检测金额当然要等待妻子转出金额事务提交完)。程序员就会很郁闷,明明卡里是有钱的…分析:.

2022-05-03 17:09:47 237

原创 数据库引擎InnoDB与MyISAM区别

1.是否支持行级锁:MyISAM 只有表级锁(table-level locking),而InnoDB支持行级锁(row-level locking)和表级锁.默认为行级锁。2.是否支持事务和崩溃后的安全恢复: MyISAM强调的是性能,每次查询具有原子性.其执行速度比InnoDB类型更快,但是不提供事务支持。但是InnoDB提供事务支持事务,外部键等高级数据库功能。具有事务(commit)、回滚(rollback)和崩溃修复能力(crash recoverycapabilities)的事务安全(tr

2022-05-03 17:08:11 151

原创 数据库 高频面试题

[](()1.2 数据定义语言删除数据库DROP DATABASE [IF EXISTS] 数据库名;删除表DROP TABLE [IF EXISTS] 表名注意:IF EXISTS 最好要加上,因为如果删除不存在的数据表会抛出错误修改表(ALTER TABLE)添加字段 : ALTER TABLE 表名 ADD 字段名 属性删除字段 : ALTER TABLE 表名 DROP 字段名修改表名 :ALTER TABLE 旧表名 RENAME AS 新表名修改字段 :A

2022-05-03 17:06:12 105

原创 推荐一款Java开发的精美个人博客

好了,闲聊就到这里了,现在来聊聊正事,今天想了很久给大家分享一些什么呢,想来想去,最后,还是觉得给大家分享一些有价值的东西,说实话,前段时间由于个人原因,时间实在是在紧张了,很久都没有好好的坐下来写文章,还好,现在总算是繁忙的日子暂时告一段落了,以后会经常给大家分享我的原创文章。想必大家都有博客,不管是一些大的官方的博客,还是个人博客,作为技术人员,博客是一种很好的记录个人技术成长的平台,我也是从大学开始就爱上了写博客,也正是大学养成的习惯,才让我现在有给大家分享的机会,其实,做公众号,也是在写博客,记.

2022-05-03 16:59:34 509

原创 接口文档:第二章:使用Swagger接口的文档在线自动生成

给model的字段添加注释*/private void addFieldJavaDoc(Field field, String remarks) {//文档注释开始field.addJav 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 aDocLine(“/**”);//获取数据库字段的备注信息String[] remarkLines = remarks.split(System.getProperty(“line.

2022-05-03 16:57:16 275 1

原创 手撕线程池 ThreadPool

worker.start(); //线程执行执行任务workers.add(worker) ;} else { //如果我们的任务数 > coreSize , 直接加入任务队列taskQueue.put(task);System.out.println(“加入任务队列 :” + task);}}}public ThreadPool(int coreSize, long timeout, TimeUnit timeUnit,int queueCapacity) {this.c

2022-05-03 16:55:36 317

原创 性能优化还不会?吃掉这五个类别,摆平性能优化

4. 延后 / 惰性处理延后 / 惰性处理策略和前面说的预先 / 提前处理正好相反。就是尽量将操作(比如计算),推迟到必需执行的时刻,这样很可能避免多余的操作,甚至根本不用操作。运用这一策略最有名的例子,就是 COW(Copy On Write,写时复制)。假设多个线程都想操作一份数据,一般情况下,每个线程可以自己拷贝一份,放到自己的空间里面。但是拷贝的操作很费时间。系统如果采用惰性处理,就会将拷贝的操作推迟。如果多个线程对这份数据只有读的请求,那么同一个数据资源是可以共享的,因为“读”的操作不会改变这

2022-04-29 18:22:04 811

原创 微服务框架的介绍

互联网刚刚诞生时,服务器成本较高,访问流量也不多,所有的程序被放到一起,然后发布到一台服务器上。从上图可以看出,所有应用程序都被放到一起,将所有功能都部署在一起,大大减少了部署节点和成本,同时还减少了输入/输出(I/O)的操作,降低了网络通信的成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是影响项目开发的关键,而这种框架被我们成为ORM框架。存在的问题:代码耦合,开发维护困难无法针对不同模块进行针对性优化无法水平扩展单点容错率低,并发能力差[](()2. 垂直

2022-04-29 18:20:29 415

原创 微服务架构:成为架构师的第一步,就是先要搞清楚什么是架构设计

微服务和SOA有什么不同?**微服务实践:**是从更加强调分布式和scalability的互联网场景下演化出来的更加敏捷,去中心化的服务框架。 另外 SOA本身也在演进,所以微服务和SOA之间一条清晰的界限是没有的。所以这里只比较传统(最早由IBM,BEA等公司实现的)的SOA和微服务框架之间的区别。**微服务关键词:**高内聚低耦合,敏捷,去中心化,自动化。微服务和SOA有什么不同?微服务实施要点微服务架构介绍一个典型的微服务逻辑架构基于K8S容器集群的微服务架构亚马逊的服务化

2022-04-29 18:18:22 340

原创 应“云”而生的 Java 框架

./mvnw package -Pnative部分构建日志:[INFO] — maven-jar-plugin:2.4:jar (default-jar) @ quarkus-getting-started —[INFO][INFO] — quarkus-maven-plugin:1.13.0.Final:build (default) @ quarkus-getting-started —[INFO] [org.jboss.threads] JBoss Threads version 3.2.0

2022-04-29 18:13:28 1427

原创 学习Dubbo-带你通过源码看看dubbo对netty的使用

1 public void connected(Channel channel) throws RemotingException {2 ExecutorService executor = getExecutorService();3 try {4 executor.execute(new ChannelEventRunnable(channel, handler, ChannelState.CONNECTED));5 } c

2022-04-29 18:09:19 1092

原创 字节跳动薪酬体系曝光,我承认我酸了

如何像字节跳动一样能够做好薪酬体系?在有限的预算下,如何更合理的支配薪酬、有效的激励核心骨干员工?这个问题恐怕七八年工作经验的HR也不一定答得上。由此可见,字节跳动待遇在行业内可以说相当高,高薪资意味着高门槛,很多人说想去字节做JAVA开发,一般人想要进入字节并不是那么容易的。即使你是一流大学毕业,与你同样水平的竞争者也层出不穷,在众多的竞争者中脱颖而出没有必然成功的方法,但努力过,肯定几率会更大。许多人迫切需要跳槽涨薪,但苦于没有系统的进阶提升学习方法,这里免费分享一份GitHub 上标星 120

2022-04-29 18:07:45 1946

原创 大话spring

MANDATORYNEVERNOT_SUPPORTEDSUPPORTSREQUIRED(默认)REQUIRES_NEWNESTED所以,这个面试题的答案就是:“2个事务性的方法,一个调用另一个,由于事务传播的默认值是REQUIRED,则表现为:如果当前无事务,则创建,如果当前有事务,则使用”,为了完善我的答案,我还继续补充了:“如果将@Transactional注解的propagation属性配置为其它值,则会不同”。当我非常流利的把我脑中的答案说完之后,面试官..

2022-04-29 18:03:36 75

原创 大数据入门(五)-分布式计算框架MapReduce

海量数量离线处理易开发易运行[](()缺点实时流式计算[](()2 MapReduce编程模型==============================================================================[](()wordcount词频统计[](()MapReduce执行流程============================================================================将作业.

2022-04-29 18:02:03 87

原创 基于JSP实现网上招聘系统

[](()[6.2](() 注册模块用户可以通过注册界面填写自己的信息。但是要遵循一定的规则。在用户填写注册信息的同时,系统前台会检查用户输入信息的合法性,比如必填信息是否填全,信息长度是否在规定范围内等。前台检查完毕后,后台会根据用户输入的用户名在数据库中检索,如果该用户名已存在,便让用户重新输入新的用户名;如果不存在,则注册成功,跳转到登陆界面。注册模块的活动图如图6-3所示。图6-3 注册模块活动图个人信息注册界面如图6-4所示。图6-4 个人信息注册界面[6.3](() 信息修改模

2022-04-28 16:08:11 270

原创 基于 java springboot+mybatis二手网站系统设计和实现

个人信息查看和修改后台管理:后台管理员主要对前端客户端一些用户的管理、商品的管理、轮播图管理、商品分类管理以及订单信息和订单流程管理轮播图配置商品分类以及排序等操作商品管理和上下架等具体操作package ltd.newbee.mall.controller.admin;import ltd.newbee.mall.common.ServiceResultEnum;import ltd.newbee.mall.controller.vo.NewBeeMallOrderItemVO;

2022-04-28 16:06:23 1523

原创 因为一次Kafka宕机,我明白了Kafka高可用原理

逻辑模型Broker(节点):Kafka服务节点,简单来说一个Broker就是一台Kafka服务器,一个物理节点。Topic(主题):在Kafka中消息以主题为单位进行归类,每个主题都有一个Topic Name,生产者根据Topic Name将消息发送到特定的Topic,消费者则同样根据Topic Name从对应的Topic进行消费。Partition(分区):Topic(主题)是消息归类的一个单位,但每一个主题还能再细分为一个或多个Partition(分区),一个分区只能属于一个主题。主题和.

2022-04-28 16:02:28 415

原创 啃完这份阿里首席架构师独家发布“微服务笔记”我竟轻松面进字节

小编接下来分享的这份学习笔记将以图片的形式展现出来,小编会阐述详细的知识小结。一、Spring Cloud概述================本章将会简述 Spring Cloud 的功能,描述什么是 Spring Cloud ,它能为我们带来什么,为后面学习该框架的知识打下理论基础。传统的应用架构演进架构要求学习方面的准备工作下载本书的软件及源码导入本书的案例微服务与Spring CloudSpring Cloud与Netflix什么是微服务S

2022-04-28 15:59:59 70

原创 史上最全Java8日期时间工具类

public static final String MONDAY = “星期一”;/**星期二;*/public static final String TUESDAY = “星期二”;/**星期三;*/public static final String WEDNESDAY = “星期三”;/**星期四;*/public static final String THURSDAY = “星期四”;/**星期五;*/public static final St

2022-04-28 15:55:15 454

原创 单例模式双重检查锁定与延迟初始化你不得不知道的底层原理

public Instance() {System.out.println(“init…”);}}package com.lizba.p1;/** 延迟初始化@Author: Liziba@Date: 2021/6/12 22:40*/public class UnsafeLazyInitialization {private static Instance instance;public static Instance getInstance() {

2022-04-28 15:50:54 244

原创 分别用Js和vue实现跑马灯效果

② 获取标签的文本内容③ 截取文本内容的第一个字④ 截取文本内容第一个字后面的所有内容⑤ 把第③步截取的第一个字拼接到第④步截取的文本内容后面⑥ 将第⑤步拼接后的字符串写入到第①步的标签中代码实现:纯js实现跑马灯效果欢迎访问扬帆向海的博客!!!动起来停下来测试效果:注意:① setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。setTimeout()方法接收两个参数,第一个参数是将要推迟执行的函..

2022-04-28 15:44:28 1300

空空如也

空空如也

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

TA关注的人

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