自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(48)
  • 资源 (7)
  • 收藏
  • 关注

原创 Spring依赖注入原理与最佳实践

通过本文,我们深入探讨了Spring依赖注入的原理和最佳实践。依赖注入作为一种重要的设计模式,可以帮助我们管理组件之间的依赖关系,降低耦合度,提高代码的可维护性和可测试性。在实际开发中,选择合适的注入方式并遵循最佳实践,将有助于构建高质量的、易于维护和测试的软件系统。希望本文能够帮助开发者更好地理解和应用Spring依赖注入,提升开发效率和代码质量。

2024-02-04 15:25:44 721

原创 MySQL索引解析与B-tree工作原理

通过本文,我们详细介绍了MySQL的默认索引方法以及B-tree索引的工作原理。对于初级软件开发者来说,理解索引的概念以及不同类型的索引如何影响数据库性能是非常重要的。希望这篇文章能够帮助你更好地应用索引概念到实际的软件开发中,提高数据库操作的效率。如果你对这个话题有更多的疑问或者想要分享自己的经验,欢迎在评论区留言。

2024-02-04 10:24:37 580

原创 Java注解与策略模式的奇妙结合:Autowired探秘

在实际的软件开发中,我们经常会遇到需要根据不同的业务规则来执行不同的校验逻辑。为了更好地组织这些业务规则的校验,我们引入了策略模式。而为了使得策略的选择更具灵活性,我们选择使用注解来标识和管理这些策略。通过本次播客,我们学习了如何使用注解与策略模式相结合的方式,构建一个灵活而强大的策略规则工厂。这种设计不仅使得我们的代码更加清晰,还提高了系统的可维护性和可扩展性。对于刚入门的软件开发者来说,这种设计模式可能刚开始会有些陌生,但通过不断的实践和理解,你将逐渐发现它的魅力。

2024-02-02 16:14:21 750

原创 探秘Java 8 Lambda:简洁高效的集合操作

大家好,欢迎来到今天的播客节目!我是你们的主持人,也是一位资深的软件开发者。在今天的节目中,我们将一起深入探讨Java 8中Lambda表达式的妙用,结合实例演示,帮助大家更好地理解并应用于实际的软件开发中。

2024-01-31 15:16:33 616

原创 畅享阅读乐趣,探索精彩世界——推荐电子书网站

总的来说,https://nmbtngeg9486.github.io/ebook/ 是一个值得推荐的电子书网站,它不仅提供了丰富多样的阅读资源,而且通过简洁便捷的界面和免费的服务,让阅读成为每个人都能轻松获得的乐趣。而在众多电子书网站中,https://nmbtngeg9486.github.io/ebook/ 脱颖而出,以其丰富的资源和便捷的使用体验,成为阅读爱好者们的不二选择。令人惊喜的是,这里的图书涵盖了丰富的语言,让全球读者都能找到适合自己的阅读材料。

2024-01-25 17:20:59 397

原创 MySQL的DATE_FORMAT函数

需求1:让你通过MySQL订单表,统计一下双11那天,这两位每小时的购买订单成交数;你会怎么写这条SQL呢?记得几年前我刚接触MySQl,年少轻狂,在得知不用考虑效率的情况下,我写了个接口循环二十四遍,发送24条SQL去查(捂脸),由于那个接口,被技术经理嘲讽~~表示他写的SQL比我吃的米都多。虽然我们山东人基本不吃米饭,但我还是羞愧不已。。然后经理通过调用一个DATE_FORMAT函数分组查询处理一下,就ok了,效率是我的几十倍吧。从那时起,我暗自计划要深入研究SQL技巧。

2023-06-06 15:43:33 333

原创 在 SourceTree 中使用 rebase (win10)

切换到master分支,拉取dev1的代码(目的是保证dev1是最新的代码,你要是能确保刚刚提交的dev1就是最新代码,不拉取也行,但是你通常保证不了,因为别人也可能在你dev1推送远端后又push代码了)切换到dev2分支,做一些修改并提交dev2-1(主要是模拟冲突的解决)切换到master分支拉取master、dev2 的最新的代码。切换到dev1 分支,进行变基操作,右击master分支。切换到master分支,拉取master最新的代码。切换到master分支,拉取最新的代码。

2023-05-04 17:54:10 970

原创 物流行业上下游情况

