2025年6月19日

flutter第十八篇:布局原理

摘要: https://docs.flutter.dev/ui/layout/constraints Constraints go down. Sizes go up. Parent sets position. 每个组件的布局都要经历四步: 第一步,组件从父组件处获知自己的约束,约束就是尺寸范围 第二步, 阅读全文

posted @ 2025-06-19 00:11 koushr 阅读(1) 评论(0) 推荐(0)

2025年6月13日

redis高阶第二篇:redis可使用场景

摘要: 1、存储二元记录 "二元"中的"元"是变量的意思,一般是用户和时间这两个变量,存储某用户在某天是否干了特定的事,如打卡记录,张三在今天是否打了卡,张三在昨天是否打了卡,李四在今天是否打了卡,李四在昨天是否打了卡。。。 采用setbit、getbit命令。操作的是string类型的key,把value 阅读全文

posted @ 2025-06-13 01:00 koushr 阅读(1) 评论(0) 推荐(0)

2025年5月15日

flutter第十七篇:getwidget使用

摘要: getwidget组件是个大杀器,有很多预置的功能都很实用,需要重点学习。https://pub.dev/packages/getwidget 1、轮播图(又叫跑马灯) 阅读全文

posted @ 2025-05-15 23:20 koushr 阅读(38) 评论(0) 推荐(0)

2025年4月28日

flutter第十六篇:与js交互

摘要: 互动阅读作品,有分支付费功能,即想阅读某个分支,如果这个分支是收费的,那么需要消耗币,就需要H5调用App的函数,进而调用服务端的兑换接口。 要使用webview_flutter插件。 如果App要调用H5的函数,则 如果H5要调用App的函数,则 阅读全文

posted @ 2025-04-28 11:01 koushr 阅读(38) 评论(0) 推荐(0)

2025年4月14日

flutter第十五篇:【滚动】总结

摘要: Scrollable继承了StatefulWidget。 Viewport继承了MultiChildRenderObjectWidget,MultiChildRenderObjectWidget继承了RenderObjectWidget,RenderObjectWidget继承了Widget。 Sl 阅读全文

posted @ 2025-04-14 18:04 koushr 阅读(31) 评论(0) 推荐(0)

2025年3月31日

clickhouse第三篇:占用磁盘空间太多问题解决

摘要: 通过docker stats --no-stream发现clickhouse容器占用了大量的磁盘空间 1、通过docker logs -f clickhouse发现clickhouse容器在运行时,一直在刷log,造成日志文件巨大,所以在启动时,加上--log-driver=none,让容器不再输出 阅读全文

posted @ 2025-03-31 10:09 koushr 阅读(97) 评论(0) 推荐(0)

flutter第十四篇:第一个app玩家乐园

摘要: 业务功能完全拷贝玩剧乐园。 问题1、首页中,如何用ListView嵌套PageView? 问题2、 ①Wrap里面两个元素,想要一个居左,一个居右,如何实现? 用一个指定宽度的容器包裹,利用Wrap的alignment属性,设置为WrapAlignment.spaceBetween即可。 ②Colu 阅读全文

posted @ 2025-03-31 09:41 koushr 阅读(4) 评论(0) 推荐(0)

2025年3月19日

clickhouse第二篇:MergeTree引擎

摘要: https://clickhouse.com/docs/engines/table-engines/mergetree-family/mergetree 新建MergeTree引擎表示例: use default;drop table if exists app_project_click;crea 阅读全文

posted @ 2025-03-19 23:31 koushr 阅读(27) 评论(0) 推荐(0)

clickhouse第一篇:引擎

摘要: https://clickhouse.com/docs/engines/table-engines clickhouse表的引擎决定了: 数据如何存储,写入到哪里,以及从哪里读取; 支持哪些查询,以及如何支持; 并发数据访问; 索引的使用,如果有的话; 是否可以多线程请求执行; 数据复制参数。 cl 阅读全文

posted @ 2025-03-19 22:04 koushr 阅读(16) 评论(0) 推荐(0)

2025年2月26日

go基础第六篇:网络编程

摘要: RT 阅读全文

posted @ 2025-02-26 19:32 koushr 阅读(4) 评论(0) 推荐(0)

2025年1月17日

