框架部分
文章平均质量分 62
Loren_云淡风轻
这个作者很懒,什么都没留下…
展开
-
Java实战-- 线程池及lambda
Java实战技巧多线程并发编程lambda高级用法原创 2024-02-29 15:27:03 · 1218 阅读 · 0 评论 -
Java-SPI实战
/ 执行不同厂商的业务实现,具体根据业务需求配置 for (HelloSPI helloSPI : load) { helloSPI.sayHello();如果在多模块的项目中引入依赖,不能直接实现接口来扩展,一般需要新建一个类打一个新jar包,然后在多模块项目里面引入进来.如果我们想要选择性的来指定实现类,则可以通过ServiceLoader来获取实现类。原创 2024-03-02 08:43:13 · 337 阅读 · 0 评论 -
异步编程实战之webflux
2, webflux是懒加载,不能像传统那样写逻辑,需要return Mono或return Flux并且一个方法里只能return一个,其他逻辑需要在这个逻辑里面return;6, Mono的mapNotNull/switchIfEmpty是在该Mono执行完后执行,按照Mono返回的对象互斥执行。7, Mono.defer()与Flux.defer()区别在于:前者返回Mono对象,后者返回Flux对象集合.8, Mono> 转Flux与Flux转Mono>二, 相关API使用说明。原创 2024-03-03 09:33:44 · 358 阅读 · 0 评论 -
knife4j实战
knife4j是基于swagger二次开发的框架,提供了丰富的页面管理,增强了原有的wagger功能。原创 2024-03-03 09:24:52 · 364 阅读 · 0 评论 -
微服务日志系统
1.初始ELKELK是一个技术栈,包括Elasticsearch、Logstash和Kibana,ELK是三种技术首字母的缩写。ELK主要用于日志收集、存储和查询。1.1 为什么要用ELKELK主要用于处理日志。作用如下:a) 定位问题:线下也许可以通过debug一行一行来调试,但是线上可能不会给你远程调试的权限;当然,如果代码庞大,调试可...原创 2018-12-06 23:09:18 · 3711 阅读 · 1 评论 -
Mybatis实战(2)
注:如果报找不到vm模板文件,可能是加载路径不对,也可能是maven有缓存需要clean一下。8,resources下vm/java/的模板文件:controller.java.vm。2,数据库连接配置文件 generator.properties。3,代码生成配置文件:generatorConfig.xml。4,LombokPlugin插件类。7,类生成类ClassCreate。原创 2024-03-02 21:25:18 · 368 阅读 · 0 评论 -
Mybatis实战(1)
【代码】Mybatis实战(1)原创 2024-03-02 21:21:07 · 375 阅读 · 0 评论 -
异步编程实战之r2dbc
五, 编写DataSourceConfig。controller模板。四, 编写入口生成主类。二, 数据库连接配置。原创 2024-03-03 09:38:19 · 386 阅读 · 0 评论 -
异步编程实战之lettuce
注: redis的参数还需要关注redis服务端的参数,有些默认的参数可能实际并不适合。六, 分布式锁(RedisTemplate)三, redis连接池设置。二, redis配置参数。原创 2024-03-03 09:36:26 · 421 阅读 · 0 评论 -
flyway实战
四, 在resources目录下创建db.migration目录并在该目录下创建sql文件, V1.0.1__init.sql。启动项目后,会生成一张表: flyway_schema_history。flyway是一款用来管理数据库版本的工具框架。三, flyway配置参数。类似的其他sql文件同理。原创 2024-03-02 21:16:43 · 390 阅读 · 0 评论 -
分布式ID选型对比(4)
特点: 百度Uid generator是基于雪花算法实现,不同点在于其workId是动态的,即不同机器生成的workId不同,将主键ID作为wrokId,在项目启动时完成workId的生成及获取.遗憾的是 目前百度的这个开源算法已经停止了维护!一, 创建表: worker_node(在项目启动时初始化生成workId)入口类: DefaultUidGenerator。配置类: UidGeneratorConfig。二, 创建Model及Exmple、Dao。接口: UidGenerator。原创 2024-03-02 14:52:29 · 478 阅读 · 0 评论 -
分布式ID选型对比(3)
Leaf的snowflake模式依赖于ZooKeeper,不同于原始snowflake算法也主要是在workId的生成上,Leaf中workId是基于ZooKeeper的顺序Id来生成的,每个应用在使用Leaf-snowflake时,启动时都会都在Zookeeper中生成一个顺序Id,相当于一台机器对应一个顺序节点,也就是一个workId。基于号段模式原理实现的与Leaf如出一辙,每个服务获取一个号段(1000,2000]、(2000,3000]、(3000,4000]重复Http方式的(2)(3)操作。原创 2024-03-02 14:46:35 · 1034 阅读 · 0 评论 -
分布式ID选型对比(2)
三, resources目录下编写自动生成代码配置文件: generatorConfig.xml。4, resources/mybatis目录下建: IdGeneratorMapper.xml。特点: 相较于数据库自增,扩展性更好,但缺点是每次取ID都需要加锁,性能较低.3, controller层: GenerateIdController。2, dao层接口: IdGeneratorMapper。1, 对象 IdGenerator。原创 2024-03-02 14:35:38 · 629 阅读 · 0 评论 -
分布式ID选型对比(1)
可以实现自己的ID生成中心,即TynyId-server,由该项目提供获取ID的方法供调用,但该方式比较耗IO,性能会有所下降。可以实现自己的ID生成中心,即leaf-server,由该项目提供获取ID的方法供调用,但该方式比较耗IO,性能会有所下降。特点: 对于高并发的系统,如果做了分库分表就不适合了,且数据库数量达到500万时就容易出现瓶颈,仅适合小数据量的系统.高(本地生成,(无网络开销,需要自己实现)高(本地生成,(无网络开销,需要自己实现)依赖数据库,需要频繁更新数据库maxId。原创 2024-03-02 14:31:14 · 1214 阅读 · 0 评论 -
swagger环境搭建及使用
swagger环境搭建及使用:1,导入swagger所需要的jar包及插件 pom文件<!-- 合并swagge文档 --> <plugin> <groupId>org.codehaus.gmaven</groupId> <artifactId>groovy-maven-plugin<...原创 2018-05-23 13:58:44 · 1544 阅读 · 1 评论 -
JWT加密解密案例
------1,创建一个用户对象Userpackage com.xforceplus.hera;public class User { private String userName; private String password; private String tel; public User(String userName,String password,...原创 2018-06-19 16:10:01 · 11315 阅读 · 2 评论 -
技术类文章转载
1,Windows PowerShell打开方法与常用命令https://blog.csdn.net/lengyuezuixue/article/details/809738732,idea+springboot+gradle创建项目https://blog.csdn.net/without_bont/article/details/788356133,开源中国的git发现不能...原创 2019-04-02 19:20:30 · 296 阅读 · 0 评论 -
Redis入门学习
----------NoSQL(Not Only Sql)非关系型数据库的特性:1,High performance --高并发读写2,Huge Storage--海量数据的高效率存储和访问3,High Scalability && High Availability--高可扩展性和高可用性目前市面上流行的NoSQL的数据库有:Redis、CouchDB、mongoDB、memba原创 2017-12-23 19:45:33 · 214 阅读 · 0 评论