例如,上游企业可以通过与下游企业的合作,来减少库存和物流成本,提高产品销售和客户满意度;总之,物流行业上下游之间的关系密切,彼此之间的合作和协同将会促进整个物流行业的发展和壮大。因此,下游企业的销售情况和市场需求,往往会直接影响到物流行业的发展和运作。因此,下游企业的销售情况和市场需求,往往会直接影响到物流行业的发展和运作。在物流行业中,上下游之间的合作和协作,是实现物流运营优化和提高效率的关键。因此,上游企业的生产和供应能力,往往会影响到物流行业的发展和运作。

2023-04-26 11:33:37 1290

原创 ES的嵌套文档的使用

3.查询班级学生信息:查询条件是学生姓名(student_name),学生的入学时间(start_date)倒序进行排序。3.学生的信息有姓名(student_name),学生的入学时间(start_date)2.创建班级索引(class),班级的信息有 班级的名字(class_name)1.场景是班级(class),学生(student)的数据存储。4.学生(student)是班级(class)的嵌套文档。2.插入一个班级,三个学生信息。

2023-04-14 11:55:55 271

原创 java时间戳 10位和13位分别是怎么来的?

本来以为java中有设置可以修改其时间精度,后来在百度上没有找到,就只能采用其它方法来转化,这里提供两种方式来转换。但问题就来了,首先时间yyyy-mm-dd hh:mm:ss格式转换成json会自动转成时间戳,13位的,经过百度得知,原来java的date默认精度是毫秒,也就是说生成的时间戳就是13位的,问题1:为什么会生成13位的时间戳,13位的时间戳和10时间戳分别是怎么来的。而像c++或者php生成的时间戳默认就是10位的,因为其精度是秒。问题2:13位时间戳如何转换成10位时间戳。

2022-12-09 13:44:22 2668

原创 MySQL中Date,DateTime,TimeStamp和Time的解释和区别

以下场景应用及后台取值 用到com.alibaba.fastjson.annotation(fastjson 阿里巴巴开源框架)以及springBoot注解DateDateTimeTimeStampTime。

2022-12-09 11:42:29 646

原创 设置springboot scheduled多线程,解决多个定时任务并发问题

项目上有几个定时任务都是同时间点要执行的,最近发现多个定时任务为单线程排队执行,后来经过查资料发现@schedule注解默认是单线程的,如果定时任务比较多或者有的定时任务比较耗时,会影响到其他定时任务的执行,通过以下方法解决多个定时任务同时并发执行问题。第2种:效果其实和第一种一样第3种:配置文件添加task配置第4种:添加@EnableAsync注解,在相应方法上添加@Async注解注意:该方法会导致,同一个任务,即使上一次执行还未完成,只要时间到,就会再次执行该任务@Async异步

2022-12-07 10:46:06 3752 1

原创 Mysql SQL查询今天、昨天、n天内、第n天的数据

【代码】Mysql SQL查询今天、昨天、n天内、第n天的数据。

2022-12-02 16:32:11 1786

原创 插入排序详解

插入算法的核心思想是取未排序区间中的元素,在已排序区间中找到合适的插入位置将其插入,并保证已排序区间数据一直有序。重复这个过程,直到未排序区间中元素为空,算法结束。首先,我们将数组中的数据分为两个区间,已排序区间和未排序区间。始已排序区间只有一个元素,就是数组的第一个元素。

2022-11-23 16:48:42 164

原创 详解Java数组的四种拷贝方式

Java数组一共有四种拷贝方式: for循环、copyof/copyOfRange、arraycopy和clone。本文将为大家详细介绍一下这四种方式,感兴趣的可以了解一下。

2022-11-23 13:38:38 112

原创 String、StringBuffer、StringBuilder 三者的关系与区别

在Java 编程中会广泛应用到字符串,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。需要注意的是,String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,这样不仅效率低下,而且大量浪费有限的内存空间。为了应对经常性的字符串相关的操作,谷歌引入了两个新的类——StringBuffer类和StringBuild类来对此种变化字符串进行处理。

2022-11-17 15:32:54 403

原创 MySQL 将字符串转换为数字类型并进行排序