2025年1月17日

摘要: 今天是放年假前一周的周五,还有一周就要放假了,可是明天还要加班。快过年了,公司始终没有年会的消息。晚上问了领导有没有年夜饭吃,领导说就在下周了。期待抽奖。 MLGB,没有抽奖,也没有红包。年夜饭还小气的要死,在犄角旮旯的地方找了一个不知名的私房菜馆,菜品穷酸的要死,而且只有领导桌有酒喝,员工桌连啤酒 阅读全文

posted @ 2025-01-17 22:24 koushr 阅读(8) 评论(0) 推荐(0)

2024年12月31日

2024年12月31日

摘要: 今天是2024年最后一天,周二,明天元旦放假(一天)。今天公司请喝奶茶,但是两点多才开始点,到4点半了外卖还没送过来,而我5点半就要出发赶高铁,估计是喝不上了,sad。 草,果然没喝上。25年1月2日补。 阅读全文

posted @ 2024-12-31 16:18 koushr 阅读(16) 评论(0) 推荐(0)

2024年11月26日

flutter第十三篇:在苹果手机上安装app报错

摘要: 要用xcode打开项目的ios目录,设置Automatically manage signing,Team,Bundle Identifier,如下图: 设置Display Name,Version,如下图: 设置Bundle display name(App安装在手机上后,用户看到的App的名称) 阅读全文

posted @ 2024-11-26 23:44 koushr 阅读(59) 评论(0) 推荐(0)

2024年11月18日

flutter第十二篇:实现上拉分页

摘要: 要实现上拉加载下一页,需要用到ListView的controller属性,赋值为一个ScrollController实例。在initState()方法中,调用scrollController的addListener()方法,从而对滚动条进行监听。 定义变量: var scrollController 阅读全文

posted @ 2024-11-18 10:27 koushr 阅读(56) 评论(0) 推荐(0)

2024年11月6日

flutter第十一篇:学习大地老师《Flutter仿小米商城实战》笔记3

摘要: 如果想实现websocket,可以使用web_socket_channel插件。https://pub.dev/packages/web_socket_channel flutter屏幕适配方案:flutter_screenutil 抽离出一个工具类:screenAdapter.dart impor 阅读全文

posted @ 2024-11-06 10:03 koushr 阅读(145) 评论(0) 推荐(0)

2024年11月4日

flutter第十篇:列表页与详情页、接入高德地图、使用一些常见组件

摘要: 列表页与详情页: 列表页: 1、在xxxState类中定义一个空的List,如_list 2、定义一个获取数据的方法,如getData(),在其中调用列表接口获取数据,获取数据后,把列表数据加到_list中,并用setState包裹,以重新渲染页面,把数据展示出来。 3、在initState()方法 阅读全文

posted @ 2024-11-04 10:47 koushr 阅读(418) 评论(0) 推荐(0)

2024年11月1日

flutter第九篇:实现一个打字游戏

摘要: 需求是:在屏幕上半部分,有很多框慢慢从上往下降,框里面是10以内的加法题,如6+3=?。在屏幕下半部分,有1到9这9个数所组成的3行3列的虚拟键盘。交互是如果点击8,那么和为8的加法题框消失。 先做布局,在屏幕底部搞一个3*3的虚拟键盘。 3*3的表格用GridView做,单元格里放TextButt 阅读全文

posted @ 2024-11-01 10:17 koushr 阅读(20) 评论(0) 推荐(0)

2024年10月25日

flutter第八篇:表单

摘要: 文本框 TextField表示文本框,默认只有底部边框,如果想变成四边形的框,需要利用其decoration属性,指定其值为InputDecoration实例,指定InputDecoration的border属性值为OutlineInputBorder()。如果想去掉所有边框,则需要把border指 阅读全文

posted @ 2024-10-25 14:44 koushr 阅读(78) 评论(0) 推荐(0)

2024年10月21日

flutter第七篇:Get的基础使用

摘要: https://pub.dev/packages/get 中文文档:https://github.com/jonataslaw/getx/blob/master/README.zh-cn.md 三大功能: 1、路由管理: https://github.com/jonataslaw/getx/blob 阅读全文

posted @ 2024-10-21 14:40 koushr 阅读(643) 评论(0) 推荐(0)

