- 博客(185)
- 资源 (2)
- 收藏
- 关注
原创 PowerDesigner设计数据库表
设计表的时候如果没有专门加注释字段,而是想把column name做为comment,那么在到处所有表的时候,需要勾选Format -> Generate name in empty comment,导出之后就会有comment。数据库→Edit Current DBMS...→常规→MySQL5.0→Script→Object→Column→Add。见下图,打开definition,把如下模板代码整个复制下来,粘贴到右侧输入框中,点击确定。设置字段说明,字段名称,字段类型,字段长度,主键,外键。
2025-03-06 09:59:56
602
原创 Java List 转map,分组,排序,去重
日常工作中经常需要用到对List集合的分组、排序、转Map等操作,每次都会忘记,然后去网上查,费时又费力,不如自己好好总结一下,提升工作效率和减少bug率。
2024-08-22 19:49:44
1463
原创 Redis并发问题解决方案
Redis并发问题解决方案,分布式锁,原子操作,事务,虽然能解决并发问题,但是后2者不能完全保证数据一致性,因为都没有失败回滚
2023-11-23 11:30:33
3136
原创 Springboot 使用JavaMailSender发送邮件 + Excel附件
Spring自带的JavaMailSender发送邮件,并且带附件
2023-10-27 17:15:51
3410
原创 java 7大设计原则
解释:B无意中重写的父类的func1方法, 原本func1 是 num1 - num2,重写后 变成 相加, 这样 如果是无意识的话,程序员本来要做 func1的相减功能,但是结果却是相加。一个类 对自己依赖的类知道的越少越好。1、父类中凡是已经实现好的方法,虽然他不强制要求所有的子类必须遵循这些契约,但是如果子类对这些已经实现的方法任意修改,就会对整个继承体系造成破坏。2、如果一个类被其他类所继承,则当这个类需要任意修改,就必须考虑到所有的子类,并且父类修改后,所有涉及到子类的功能都可能产生故障。
2023-04-23 17:29:51
1641
原创 Redis cache-aside模型-分布式锁等问题研究
缓存穿透,缓存击穿,雪崩,预热等情况,都是Redis缓存里没有对应数据的情况,这种时候如果发生大并发怎么办?这就需要并发排他
2022-09-02 17:45:31
1013
1
原创 MySql -- 不存在则插入,存在则更新或忽略
1.前言Mysql在插入数据时,需要忽略或替换掉重复的数据(依据某个字段,比如Primary Key或Unique Key),这时候我们既可以在应用层处理,也可以使用复杂的 SQL 语句来处理(如果仅仅知道一些简单的 SQL 语法的话),当然也可以使用一些简单的 SQL 语法,不过它并不是通用所有的数据库类型。下面我们以MySQL为例,研究一下insert 怎样去忽略或替换重复数据2.表实例表名称:person表字段:Column Name Primary Key A
2022-05-31 17:04:20
7645
转载 精辟--为什么NIO被称为同步非阻塞
按照《Unix网络编程》的划分,IO模型可以分为:阻塞IO、非阻塞IO、IO复用、信号驱动IO和异步IO。按照POSIX标准来划分只分为两类:同步IO和异步IO。如何区分呢?首先一个IO操作(read/write系统调用)其实分成了两个步骤:1、发起IO请求;2、实际的IO读写(内核态与用户态的数据拷贝)阻塞IO和非阻塞IO的区别在于第一步,发起IO请求的进程是否会被阻塞,如果阻塞直到IO操作完成才返回那么就是传统的阻塞IO,如果不阻塞,那么就是非阻塞IO。同步IO和异步IO的区别就在于
2022-05-27 13:13:30
1165
8
原创 猪齿鱼平台CI流程总结--遇到的坑
1.指定maven仓库猪齿鱼平台可以创建自己的maven仓库(nexus),但是目前上传jar包有问题,所以我们需要先使用之前的maven仓库:http://119.3.163.234:8051/repository/maven-public/。(1).指定maven仓库的设置,请看第3小节的修改“构建镜像”流程(2).上传jar包到maven仓库(目前一直失败,推测网络问题,先不管了)参考文章:maven安装、环境变量配置以及使用mvn命令上传文件 - 简书 (jianshu.com)
2022-05-23 15:24:05
949
2
原创 关于java web系统设计的一些点的思考总结
1.怎样提高数据库的读写能力?以Mysql,MongoDB为例,思想还是分流提高读能力:主从复制,读写分离。集群中所有数据库数据是相同的,读请求被分流到集群中的任何一个数据库,这样自然增加了读能力。但是增加从数据库并不能增加写能力,反而在一定程度上降低了主数据的写能力,因为写操作都是在主数据库中进行的,每增加一个从数据库,从数据库要从主数据库同步数据,这样会占用主数据IO,从而降低主数据库写IO操作性能。 提高写能力:主从集群不能提高写能力,那么可以通过分片集群的方式分流写操作,从而同时提高写能力
2022-05-14 09:11:03
399
原创 SEATA整合sharding-jdbc
本文使用的初始源代码来自于:seata-samples/springcloud-seata-sharding-jdbc-mybatis-plus-samples at master · seata/seata-samples · GitHub但是在运行上面代码过程中,发现老是运行失败,出现各种各样的错误,最后发现是因为配置的原因,初始代码中给的配置信息不全,这里给出完整的配置信息1.seata-order- sample模块(1). application.properties#订单微服务
2022-05-06 22:55:20
2716
3
原创 JVM调优总结--压力测试
1.查看JVM进程:C:\Users\ThinkPad>jps33360 Launcher453218696 MainClientBootStrap21864 Launcher18380 MainServerBootStrap19212 Jps2.Linux查看进程的线程信息参考文章:Linux查看进程的线程信息_慕城南风的博客-优快云博客_linux查看线程(1)ps指令:在ps命令中,“-T”选项可以查看线程信息。下面的命令列出了由进程号为<pid>.
2022-05-05 15:26:36
1705
原创 Kafka生产与消费--简单示例
下面用java给出一个kafka生产与消费的简单示例:运行环境:java:java version "1.8.0_291"kafka:<dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka_2.11</artifactId> <version>2.1.0</version></dependency&
2022-05-03 07:29:23
2952
原创 IDEA 常用快捷键列表
IDEA新手对快捷键不熟,但是如果掌握了所有IDEA的快捷键使用,那么你完全可以丢掉鼠标,并且可以提高开发效率。一、Ctrl 快捷键Ctrl + F 在当前文件进行文本查找 (必备)Ctrl + R 在当前文件进行文本替换 (必备)Ctrl + Z 撤销 (必备)Ctrl + Y 删除光标所在行 或 删除选中的行 (必备)Ctrl + X 剪切光标所在行 或 剪切选择内容Ctrl + C 复制光标所在行 或 复制选择内容Ctrl + D 复制光标所在行 或 复制选择内容,并把复制内容插入
2022-04-23 16:05:36
326
Fetion2011June.exe
2012-07-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人