需要对接第三方统计系统,并且第三方系统给的数据那真的是一团乱,害,都是泪呀,头发又感觉凉飕飕的;数据有毒,所有的小数都是用 保存的,现在有要对该数据进行排序并展示。示例数据: 表结果与预想的不一样,其实 没有想象中的那么智能,对于 或者是 类型的数据,只会当做字符串进行对待,所以会依次的对字符串中的每一个字符进行排序。如果明确知道 或者是 里面保存的是数字类型,可以在排序的时候将字段转换成数字,并实现想要的排序功能;这里提供三种方法,如果有其他更好的可以互相交流一下。示例数据: 表 会根据

2022-11-16 17:41:58 338

原创 冒泡排序的实现

冒泡排序只会操作相邻的两个数据。每次冒泡操作都会对相邻的两个元素进行比较,看是否满足大小关系要求。如果不满足就让它俩互换。一次冒泡会让至少一个元素移动到它应该在的位置,重复 n 次,就完成了 n 个数据的排序工作。

2022-11-11 15:46:55 92

原创 单向链表的Java实现

单向链表的java实现

2022-11-03 10:32:27 69

原创 vue.directive

自定义指令是对普通DOM元素进行的底层操作,它是一种有效的的补充和扩展,不仅可以用于定义任何的dom操作,并且是可以复用的,例如在图片加载完成前,用随机的背景色占位,图片加载完成后直接渲染出来,用自定义指令可以方便的实现该问题。指令的参数可以是动态的,例如,v-myDirective:[argument]="value"中,argument参数可以根据组件实例数据进行更新。2.3、update:所在组件的vnode更新时调用,但是可能发生在其子vnode更新之前,指令的值可能发生了变化,也可能没有。

2022-09-29 10:38:30 227

原创 Postman脚本变量的使用

【代码】Postman脚本变量的使用。

2022-09-28 15:35:19 255

原创 postman怎么打开console控制台,打印console.log

应用菜单–>View—>Show Postman Console,打印变量的值,就可以在此窗口查看数据。在脚本中使用变量时,要怎么看到变量获取到的值,使用Postman Console去实现的。postman在哪显示console.log日志呢?

2022-09-28 15:33:28 3178

原创 Java服务端获取URL请求参数的几种方法以及接收参数注解说明

id=1000,可以正常得到结果,但是,当我们在浏览器中输入地址:localhost:8080/hello ,即不输入id参数,则会报错。本篇博文将介绍几种如何处理url中的参数的注解@PathVaribale/@RequestParam/@GetMapping。的参数写在Controller相应的方法的形参中,适用于get方式提交,不适用于post方式提交。同样,如果我们需要在url有多个参数需要获取,则如下代码所示来做就可以了。注解来获取URL中的参数时的前提条件是我们知道url的格式时怎么样的。

2022-09-28 15:31:53 14246

原创 吴式太极十三式

4.号步打精:左臂肩、肘、手腺逐一放松,左手至胸前,右手沿臂窝移至左手脉门处,同时放松左腿膀、膝、足,重心移至左腿,成左弓步。4.两手按掌:展手重心稍前移,随着落掌根,放松肩、肘、手、胯、膝、足,两手逐渐落至两胯旁,掌心朝下,重心随之下落。5.展手回捋:向前舒展右臂,双掌同时翻转,右手手心朝下,左手扶于右脉门,重心后移,右手下拇至右胯前。4.合手上步:身体继续左转,展左手同时手心翻转朝下,重心过度到左腿,右手上棚,两手虚合,借势并步。3.翻掌上步:展左手翻转手心朝上,随着松腰左腿向前上步,足根着地。

2022-09-28 11:20:18 256

原创 什么是跨域问题?如何解决?

跨域问题的本质是浏览器为了保证用户的一种安全拦截机制,想要解决跨域问题,只需要告诉浏览器“我是自己人,不要拦我”就行。它的常见实现方式有 5 种:通过注解实现局部跨域、通过配置文件实现全局跨域、通过 CorsFilter 对象实现全局跨域、通过 Response 对象实现局部跨域,通过 ResponseBodyAdvice 实现全局跨域。其实还可以使用Nginx进行反向代理来解决跨域问题。

2022-09-20 15:09:10 233

原创 mysql 替换函数 repalce()