2024年9月15日

redis高阶第一篇:令牌桶算法限流

摘要: 令牌桶算法核心思想是: 1、以恒定速率向桶中添加令牌 2、桶中令牌数有上限,为桶的容量,超过容量后令牌会直接丢弃 3、请求到来时会尝试从桶中取一个令牌,取成功则通过,服务端会处理此请求,否则拒绝。 token_bucket.lua,内容如下: redis.replicate_commands() l 阅读全文

posted @ 2024-09-15 00:43 koushr 阅读(42) 评论(0) 推荐(0)

2024年9月14日

flutter第六篇:常见问题

摘要: 1、新建一个项目后,在连接andorid模拟器的时候,报jdk和gradle的版本不兼容 解决办法: 第一步:修改android->app->build.gradle文件,把JavaVersion.VERSION_1_8都改为JavaVersion.VERSION_21。有三处。 第二步:修改and 阅读全文

posted @ 2024-09-14 11:40 koushr 阅读(518) 评论(1) 推荐(1)

2024年9月11日

flutter第五篇:动画

摘要: flutter中的动画主要分为隐式动画、显式动画、自定义隐式动画、自定义显式动画、Hero动画5种。 隐式动画:Animatedxxx AnimatedContainer,当其decoration、width、height、alignment属性改变时,触发动画。动画执行时间由AnimatedCon 阅读全文

posted @ 2024-09-11 10:39 koushr 阅读(73) 评论(0) 推荐(0)

2024年9月2日

flutter第四篇:布局下 Scaffold

摘要: 在build()方法中,如果不返回Scaffold,那么整个屏幕的背景色都会是黑色的。Scaffold有很多属性,如appBar、drawer、endDrawer、body、bottomSheet、persistentFooterButtons、bottomNavigationBar、floatin 阅读全文

posted @ 2024-09-02 17:00 koushr 阅读(38) 评论(0) 推荐(0)

2024年8月28日

flutter第三篇:布局中

摘要: 13、AspectRatio、Card、CircleAvatar、Chip 如果想调整一个组件的宽高比,那么可以用AspectRatio包裹它,用其aspectRatio属性指定宽高比。 Chip是标签,看起来跟TextButton差不多,但是自带边框、边框自带圆角,边框内有文字,文字前后可放图标, 阅读全文

posted @ 2024-08-28 17:39 koushr 阅读(216) 评论(0) 推荐(0)

2024年8月27日

flutter第二篇:布局上

摘要: 5、Container、Text 利用Container的alignment属性,可以设置其子组件在Container中的位置,如居中。Container设置alignment后,其将会充满父组件,而不再是根据子组件自适应。 如果想让child决定Container的尺寸,那么就不要设置Contai 阅读全文

posted @ 2024-08-27 19:18 koushr 阅读(181) 评论(0) 推荐(1)

http2.0

