- 博客(79)
- 资源 (2)
- 收藏
- 关注
原创 java完成读取txt文件学生信息,并按成绩排序后输出
一、需求:读取txt文件内容按成绩排序后输出二、分析步骤:创建txt学生信息文件创建学生类创建字符缓冲输入流对象创建ArrayList集合调用缓冲输入流对象的方法读取数据把读取到的字符串数据读取到集合中释放资源遍历集合创建txt文件姓名 成绩张三,50李四,20王五,100赵六,60读取时会跳过第一行标题,由于姓名与成绩之间用 中文逗号’,’ 隔开,下边会用split()来匹配 ‘,’ 拆分字符串创建学生类package collection;public c
2020-05-11 19:57:33 9906 3
原创 Redis 常规操作
Redis是一个高性能、内存型的键值存储系统,不仅作为数据库和缓存使用,还可作为消息中间件。其提供了丰富的数据结构支持,如字符串、列表、集合、哈希表以及有序集合等,并具有事务处理、持久化及发布/订阅等多种高级特性。
2024-01-23 11:52:44 1070
原创 MySQL 常规操作指南
以上两种方式都可以帮助我们在SQL查询中实现类似if-else的逻辑控制。在更复杂的场景下,可能需要结合多个CASE表达式或者嵌套使用IF()函数来完成更为复杂的业务逻辑处理。以上涵盖了MySQL中常见的基本操作,包括连接服务器、数据库和表的管理、数据操作以及用户权限管理等。以上是MySQL中的常见查询操作,涵盖了基本查询、条件筛选、排序、分组统计、连接查询以及子查询等场景。函数接收三个参数:条件、满足条件时的结果和不满足条件时的结果。在提示下输入对应用户的密码,即可进入MySQL命令行界面。
2024-01-18 17:35:06 627
原创 Linux常规操作指南
当你想查看某个特定进程是否正在运行,或者了解该进程的具体资源占用情况时,就可以用这个命令进行查询。是一个强大的文本搜索工具,它可以按照指定模式在文件或输入流中查找内容,并将匹配到的内容输出。这就是Linux操作系统中一些常见的基本操作,实际运用时一定要根据具体环境和需求进行调整。是Process Status的缩写,用于查看系统当前运行的进程状态。是你想要查找的进程名称或者部分名称。会列出系统中所有的进程及其详细信息。这个命令的作用就是查找并显示所有包含。组合在一起提供了详细的进程信息。
2024-01-18 16:03:37 746
原创 Docker 操作
通过以上操作,可以对Docker进行基础到高级的管理和配置,包括镜像、容器、数据卷和网络的创建、启动、停止、删除等常规操作,以及使用Docker Compose来部署多容器应用。因此,在编写Dockerfile时应尽量将改变频率较低的操作放在前面,如安装依赖等,而将经常变动的步骤(如COPY源代码)放在后面。以上内容涵盖了Docker的一些高级操作,包括如何进行镜像构建优化、容器资源管理以及数据备份与恢复等实践技巧。命令清理临时文件、无用包或者不必要的日志文件,以减小最终镜像的体积。
2024-01-18 15:56:03 1081
原创 Markdown 使用
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2024-01-17 10:06:20 818
原创 git操作
Git 多人协作开发的过程Git可以完成两件事情:版本控制2.多人协作开发如今的项目,规模越来越大,功能越来越多,需要有一个团队进行开发。如果有多个开发人员共同开发一个项目,如何进行协作的呢。Git提供了一个非常好的解决方案 ---- 多人协作开发。1.多人协作原理典型的做法是,首先创建一个git服务器,被多个人所操作。1.多人协助实现分为如下几个步骤:1.创建一个git裸服务器 (git init --bare)2.从裸服务器将版本库克隆至本地(git clone )3.本地
2024-01-17 09:56:22 536 1
原创 新旧数据比较 直接可用
我自定义的函数式编程自定义接口 可替换为java.util.function.Functionpublic interface RSupplier<T,V> { V apply(T t);}对比类package xxx.utils;import xxx.RSupplier;import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.stream.Co
2024-01-11 14:22:09 715
原创 canal 同时监听两个数据库实例
把canal.destinations = example 修改为 canal.destinations = example,example2。如果 canal.instance.defaultDatabaseName 不存在 ,直接加上去。如果 canal.instance.defaultDatabaseName 不存在 ,直接加上去。添加 canal.instance.defaultDatabaseName = test。example2的连接配置。example的连接配置。
2023-11-07 11:55:54 483
原创 redis笔记
缓存冷门数据热点重建,原因,原本冷门的数据突然出现高并发访问 问题 并发过大时数据库服务器可能会宕机 解决方法 双重检测锁机制 先检查一遍缓存 缓存中没有 再用jvm锁或redis分布式锁 把查询数据库的代码锁起来(不能让高并发的请求同时穿透到数据库),在同步代码块中再查询一遍缓存,如果缓存中存在则直接返回数据(锁会影响效率,越快结束越好),如果缓存中还是没有才去查询数据库,然后把数据添加到缓存 并添加过期时间 一定要try catch finally 无论情况如何 最终必须解锁。
2023-10-13 09:16:15 930
原创 字符集你知多少?
● ASCII字符集:只有英文、数字、符号等,占1个字节。● GBK字符集:汉字占2个字节,英文、数字占1个字节。● UTF-8字符集:汉字占3个字节,英文、数字占1个字节。!!!注意1:字符编码时使用的字符集,和解码时使用的字符集必须一致,否则会出现乱码!!!注意2:英文,数字一般不会乱码,因为很多字符集都兼容了ASCII编码。
2023-09-13 10:05:45 136
原创 ArrayList继承了AbstractList,已经间接实现了List接口,那么为什么ArrayList还要显式实现List接口呢
这是因为,通过显式实现接口,ArrayList可以确保:
2023-06-28 15:12:23 429
原创 飞书开发流程
飞书的SDK支持飞书大部分接口的调用,有些还是需要自己构造请求,对于使用OpenFeign来构造请求飞书的接口可能会报错,我遇到过几个,最后改用RestTemplate来构造请求解决,也可以使用okhttp飞书实例默认提供的实例就包含了SDK请求与OKhttp请求参考地址。
2023-05-16 10:42:42 1632
原创 mysql 回表 索引覆盖 索引下推
主键索引:通过主键创建的索引二级索引:除开主键索引之外的其他索引 如:联合索引,唯一索引 等联合索引:为表中多个列创建的索引唯一索引:被设置了唯一约束的列,对该列创建索引mysql的innodb引擎 会为每一个索引生成一颗B+树 如:一个表有三个索引 一个主键索引 一个唯一索引 一个普通索引 那么innodb会为这三个主键生成B+树 一颗主键索引树 一颗唯一索引树 一颗普通索引树
2023-02-24 12:11:39 165
原创 mysql 的explain参数
id相同:从上到下执行;id不同:按从大到小顺序执行; id部分相同、部分不同: 相同部分从上到下执行,不同部分从大到小顺序执行; id相同可以看做一个分组;
2023-02-23 17:14:51 226
原创 mysql 索引
把name = ’玛卡巴卡‘拿着去 n树 找到对应的叶结点,然后拿着这个叶结点中的指针去找下一个节点,直至找到叶子节点,获取叶子节点中对应的主键索引:3 然后再拿着这个主键索引 3 去 i树 找到对应叶节点 ,通过这个叶结点的指针一直找到叶子结点对应的行数据:3 玛卡巴卡 12 然后返回数据 12。如果我们通过普通索引去查询数据,那么mysql会先去这个普通索引对应的B+树找到主键索引,然后拿着这个主键索引去对应的B+树找对应的行数据,这种情况我们称之为回表;现在已经对id创建了主键索引。
2023-02-15 15:46:00 248
原创 注解方式自定义序列化(如果返回的值为空,则序列化为““)
测试对象数据 在对象上边添加@JsonSerialize(using = JacksonSerializer.class) 表示序列化时使用JacksonSerializer进行序列化。自定义序列化 需要继承 StdSerializer 并重写serialize方法 具体规则都在该方法中,为了公共性使用了反射。
2022-10-09 14:38:37 433
原创 写代码前的准备
1 先理解业务(业务的走向,最好把它写下来,一定要确认业务细节才开始写代码)2 理解表(哪些默认值,哪些手动添加,哪些字段多了或者少了,最好写下来,状态的字段一定要理解,哪些字段不能为空,哪些字段有默认值,哪些字段不能有重复值,对于前端表单传递的参数记得判断长度)3 前端一个按钮一个接口(除非是一对多的编辑添加)4 最小化参数(能传一个的不要传两个)5 公共的方法尽量最小化,一个方法只完成一个最小功能点(或者赋值,或者做检验,最好不要一个方法里同时出现两个功能点)6 功能点尽量最小化(能多写接口不
2022-05-05 01:29:35 946
原创 引用拷贝,深拷贝,浅拷贝
引用拷贝: 拷贝了对象的地址浅拷贝:对象中如果是基础类型就拷贝基础类型,新对象对基础类型的操作不会影响原对象;对象中如果是引用类型就拷贝引用地址,新对象对引用类型的操作会影响原深拷贝: 拷贝一个新的完整的对象,无论是基础类型还是引用类型全部拷贝...
2022-04-17 15:05:44 119
原创 mybatis-plus中Rest API 通用控制器
com.baomidou.mybatisplus.extension.api.ApiController 被移除的原因 移除版本加上点吐槽
2022-04-06 15:14:44 669
idea插件 Rainbow fart 十几个语音包
2022-08-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人