在返回结果中 address只想要详细地址:银河南苑小区8栋二单元909室。address: 四川省绵阳市棉南区银河南苑小区8栋二单元909室。四川省绵阳市棉南区四川省绵阳市棉南区银河南苑小区8栋二单元909室。此时就可以使用mysql的 repalce()进行匹配替换。因为其他的字段省、市、区 已经单独建立字段进行保存了,查询的时候是把省、市、区、address字段拼接起来,如果address 中又包含了省市区那么就会重复。可以嵌套替换 b里面不想要的字段.

2022-09-08 17:46:35 1182

原创 java8的循环遍历

对比起for循环操作list,最大的弊端就是代码太长太乱了,如果涉及3-4张表的操作,也就是涉及多个PO操作,那个括号简直就是俄罗斯套娃,写到最后真的自己都不知道在写什么。在本例子中,原集合就是PO集合,新集合可以自定义映射为成绩集合,同时也可以对新集合进行相关操作。这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。除了forEach操作会改变原集合的数据,其他的操作均不会改变原集合,这点务必引起注意。PO代码​​​​​​​。

2022-09-08 10:23:14 1423

原创 SpringBoot 常用注解

本次课程总结了Spring Boot中常见的各类型注解的使用方式,让大家能够统一的对Spring Boot常用注解有一个全面的了解。

2022-09-07 14:15:39 629

原创 SpringBoot 项目优雅实现 Excel 导入导出功能

由于 Excel 导入与导出样板式代码、校验问题与具体的业务逻辑无关,可以单独抽象出来,我这里在 EasyExcel 的基础上封装了一个 easyexcel-spring-boot-starter 的项目,大大降低了 EasyExcel 上手的门槛,对用户来说只需要使用 EasyExcel 定义的注解提供映射关系就可以了,适用于简单场景的导入导出。除了节约内存,EasyExcel 还简化了 API,通过注解映射 Excel 单元格与对象字段之间的关系,简单的几行代码就能搞定复杂的导入导出功能了。

2022-09-07 10:46:23 398

原创 加密后的数据如何进行模糊查询

我们到这里对加密数据的检索方案全部介绍完了,我们首先提到的是网上搜索随处可见的沙雕做法,在这里也讲了不推荐使用这些沙雕做法,尽量使用常规做法,如果公司有专业算法方向人才的话不妨可以考虑基于算法层面的超神做法。总的来说从投入、产出比、及实现、使用成本来算的话常规做法二是非常推荐的。

2022-09-06 13:34:15 104

原创 this is incompatible with sql_mode=only_full_group_by解决

SELECT列表的表达式#1不在GROUP BY子句中,并且包含非聚合列’test.t_iov_help_feedback.ID’,它在功能上不依赖于GROUP BY子句中的列;mysql 5.7.5版本以上默认的sql配置是:sql_mode=“ONLY_FULL_GROUP_BY”,这个配置严格执行了"SQL92标准"。但是,如果mysql是高版本,当执行group by时,select的字段不属于group by的字段的话,sql语句就会报错。去掉ONLY_FULL_GROUP_BY,重新设置值。

2022-09-05 15:14:07 421

原创 MYSQL 最朴素的监控方式

缓存池使用率为:((Innodb_buffer_pool_pages_total-Innodb_buffer_pool_pages_free)/Innodb_buffer_pool_pages_total)*100%查看 mysql 开关是否打开:show variables like ‘slow_query_log’,ON 为开启状态,如果为 OFF,set global slow_query_log=1 进行开启。每一种都有各自的特色;显示的信息为:执行次数、平均执行时间、SQL 语句。...

2022-08-31 16:32:32 48

原创 建表的15个小技巧

对于后端开发同学来说,访问数据库,是代码中必不可少的一个环节。系统中收集到用户的核心数据,为了安全性,我们一般会存储到数据库,比如:mysql,oracle等。后端开发的日常工作,需要不断的建库和建表,来满足业务需求。通常情况下,建库的频率比建表要低很多,所以,我们这篇文章主要讨论建表相关的内容。如果我们在建表的时候不注意细节,等后面系统上线之后,表的维护成本变得非常高,而且很容易踩坑。今天就跟大家一起聊聊,数据库建表的15个小技巧,希望对你会有所帮助。...

2022-08-31 15:04:19 105

原创 Nacos基本使用

Nacos 致力于帮助开发者发现、配置和管理微服务。它提供了一组简单易用的特性集,帮助开发者快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 具有以下特性:服务发现和服务健康监测:支持基于DNS和基于RPC的服务发现,支持对服务的实时的健康检查,阻止向不健康的主机或服务实例发送请求。动态配置服务:动态配置服务可以让您以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置。...

