引入一个boot模块坑
“所有你乐于挥霍的时间都不能算作是浪费。”——约翰·列侬 这个坑蛮棘手的 事发场景:main-boot引入common-boot模块,common-boot模块是一个spring-boot模块 关键GAV构成如下: common-boot 12345678910111213141516171819<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.6.7</version> <relativePath/></parent><groupId>com.ruben</groupId><artifactId>common-boot</artifactId><version>0.0.1-SNAPSHOT</ver...
mybatis流式查询
所谓浮躁,也就是时时刻刻,希望以最短的时间,博取最多的存在感、优越感和自我认同。——张佳玮 分享一个mybatis流式查询 用法很简单: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364package com.ruben;import com.ruben.mapper.UserMapper;import com.ruben.pojo.po.UserPO;import lombok.SneakyThrows;import org.apache.ibatis.cursor.Cursor;import org.apache.ibatis.session.RowBounds;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.junit.j...
vue props注意
等到看你银色满际,等到分不清季节更替,才敢说沉溺。——《水星记》 官方文档:https://cn.vuejs.org/v2/guide/components-props.html 我们在使用vue的prop时 如果prop其数据类型为一个对象 则传入的是一个对象的地址引用 我们如果在子组件中使用watch将其赋值给一个data,用于外部组件状态发生变化时,内部的某一data也能同时响应: 12345678 watch: { productionData: { immediate: true, handler() { this.myData = this.myProp }, }} 这时候如果我们对myData里的属性进行更改,发现外部(父组件)传过来的对象数据源也发生了变更 如果我们想要深拷贝 则可以使用: 1234567891011function deepClone( obj ){ let clone = obj; if (obj &...
Converter集合转换
只因生命在继续才盲目地产生信念,这种信念是空的。——乔桑塔亚那 前两天写了mapstruct的spring拓展 里面提到了一个Converter 一般我们是对象之间互转,如果是集合的话,可以用Stream#map去一个一个转换 实际上org.springframework.core.convert.ConversionService也为我们提供了参数为org.springframework.core.convert.TypeDescriptor的转换 例如我这里封装一个集合之间的转换 SpringContextHolder工具类 123456789101112131415161718192021222324252627282930313233343536373839404142import java.util.ArrayList;import java.util.List;import org.springframework.core.convert.ConversionService;import org.springframework.core.convert.Typ...
solon
人若是看透了自己,便不会再小看别人。——老舍《骆驼祥子》 分享一个很赞的web框架 Solon 是一个微型的 Java 开发框架。项目从 2018 年启动以来,参考过大量前人作品;历时两年,4000 多次的 commit;内核保持 0.1m 的身材,超高的跑分,良好的使用体验。支持:RPC、REST API、MVC、WebSocket、Socket 等多种开发模式。 Solon 强调:克制 + 简洁 + 开放的原则;力求:更小、更快、更自由的体验。 官网地址:https://solon.noear.org/ gitee:https://gitee.com/noear/solon Solon 家簇成员图谱 上代码感受一下: Hello World: 12345678910111213141516171819202122232425262728293031323334353637//Handler 模式:public class App{ public static void main(String[] args){ SolonA...
连接流时如果是并行流
日出之美便在于它脱胎于最深的黑暗。——辛夷坞 代码: 1234System.out.println(Stream.concat(Stream.of(1), Stream.of(1)).isParallel()); // falseSystem.out.println(Stream.concat(Stream.of(1).parallel(), Stream.of(1)).isParallel()); // trueSystem.out.println(Stream.concat(Stream.of(1), Stream.of(1).parallel()).isParallel()); // trueSystem.out.println(Stream.concat(Stream.of(1).parallel(), Stream.of(1).parallel()).isParallel()); // true 结论:连接的两个流,只要其中有一个是并行流,最终的流则为并行流 顺...
快捷键占用
凡是过去,皆为序章——莎士比亚 分享一个工具,可以解决快捷键占用问题,并且不止如此 OpenArk是一款Windows平台上的开源Ark工具. Ark是Anti-Rootkit(对抗恶意程序)的简写, OpenArk目标成为逆向工程师、编程人员的工具,同时也能为那些希望清理恶意软件的用户服务。以后也将会支持更多功能和命令。 功能 进程 - 查看进程、线程、模块、句柄、内存、窗口等信息,还有进程注入等功能。 内核 - 系统内核工具,例如:内存管理、驱动、热键、回调、过滤驱动、存储、IDT/SDT/NDIS/WFP等功能。 编程助手 - 程序员的工具箱。 扫描器 - PE/ELF文件解析器,以后会变成病毒分析助手。 捆绑器 - 目录和多个程序可以捆绑成一个exe程序,同时支持脚本。 实用工具 - 垃圾清理功能、系统工具等等。 逆向工具 - 精心挑选了许多有用的小工具,这些和OpenArk既有功能互补,高效率,我们一直在思考。 控制台 - 这里有很多有用的命令。 语言 - 目前支持中文和英文,以后会支持更多。 更多强大的功能正在开发中。。...
redis队列
日出之美便在于它脱胎于最深的黑暗。——辛夷坞 首先是配置类 分为Redis配置类和Jackson配置类,主要是用于收发消息时序列化 Jackson的 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253package com.ruben.config;import java.text.SimpleDateFormat;import java.time.LocalDate;import java.time.LocalDateTime;import java.time.format.DateTimeFormatter;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.serializer.Jack...
bean-searcher
等到看你银色满际,等到分不清季节更替,才敢说沉溺。——《水星记》 分享一个只读ORM框架bean-searcher 官方文档:https://bs.zhxu.cn/ 介绍: https://bs.zhxu.cn/guide/latest/introduction.html 例如以下代码: 1234567891011121314@RestController@RequestMapping("/user")public class UserController { @Autowired private MapSearcher mapSearcher; // 注入 BeanSearcher 的检索器 @GetMapping("/index") public SearchResult<Map<String, Object>> index(HttpServletRequest request) { // 一行代码,实现一个用户检索接口(Ma...
properties to yaml converter
天分高的人如果懒惰成性,亦即不自努力以发展他的才能,则其成就也不会很大,有时反会不如天分比他低些的人。——茅盾 分享一个插件properties to yaml converter 使用方式,右键properties文件 点击Convert Properties to YAML即可转换为yml 转换前 转换后