摘要: 在nginx中的配置: upstream xxx_service { server host.docker.internal:10003; } server { listen 443 ssl; http2 on; ssl_certificate /path/xxx.com.pem; ssl_cert 阅读全文

posted @ 2024-08-27 17:25 koushr 阅读(17) 评论(0) 推荐(0)

2024年8月21日

dart第三篇:Future和Stream

摘要: 和nodejs一样,dart没有线程和进程的概念,而是采用单线程+事件循环的设计模式。和nodejs一样,dart中的异步采用async和await。 async用于定义异步方法,async关键字放在花括号前面。 Future<int> getNum() async { int a = 0; for 阅读全文

posted @ 2024-08-21 19:32 koushr 阅读(15) 评论(0) 推荐(0)

dart第二篇:函数定义

摘要: 定义函数时, 1、可以有可选参数,放在中括号中的参数是可选参数,如 void printUserInfo(String username, [int? age]) { if (age == null) { print("username:$username"); } else { print("us 阅读全文

posted @ 2024-08-21 14:56 koushr 阅读(9) 评论(0) 推荐(0)

2024年8月14日

dart第一篇:dart基础

摘要: dart的变量是空安全的,即默认不能为空,如String a = null,编辑器会报错。如果想让某一个变量可以为空,则在定义的时候要在类型后面加?,即String? a = null,这样编辑器才不会报错。 dart可以通过三对单引号或者双引号来定义多行字符串,就好像Java17中的多行字符串一样 阅读全文

posted @ 2024-08-14 17:00 koushr 阅读(44) 评论(0) 推荐(0)

2024年8月8日

flutter第一篇:开发环境配置

摘要: 需要安装的软件有Git、Flutter、Android Studio、Visual Studio Code。 ①Git安装不赘述。 ②Flutter: 先配置环境变量: PUB_HOSTED_URL设置为https://pub.flutter-io.cn FLUTTER_STORAGE_BASE_U 阅读全文

posted @ 2024-08-08 09:18 koushr 阅读(398) 评论(0) 推荐(0)

2024年7月27日

gin入参多次获取

摘要: 在middleware层不要用ShouldBind函数绑定body中的参数,因为ShouldBind执行完后,request中body就空了,业务层就拿不到body了。用下面的代码即可,先拿后放。 userIdReq := new(UserIdReq) var err error if c.Requ 阅读全文

posted @ 2024-07-27 18:10 koushr 阅读(24) 评论(0) 推荐(0)

2024年7月22日

docker第三篇:docker安装常用中间件

摘要: 1、mysql docker run --name mysql -h mysql -e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=sBL2y7Uuxqyi -e MYSQL_DATABASE=test -p 3306:3306 --restart=always 阅读全文

posted @ 2024-07-22 19:31 koushr 阅读(148) 评论(0) 推荐(0)

2024年7月18日

https

摘要: https是Hypertext Transfer Protocol Secure,超文本传输协议安全,是http over tls。 阅读全文

posted @ 2024-07-18 23:40 koushr 阅读(8) 评论(0) 推荐(0)

2024年7月16日

http

摘要: 三次握手 阅读全文

posted @ 2024-07-16 19:36 koushr 阅读(26) 评论(0) 推荐(0)

2024年6月25日

go基础第五篇:slice扩容

摘要: x := []int{1, 2, 3, 4}y := x[:2]fmt.Println(cap(x), cap(y))y = append(y, 30) fmt.Println("x:", x)fmt.Println("y:", y) 如果append操作的slice的底层数组中在slice之后有元 阅读全文

posted @ 2024-06-25 09:57 koushr 阅读(11) 评论(0) 推荐(0)

2023年2月17日

分布式事务管理器dtm第四篇:TCC模式

摘要: TCC:T是Try,第一个C是Confirm,第二C是Cancel。 AP向dtm注册全局事务后, 阅读全文

posted @ 2023-02-17 00:00 koushr 阅读(140) 评论(0) 推荐(0)

2023年2月2日

分布式事务管理器dtm第三篇:二阶段消息模式

摘要: 二阶段消息的英文是2-phase message。 AP先向dtm发送prepare消息,如果成功,则继续执行本地事务,如果成功,则继续向dtm发送submit消息。如果成功,则dtm调用各RM的接口,如果成功,则全局事务成功。 时序图如下: dtm服务端处理prepare时,会在dtm_barri 阅读全文

posted @ 2023-02-02 21:00 koushr 阅读(320) 评论(0) 推荐(0)

分布式事务管理器dtm第二篇:saga模式

摘要: 参考官方中文文档:https://dtm.pub/practice/saga.html saga核心思想是把一个长事务拆分多个短事务,由dtm协调,如果每个短事务都成功提交,那么全局事务就正常完成,如果某个步骤失败,则根据相反顺序调用补偿操作。 以转账为例,saga的时序图如下: AP把事务的编排信 阅读全文

posted @ 2023-02-02 20:10 koushr 阅读(242) 评论(0) 推荐(0)

2023年1月31日

分布式事务管理器dtm第一篇:介绍

摘要: https://dtm.pub/guide/start.html dtm全称是distributed transaction manager。dtm是cs架构。 dtm服务端部署: docker run --name dtm -p 36789:36789 -p 36790:36790 -e STOR 阅读全文

posted @ 2023-01-31 11:46 koushr 阅读(523) 评论(0) 推荐(0)

2022年9月8日

redis基础第二篇:script

摘要: RT 阅读全文

posted @ 2022-09-08 20:05 koushr 阅读(229) 评论(0) 推荐(0)

导航