2022-08-31 14:37:52 290

原创 Java IO 基础知识总结

IO 即,输入和输出。都是以计算机的内存作为参照,数据输入到计算机内存的过程即输入,反之输出到外部存储(比如数据库,文件,远程主机)的过程即输出。数据传输过程类似于水流,因此称为 IO 流。IO 流在 Java 中分为输入流和输出流,而根据数据的处理方式又分为字节流和字符流。Java IO 流的 40 多个类都是从如下 4 个抽象类基类中派生出来的。/Reader: 所有的输入流的基类,前者是字节输入流,后者是字符输入流。/Writer: 所有输出流的基类,前者是字节输出流,后者是字符输出流。...

2022-08-31 14:32:42 347

原创 我为什么做一名软件工程师

就是把无聊和杂乱的颜料扔到画布上,最终欣赏的是美丽的结果,更重要的是,人们是通过对颜料的玩耍产生创造力。在我还是一个小女孩的时候,我觉得生来就与众不同,我总是质疑生活现状,这让我想成为一名工程师,想在未来取得很多成就,种种事情启发了我,我想解决问题,并成为解决方案提供者。我也遇到了很多挑战,例如Web开发,运维,数据分析,最有趣的是我作为女性,是的,你没看错,有时我必须提醒家人我是一个人,我有任务要完成,他们应该放慢脚步。它让我可以选择和调整我的工作环境和条件,我们使用电脑工作,可以在任何地方完成工作。..

2022-08-30 16:39:50 2331

原创 int(1) 和 int(10) 有什么区别

zerofill的作用一般可以用在一些编号相关的数字中,比如学生的编号 001 002 ... 999这种,如果mysql没有零填充的功能,但是你又要格式化输出等长的数字编号时,那么你只能自己处理了。我们知道在mysql中 int占4个字节,那么对于无符号的int,最大值是2^32-1 = 4294967295,将近40亿,难道用了int(1),就不能达到这个最大值吗?可以看到成功了,说明int后面的数字,不影响int本身支持的大小,int(1)、int(2)...int(10)没什么区别。...

2022-08-30 15:38:19 58

原创 isBlank()方法和isEmpty()方法的区别

而isBlank()方法只对非空字符进行判断。空格字符串被认为是不存在的 返回true。isEmpty()方法会将空字符进行判断,空格字符串也是一个字符串,返回false,1、核心:最大的区别是两者对空白字符进行判断。...

2022-08-25 16:02:04 338

原创 vscode格式化代码

3. windows应该是点击ctrl+shift+p,mac点击command+shift+p,选择Format Document。6. 打开左下角Settings,输入save,钩上保存自动格式化。1. 安装插件Prettier - Code formatter。5. 选择Prettier - Code formatter。2. 打开一个要格式化的文件,比如html,js的文件。4. 点击Configure...

2022-08-24 15:18:23 146

原创 html中的 语言设置

并且语言为英文网站,其"lang"的意思就是“language”,语言的意思,而“en”即表示english。你的页面如果是中文页面,可将其改为。向搜索引擎表示该页面是。

2022-08-24 13:40:47 1268

Scalable IO in Java by Doug Lea

Java NIO学习文档。值得学习。reactor 设计模式。作者Doug Lea。java.util.concurrent包的作者

2020-09-15

springboot实现淘宝签名算法案例自写源码-亲测可用.rar

springboot 实现接口的签名算法。工程完整。可以用于生产环境。 在项目开发中难免会和外部系统打交道,比如对接微信api接口、企业内部项目接口等,这些在对接之前都需要先做签名用来防止接口传输信息时被串改等,主要是用来加强接口的安全防范,下面分享一个典型的一个签名算法-----淘宝签名算法。

2019-12-24

架构师视频

java 架构师 视频

2017-06-27

crc 异或校验,crc 异或校验,

crc 异或校验 c语言 方便移植

2016-07-20

CRC自动检验工具

累加和,异或和 CRC16 CRC32

2016-06-16

java 多线程 服务端程序和客户端程序

java的服务端程序(多线程)和客户端程序 Demo

2016-06-15

java项目源码 学习源码 开源代码

java 初学者 学习源码 开源代码

2016-06-15

空空如也

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

TA关注的人

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