- 博客(57)
- 收藏
- 关注
原创 开发日记-springboot+mybatis-plus适应新版分页配置类
换高版本的springboot+mybatis-plus项目后发现IPage分页接口不生效问题解决
2025-01-15 14:46:52
76
原创 踩坑日记-Feign通过get请求报错 method get must not have a request body
Feign通过get方式请求,请求体中带@RequestBody报错处理
2024-02-04 15:56:27
876
原创 开发日记-navicate操作快捷键
4. Ctrl+Shift+R: 只运行选中的sql语句。17. Ctrl +Shift+/: 解除注释。11. Ctrl+N: 打开一个新的查询窗口。14. Ctrl+W: 关闭当前查询窗口。8. Ctrl+L: 删除选中行内容。2. Ctrl+T:新建查询窗口。3. Ctrl+R:运行查询语句。9. Ctrl+C:复制选中内容。13. Ctrl+G:转到指定行。10. Ctrl+V:粘贴内容。12. Ctrl+F:查找内容。15. Ctrl+H:替换内容。6. Ctrl+Z:撤销操作。
2023-12-20 14:54:25
855
转载 将XMind装到C盘之外(转)
2022-03-17 16:16:23XMind目前安装只能默认到C盘,虽然不会占用特别大空间,但是真的让我很不爽了,因此找到了这种可以将XMind装到别的盘的方法,也是在网上看到的,记录分享一下。1、win + R 打开运行,输入regedit,2、一路找到:“计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion”这个路径3、XMind的默认安装路径是 ProgramFilesDir,因此我们修改这个,双击打开,这个C
2023-11-28 14:25:38
1705
3
原创 踩坑日记-‘packaging‘ with value ‘jar‘ is invalid. Aggregator projects require ‘pom‘ as packaging.@...
maven报错:'packaging' with value 'jar' is invalid. Aggregator projects require 'pom' as packaging
2023-01-31 10:28:43
2475
原创 开发日记——CountDownLatch同步数据
业务背景这次的业务场景是公司的旧系统使用单线程同步接口,而需要同步的数据量已经逐渐扩大到几十万上百万,导致同步一次数据需要将近半天时间。对此我想到使用多线程优化系统。CountDownLatch概念CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程执行完后再执行。例如,应用程序的主线程希望在负责启动框架服务的线程已经启动所有框架服务之后执行。简单来说就是我准备线程池让程序自动分配每个线程执行的任务,虽然执行顺序是乱序的,但保证了任务唯一。
2022-02-16 14:13:32
373
原创 开发日记——centos定时任务
由于采购试用的系统不稳定,需要不时重启,在我不在的时候遇到问题没法处理,所以我打算在服务器上加个定时任务重启应用服务。说到centos上最常用的定时任务应该就是crontab了,我这里记录下使用步骤和遇到的问题。安装一般情况下crond、crontab是安装好的,如果你的服务器上没有crontab,直接用yum去安装crond或者crontab因为你会发现找不到包,其实这个包应该是cronie。yum install -y cronie常用命令...
2021-10-21 10:29:51
788
原创 Java 程序该怎么优化?(技巧篇)(转)
搬砖者:为什么程序总是那么慢?它现在到底在干什么?时间都花到哪里去了?面试官:简单谈谈 Java 程序性能优化?1.字符串处理优化,乃优化之源。研发过程中,String 的 API 用的应该是最多,创建 String 对象,以及字符串分割处理那是常有的事儿。1.1.字符串分割,谁更胜一筹?字符串分割,常用的方式有哪些?哪种方式好一些?方式一,经常用 String 提供的 split() 方法来满足业务需求。代码模拟了一些数据,然后程序跑起来,花费大约 3000 ...
2021-09-09 15:14:27
281
原创 记录-JSON转Map的简单方法模板(转)
public Map<String, String> toMap(Object object) {Map<String, String> data = new HashMap<String, String>();// 将json字符串转换成jsonObjectJSONObject jsonObject = JSONObject.fromObject(object);Iterator ite = jsonObject.keys();/...
2021-08-16 16:14:22
167
原创 开发日记——th:field=“*{}“中日期格式化问题
th:field:"*{}"中日期格式化问题情景 我在写表单修改时需要通过th:field获取库中的数据,有一个字段是date日期类型,由于插入时没做日期规范,导致读取的日期数据格式难读。使用thymeleaf日期格式化 Thymeleaf中日期格式化使用的是#dates.format('字段名','日期格式(
2021-07-30 09:39:04
2562
原创 踩坑日记——Oracle 错误:ORA-22922 不存在的 LOB 值
今天在系统中测试导出报表的时候,根据人名、工号、单据号、项目等条件分别导出都没有出现问题,唯独无条件导出时报以下错误:Oracle 错误:ORA-22922 不存在的 LOB 值根据报错信息进行排查,发现是这句SQL出现了问题to_char(wm_concat(distinct('字段名'))) as字段名 直接无条件查询会报错,加上where 1=1 order by ***可以通过,但是这样又会导致查询条件置于这句order by之后导致报错ORA-0...
2021-07-13 14:47:09
3737
1
原创 开发日记——跨域访问
开发背景: 一个hibernate+JPA的系统功能拓展,要求与另一个部门的同种系统进行交互,而两个系统开发时都没有做外部扩展的接口设计。 虽说是两个同样的系统,但由于部门不同地域不同等因素,要求得有数据权限。而这个系统当初设计开发时就没有预留外部扩展的计划,所以不能共用同一个数据库,而是直接分成两个系统对需要的数
2021-05-20 14:43:07
209
原创 开发日记-Oracle数据库语句实现:借用归还公式
开发背景: 最近公司的一个仓库系统中有新需求如下:借用样品后根据借用单查询借用数量、归还数量并计算剩余未归还数量。 借用数量在建立借用单的时候就以及确定,归还是可以分开多次部分归还,这个查询要做到查询到同一张借用单的所有归还数据,同时每一条数据要显示根据每次归还的数量计算剩余未归还的数量。 .
2021-05-10 11:55:56
533
原创 设计模式之——命令模式(Command)
定义命令(Command)模式的定义如下:将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行储存、传递、调用、增加与管理。主要优点通过引入中间件(抽象接口)来降低系统的耦合度。扩展性较好,增加或者删除命令非常方便。增加与删除命令不会影响其他类,且满足“开闭原则”。方便实现 Undo 和 Redo 操作。命令模式可以与后面介绍的备忘录模式结合,实现命令的撤销与恢复。扩展各种软件中的菜单都是通过命令模式对命令进行封装使用
2021-04-23 13:19:58
180
原创 设计模式之——备忘录模式(Memento)
定义备忘录(Memento)模式的定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便以后当需要时能将该对象恢复到原先保存的状态。该模式又叫快照模式。实现Gof书中的代码实现方法如下:public class MementoPattern { public static void main(String[] args) { Originator or = new Originator(); Caretaker cr =
2021-04-21 11:38:07
155
原创 设计模式之——适配器模式(Adapter)
概念定义适配器模式(Adapter) 的定义如下:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。适配器模式分为类结构型模式和对象结构型模式两种,前者类之间的耦合度比后者高,且要求程序员了解现有组件库中的相关组件的内部结构,所以应用相对较少些。 简单举个例子:在智能手机兴起之前手机的种类是各式各样的,其充电接口也是不尽相同。当手机在外没电想要借用充电器
2021-04-20 10:50:37
174
原创 设计模式之——模板方法模式(TemplateMethod)
定义模板方法(Template Method)模式的定义:定义一个操作中的算法骨架,而将算法的一些步骤延迟到子类中,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。所谓的模板方法模式实际上就是钩子函数。实现使用代码举例:首先抽象一个模板对象Methods用于管理方法:abstract class Methods { void template() { method1(); method2(); } abstract
2021-04-15 19:00:42
185
原创 设计模式之——状态模式(State)
定义状态(State)模式的定义:对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。简单的说就是:根据状态决定行为应用&实现 在我们以前写代码,遇到根据对象状态要做判断时通
2021-04-14 10:35:53
260
1
原创 设计模式之——原型模式(Prototype)
定义原型(Prototype)模式的定义:用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型相同或相似的新对象。在这里,原型实例指定了要创建的对象的种类。用这种方式创建对象非常高效,根本无须知道对象创建的细节。应用 在开发系统时可能存在大量相同或相似对象的创建,如果用传统的构造函数来创建对象,会比较复杂且耗时耗资源。若是将这些差不多的对象都由同一个原型模板复制后加以修改,就可以解决上述问题
2021-04-13 11:46:14
151
原创 设计模式之——桥接模式(Bridge)
定义 桥接模式即将抽象部分与它的实现部分分离开来,使他们都可以独立变化。抽象化: 其概念是将复杂物体的一个或几个特性抽出去而只注意其他特性的行动或过程。在面向对象就是将对象共同的性质抽取出去而形成类的过程。实现化: &nbs
2021-04-11 17:37:58
254
原创 设计模式之——访问者模式(Visitor)
文章目录访问者模式定义特点应用代码讲解使用场景编译器访问者模式定义访问者(Visitor)模式的定义:将作用于某种数据结构中的各元素的操作分离出来封装成独立的类,使其在不改变数据结构的前提下可以添加作用于这些元素的新的操作,为数据结构中的每个元素提供多种访问方式。它将对数据的操作与数据结构进行分离,是行为类模式中最复杂的一种模式。 简单来说就是在结构不发生改变的情况下对于内部元素进行动态改变的动作。与
2021-04-10 18:34:33
309
原创 设计模式之——策略模式
文章目录策略模式(Strategy)定义应用情景使用comparable优化策略模式结构优点:策略模式(Strategy)定义策略(Strategy)模式的定义: 该模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。策略模式属于对象行为模式,它通过对算法进行封装,把使用算法的责任和算法的实现分割开来,并委派给不同的对象对这些算法进行管理。应用情景只看这些理论比较难理解,我通过java程序来举例子:public class Main { p
2021-04-09 15:47:58
118
原创 设计模式之——建造者模式(Builder)
概念定义建造者(Builder)模式的定义:指将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示,这样的设计模式被称为建造者模式。它是将一个复杂的对象分解为多个简单的对象,然后一步一步构建而成。 它将变与不变相分离,即产品的组成部分是不变的,但每一部分是可以灵活选择的。特点封装性好,构建和表示分离。扩展性好,各个具体的建造者相互独立,有利于系统的解耦。客户端不必知道产品内部组成的
2021-04-01 19:14:59
162
原创 设计模式之——迭代器模式(Iterator)
概念定义迭代器(Iterator)模式的定义: 提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。特点 迭代器模式是通过将聚合对象的遍历行为分离出来,抽象成迭代器类来实现的,其目的是在不暴露聚合对象的内部结构的情况下,让外部代码透明地访问聚合的内部数据。迭代器模式具有以下优点:访问一个聚合对象的内容而无须暴露它的内部表示。遍历任务交由迭代器完成,这简化了聚合类。它支持以不同
2021-03-31 20:44:55
170
原创 设计模式之——代理模式(Proxy)
文章目录代理模式静态代理定义代码讲解特点动态代理定义代码讲解动态代理机制及特点其他实现代理模式代理模式(Proxy) 的定义:由于某些原因需要给某对象提供一个代理以控制对该对象的访问。这时,访问对象不适合或者不能直接引用目标对象,代理对象作为访问对象和目标对象之间的中介。 简单地说就是我们实际访问目标是通过代理对象来间接访问的,代理就是对目标方法进行增强。静态代理定义
2021-03-30 20:19:35
169
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人