From d8f67d93e9ec55c2c60194896cb0a60bc1640c19 Mon Sep 17 00:00:00 2001 From: zhangsan <646228430@qq.com> Date: Sat, 5 Jul 2025 14:52:46 +0800 Subject: [PATCH] =?UTF-8?q?Commit=20on=202025/07/05=20=E5=91=A8=E5=85=AD?= =?UTF-8?q?=2014:52:46.52?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- {自学 => 后端笔记}/DDD领域驱动设计.md | 0 {自学 => 后端笔记}/JAVA面试题.md | 0 {自学 => 后端笔记}/JavaWeb——后端.md | 0 {自学 => 后端笔记}/Java笔记本.md | 0 {自学 => 后端笔记}/Jmeter快速入门.md | 0 {自学 => 后端笔记}/Maven.md | 0 {自学 => 后端笔记}/Mybatis&-Plus.md | 0 {自学 => 后端笔记}/Mysql数据库.md | 0 {自学 => 后端笔记}/Redis.md | 0 {自学 => 后端笔记}/mongodb_base.pdf | Bin {自学 => 后端笔记}/力扣Hot 100题.md | 0 后端笔记/安卓开发.md | 100 ++++++++++++++++++ {自学 => 后端笔记}/微信小程序.md | 0 {自学 => 后端笔记}/微服务.md | 0 后端笔记/本地记录.md | 44 ++++++++ {自学 => 后端笔记}/消息队列MQ.md | 0 {自学 => 后端笔记}/草稿.md | 0 {自学 => 杂项}/Docker指南.md | 0 {自学 => 杂项}/JavaWeb——前端.md | 0 {自学 => 杂项}/Jupyter notebook快速上手.md | 0 {自学 => 杂项}/anaconda基础命令.md | 0 {自学 => 杂项}/git基本操作.md | 0 {自学 => 杂项}/jupyter笔记本.md | 0 {自学 => 杂项}/linux服务器.md | 0 自学/test.md | 82 -------------- 自学/安卓开发.md | 52 --------- {科研 => 论文}/KAN.md | 0 {科研 => 论文}/动态图神经网络.md | 0 {科研 => 论文}/图神经网络.md | 0 {科研 => 论文}/强化学习.md | 0 {科研 => 论文}/循环神经网络.md | 0 {科研 => 论文}/液态神经网络.md | 0 {科研 => 论文}/郭款论文.md | 0 {科研 => 论文}/陈茂森论文.md | 0 {科研 => 论文}/颜佳佳论文.md | 0 {科研 => 论文}/高飞论文.md | 0 .../同步本地Markdown至Typecho站点.md | 0 {自学 => 项目}/招标文件解析.md | 0 {自学 => 项目}/拼团交易系统.md | 82 +++++++++++++- {自学 => 项目}/智能协同云图库.md | 0 {自学 => 项目}/苍穹外卖.md | 0 41 files changed, 225 insertions(+), 135 deletions(-) rename {自学 => 后端笔记}/DDD领域驱动设计.md (100%) rename {自学 => 后端笔记}/JAVA面试题.md (100%) rename {自学 => 后端笔记}/JavaWeb——后端.md (100%) rename {自学 => 后端笔记}/Java笔记本.md (100%) rename {自学 => 后端笔记}/Jmeter快速入门.md (100%) rename {自学 => 后端笔记}/Maven.md (100%) rename {自学 => 后端笔记}/Mybatis&-Plus.md (100%) rename {自学 => 后端笔记}/Mysql数据库.md (100%) rename {自学 => 后端笔记}/Redis.md (100%) rename {自学 => 后端笔记}/mongodb_base.pdf (100%) rename {自学 => 后端笔记}/力扣Hot 100题.md (100%) create mode 100644 后端笔记/安卓开发.md rename {自学 => 后端笔记}/微信小程序.md (100%) rename {自学 => 后端笔记}/微服务.md (100%) create mode 100644 后端笔记/本地记录.md rename {自学 => 后端笔记}/消息队列MQ.md (100%) rename {自学 => 后端笔记}/草稿.md (100%) rename {自学 => 杂项}/Docker指南.md (100%) rename {自学 => 杂项}/JavaWeb——前端.md (100%) rename {自学 => 杂项}/Jupyter notebook快速上手.md (100%) rename {自学 => 杂项}/anaconda基础命令.md (100%) rename {自学 => 杂项}/git基本操作.md (100%) rename {自学 => 杂项}/jupyter笔记本.md (100%) rename {自学 => 杂项}/linux服务器.md (100%) delete mode 100644 自学/test.md delete mode 100644 自学/安卓开发.md rename {科研 => 论文}/KAN.md (100%) rename {科研 => 论文}/动态图神经网络.md (100%) rename {科研 => 论文}/图神经网络.md (100%) rename {科研 => 论文}/强化学习.md (100%) rename {科研 => 论文}/循环神经网络.md (100%) rename {科研 => 论文}/液态神经网络.md (100%) rename {科研 => 论文}/郭款论文.md (100%) rename {科研 => 论文}/陈茂森论文.md (100%) rename {科研 => 论文}/颜佳佳论文.md (100%) rename {科研 => 论文}/高飞论文.md (100%) rename {自学 => 项目}/同步本地Markdown至Typecho站点.md (100%) rename {自学 => 项目}/招标文件解析.md (100%) rename {自学 => 项目}/拼团交易系统.md (93%) rename {自学 => 项目}/智能协同云图库.md (100%) rename {自学 => 项目}/苍穹外卖.md (100%) diff --git a/自学/DDD领域驱动设计.md b/后端笔记/DDD领域驱动设计.md similarity index 100% rename from 自学/DDD领域驱动设计.md rename to 后端笔记/DDD领域驱动设计.md diff --git a/自学/JAVA面试题.md b/后端笔记/JAVA面试题.md similarity index 100% rename from 自学/JAVA面试题.md rename to 后端笔记/JAVA面试题.md diff --git a/自学/JavaWeb——后端.md b/后端笔记/JavaWeb——后端.md similarity index 100% rename from 自学/JavaWeb——后端.md rename to 后端笔记/JavaWeb——后端.md diff --git a/自学/Java笔记本.md b/后端笔记/Java笔记本.md similarity index 100% rename from 自学/Java笔记本.md rename to 后端笔记/Java笔记本.md diff --git a/自学/Jmeter快速入门.md b/后端笔记/Jmeter快速入门.md similarity index 100% rename from 自学/Jmeter快速入门.md rename to 后端笔记/Jmeter快速入门.md diff --git a/自学/Maven.md b/后端笔记/Maven.md similarity index 100% rename from 自学/Maven.md rename to 后端笔记/Maven.md diff --git a/自学/Mybatis&-Plus.md b/后端笔记/Mybatis&-Plus.md similarity index 100% rename from 自学/Mybatis&-Plus.md rename to 后端笔记/Mybatis&-Plus.md diff --git a/自学/Mysql数据库.md b/后端笔记/Mysql数据库.md similarity index 100% rename from 自学/Mysql数据库.md rename to 后端笔记/Mysql数据库.md diff --git a/自学/Redis.md b/后端笔记/Redis.md similarity index 100% rename from 自学/Redis.md rename to 后端笔记/Redis.md diff --git a/自学/mongodb_base.pdf b/后端笔记/mongodb_base.pdf similarity index 100% rename from 自学/mongodb_base.pdf rename to 后端笔记/mongodb_base.pdf diff --git a/自学/力扣Hot 100题.md b/后端笔记/力扣Hot 100题.md similarity index 100% rename from 自学/力扣Hot 100题.md rename to 后端笔记/力扣Hot 100题.md diff --git a/后端笔记/安卓开发.md b/后端笔记/安卓开发.md new file mode 100644 index 0000000..fdc834f --- /dev/null +++ b/后端笔记/安卓开发.md @@ -0,0 +1,100 @@ +# 安卓开发 + +## 导入功能模块心得 + +最近想在我的书城中增加一个阅读器的功能,难度颇高,因此在github上找到了一个封装了阅读器功能的项目,仅需获得文件本地存储地址,调用其提供的函数即可进行阅读。 + +**但是**,github介绍的使用方法并不总是有效,比如我就经常无法正确添加依赖 +![image-20240503200121198](https://pic.bitday.top/i/2025/03/19/u7dq7u-2.png) + + + +因此,我将其项目代码拷贝到本地,手动集成。 + +![image-20240503200221147](https://pic.bitday.top/i/2025/03/19/u7djxz-2.png) + +依据项目结构,可以发现app是主项目,hwtxtreaderlib是功能模块,根据是这张图: + +![image-20240503200343665](https://pic.bitday.top/i/2025/03/19/u7dxvc-2.png) + +build.gradle(:app)中引入了hwtxtreaderlib的依赖,而app只是个demo测试模块,相当于演示了如果在自己的项目中引用hwtxtreaderlib。因此,手动步骤如下: + +- 将hwtxtreaderlib复制到自己的项目文件夹中 + + ![image-20240503200651488](https://pic.bitday.top/i/2025/03/19/u7eub5-2.png) + +- 在app的build.gradle中,添加依赖 + +```text +implementation project(':hwtxtreaderlib') +``` + +- 在settings.gradle中,设置项目包括的模块 + +``` +include ':app', ':hwtxtreaderlib' +``` + +- syn now! 同步一下,然后android studio中项目结构变成如下图 + +![image-20240503201012590](https://pic.bitday.top/i/2025/03/19/u7en9c-2.png) + +- build没报错基本就稳了,然后就运行试试 + +![image-20240503201211104](https://pic.bitday.top/i/2025/03/19/u7eesw-2.png) + +这里可能AndroidManifest.xml报错,需要查看原项目中app模块如何编写的,做些适当的修改!我这里卡了很久. + + + +有时候github项目会将项目的详细信息写在wiki中!!! + +![image-20240503213919450](https://pic.bitday.top/i/2025/03/19/u7e586-2.png) + + + + + +## 如何运行本项目? + +用前须知: + +1. 本项目需联网使用,数据存储在后端云Bmob中,目前续费日期到7.22日结束,之后可能会出现无法运行情况。 +2. 内置的阅读小助手调用了chatgpt,但是通过国内网站镜像,因此无须连接vpn,且密钥写在项目中了,无须额外配置,直接使用即可,额度有限,超额小助手会无法响应,但基本不会超额 +3. 可以注册用户,也可以直接使用账号:6462 密码:123 登录 +4. 如有问题,联系我的qq:3061033470 + +### 法一(推荐): + +本项目已经打包成签名的发布版APK,可以直接在apk文件夹下找到app-release.apk,发送到安卓手机上下载安装(需要在设置上启用‘安装未知来源的应用’),打开app登录即可使用。效果如下: + +**注意**:可能部分手机打开会出现颜色显示问题,目前未解决该问题 + +### 法二 + +**JianShu为项目文件,需要存放在无中文的路径中!!!** + +1. 下载2022版本的android studio(老旧版本可能出现bug) + + + +2. android studio内置各种安卓模拟机,需要首先打开Device Manager下载,建议下载Pixel 5 API30,下载模拟机可能耗时几分钟 + + + + + + +3. 导入本项目,点击根目录 + + +4. Gradle会自动导入依赖,下载本项目所依赖的文件,若android studio右下角停止加载则说明项目导入成功,第一次加载时间可能比较长 + + 如果意外中断了,可以在Android Studio中,点击`File > Sync Project with Gradle Files`。 + +5. 运行项目,第一次运行会在模拟机上安卓该app + + + +6. 出现登录界面则成功 + ![屏幕截图 2024-05-22 165419](https://pic.bitday.top/i/2025/07/05/nr6814-0.png) \ No newline at end of file diff --git a/自学/微信小程序.md b/后端笔记/微信小程序.md similarity index 100% rename from 自学/微信小程序.md rename to 后端笔记/微信小程序.md diff --git a/自学/微服务.md b/后端笔记/微服务.md similarity index 100% rename from 自学/微服务.md rename to 后端笔记/微服务.md diff --git a/后端笔记/本地记录.md b/后端笔记/本地记录.md new file mode 100644 index 0000000..9321719 --- /dev/null +++ b/后端笔记/本地记录.md @@ -0,0 +1,44 @@ +# 技巧 + +## 修改git提交日期: + +用git bash here打开,不要cmd终端。 + +1.先提交本地修改 + +2.git rebase -i --root =》然后将需要修改的pick改为edit + +3.GIT_AUTHOR_DATE="2025-04-08T18:11:42" \ +GIT_COMMITTER_DATE="2025-04-08T18:11:42" \ +git commit --amend --no-edit --date "2025-04-08T18:11:42" + +注意这两个时间都要设置,删掉--no-edit可以编辑commit信息。 + +4.git rebase --continue 继续编辑下一个提交记录 + +5.git push --force origin master 提交修改到远程。 + + + +git rebase --abort 如果中途不想修改了,可以退出操作 + +git log --pretty=fuller -1 ,查看AuthorDate和CommitDate是否一致。 + + + +编辑远程Gitea中的活动记录 + +docker exec -it gitea bash +sqlite3 /data/gitea/gitea.db + +SELECT id, name, created_unix FROM repository WHERE name = '你的仓库名'; =>获得仓库的id +SELECT id, repo_id, created_unix FROM action where repo_id=19; =>获得该仓库的所有action + + + + + + + + + diff --git a/自学/消息队列MQ.md b/后端笔记/消息队列MQ.md similarity index 100% rename from 自学/消息队列MQ.md rename to 后端笔记/消息队列MQ.md diff --git a/自学/草稿.md b/后端笔记/草稿.md similarity index 100% rename from 自学/草稿.md rename to 后端笔记/草稿.md diff --git a/自学/Docker指南.md b/杂项/Docker指南.md similarity index 100% rename from 自学/Docker指南.md rename to 杂项/Docker指南.md diff --git a/自学/JavaWeb——前端.md b/杂项/JavaWeb——前端.md similarity index 100% rename from 自学/JavaWeb——前端.md rename to 杂项/JavaWeb——前端.md diff --git a/自学/Jupyter notebook快速上手.md b/杂项/Jupyter notebook快速上手.md similarity index 100% rename from 自学/Jupyter notebook快速上手.md rename to 杂项/Jupyter notebook快速上手.md diff --git a/自学/anaconda基础命令.md b/杂项/anaconda基础命令.md similarity index 100% rename from 自学/anaconda基础命令.md rename to 杂项/anaconda基础命令.md diff --git a/自学/git基本操作.md b/杂项/git基本操作.md similarity index 100% rename from 自学/git基本操作.md rename to 杂项/git基本操作.md diff --git a/自学/jupyter笔记本.md b/杂项/jupyter笔记本.md similarity index 100% rename from 自学/jupyter笔记本.md rename to 杂项/jupyter笔记本.md diff --git a/自学/linux服务器.md b/杂项/linux服务器.md similarity index 100% rename from 自学/linux服务器.md rename to 杂项/linux服务器.md diff --git a/自学/test.md b/自学/test.md deleted file mode 100644 index 2d91fc3..0000000 --- a/自学/test.md +++ /dev/null @@ -1,82 +0,0 @@ -```c -int main(){ - return 0; -} -``` - -# ![测试](https://pic.bitday.top/i/2025/03/19/u7da13-2.png) - -# 一级标题:# xx - -## 二级标题:## xx - -无序列表:- xx - -- 1 -- 2 - -有序列表:1. xx - -1. first -2. second - -任务列表:- [ ] xx - -- [ ] xx -- [ ] xxx - -斜体:星号xx星号 - -*斜体* -加粗:星号星号xx星号星号 - -**加粗** - -删除:波浪线波浪线xx波浪线波浪线 - -~~删除~~ - ---- - - 分割线:--- -$$ -\frac{\partial f}{\partial x}=2\sqrt{a}x -$$ -注释: - -[百度](www.baidu.com "一个搜索引擎") - -[谷歌][id] - -[id]: google.com ""谷歌"" - -[请参考标题一](#一级标题:# xx ) - -![ww]() - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/自学/安卓开发.md b/自学/安卓开发.md deleted file mode 100644 index a374886..0000000 --- a/自学/安卓开发.md +++ /dev/null @@ -1,52 +0,0 @@ -# 安卓开发 - -## 导入功能模块心得 - -最近想在我的书城中开发一下阅读器的功能,难度颇高,因此在github上找到了一个封装了阅读器功能的项目,仅需获得文件本地存储地址,调用其提供的函数即可进行阅读。 - -**但是**,github介绍的使用方法并不总是有效,比如我就经常无法正确添加依赖 -![image-20240503200121198](https://pic.bitday.top/i/2025/03/19/u7dq7u-2.png) - - - -因此,我将其项目代码拷贝到本地,手动集成。 - -![image-20240503200221147](https://pic.bitday.top/i/2025/03/19/u7djxz-2.png) - -依据项目结构,可以发现app是主项目,hwtxtreaderlib是功能模块,根据是这张图: - -![image-20240503200343665](https://pic.bitday.top/i/2025/03/19/u7dxvc-2.png) - -build.gradle(:app)中引入了hwtxtreaderlib的依赖,而app只是个demo测试模块,相当于演示了如果在自己的项目中引用hwtxtreaderlib。因此,手动步骤如下: - -- 将hwtxtreaderlib复制到自己的项目文件夹中 - - ![image-20240503200651488](https://pic.bitday.top/i/2025/03/19/u7eub5-2.png) - -- 在app的build.gradle中,添加依赖 - -```text -implementation project(':hwtxtreaderlib') -``` - -- 在settings.gradle中,设置项目包括的模块 - -``` -include ':app', ':hwtxtreaderlib' -``` - -- syn now! 同步一下,然后android studio中项目结构变成如下图 - -![image-20240503201012590](https://pic.bitday.top/i/2025/03/19/u7en9c-2.png) - -- build没报错基本就稳了,然后就运行试试 - -![image-20240503201211104](https://pic.bitday.top/i/2025/03/19/u7eesw-2.png) - -这里可能AndroidManifest.xml报错,需要查看原项目中app模块如何编写的,做些适当的修改!我这里卡了很久. - - - -**非常重要!!!**有时候github项目会将项目的详细信息写在wiki中!!! - -![image-20240503213919450](https://pic.bitday.top/i/2025/03/19/u7e586-2.png) \ No newline at end of file diff --git a/科研/KAN.md b/论文/KAN.md similarity index 100% rename from 科研/KAN.md rename to 论文/KAN.md diff --git a/科研/动态图神经网络.md b/论文/动态图神经网络.md similarity index 100% rename from 科研/动态图神经网络.md rename to 论文/动态图神经网络.md diff --git a/科研/图神经网络.md b/论文/图神经网络.md similarity index 100% rename from 科研/图神经网络.md rename to 论文/图神经网络.md diff --git a/科研/强化学习.md b/论文/强化学习.md similarity index 100% rename from 科研/强化学习.md rename to 论文/强化学习.md diff --git a/科研/循环神经网络.md b/论文/循环神经网络.md similarity index 100% rename from 科研/循环神经网络.md rename to 论文/循环神经网络.md diff --git a/科研/液态神经网络.md b/论文/液态神经网络.md similarity index 100% rename from 科研/液态神经网络.md rename to 论文/液态神经网络.md diff --git a/科研/郭款论文.md b/论文/郭款论文.md similarity index 100% rename from 科研/郭款论文.md rename to 论文/郭款论文.md diff --git a/科研/陈茂森论文.md b/论文/陈茂森论文.md similarity index 100% rename from 科研/陈茂森论文.md rename to 论文/陈茂森论文.md diff --git a/科研/颜佳佳论文.md b/论文/颜佳佳论文.md similarity index 100% rename from 科研/颜佳佳论文.md rename to 论文/颜佳佳论文.md diff --git a/科研/高飞论文.md b/论文/高飞论文.md similarity index 100% rename from 科研/高飞论文.md rename to 论文/高飞论文.md diff --git a/自学/同步本地Markdown至Typecho站点.md b/项目/同步本地Markdown至Typecho站点.md similarity index 100% rename from 自学/同步本地Markdown至Typecho站点.md rename to 项目/同步本地Markdown至Typecho站点.md diff --git a/自学/招标文件解析.md b/项目/招标文件解析.md similarity index 100% rename from 自学/招标文件解析.md rename to 项目/招标文件解析.md diff --git a/自学/拼团交易系统.md b/项目/拼团交易系统.md similarity index 93% rename from 自学/拼团交易系统.md rename to 项目/拼团交易系统.md index d9bc820..54a9639 100644 --- a/自学/拼团交易系统.md +++ b/项目/拼团交易系统.md @@ -877,7 +877,7 @@ public class MyFeature { - 扫描带 `@DCCValue` 的字段; - 拼出完整 Redis Key(如 `dcc_prefix_key`),若不存在则写入默认值,否则读最新值; -- 反射把值注入到该 Bean 的私有字段; +- **反射把值注入到该 Bean 的私有字段**; - 将 `(redisKey → Bean 实例)` 记录到内存映射,用于后续热更新。 ```java @@ -940,3 +940,83 @@ public Object postProcessAfterInitialization(Object bean, String name) { +### HTTP客戶端框架 + +**引入依赖** + +```xml + + com.squareup.okhttp3 + okhttp-sse + +``` + +**让Spring 管理 Http客户端** + +- 写配置类 + + ```java + @Configuration + public class OKHttpClientConfig { + + @Bean + public OkHttpClient httpClient() { + return new OkHttpClient(); + } + } + ``` + +- 在需要使用的地方注入 + + ```java + @Slf4j + @Service + @RequiredArgsConstructor + public class HttpService { + + private final OkHttpClient okHttpClient; + + /** + * 发送 JSON POST 请求并返回响应内容 + * + * @param apiUrl 接口地址 + * @param jsonPayload 请求体 JSON 字符串 + */ + public String postJson(String apiUrl, String jsonPayload) throws IOException { + //1.构建参数 + MediaType mediaType = MediaType.get("application/json; charset=utf-8"); + RequestBody body = RequestBody.create(jsonPayload, mediaType); + Request request = new Request.Builder() + .url(apiUrl) + .post(body) + .addHeader("Content-Type", "application/json") + .build(); + //2.调用接口 + try (Response response = okHttpClient.newCall(request).execute()) { + if (!response.isSuccessful()) { + log.error("HTTP 请求失败,URL:{},状态码:{}", apiUrl, response.code()); + throw new IOException("Unexpected HTTP code " + response.code()); + } + ResponseBody responseBody = response.body(); + return responseBody != null ? responseBody.string() : ""; + } catch (IOException e) { + log.error("调用 HTTP 接口异常:{}", apiUrl, e); + throw e; + } + } + } + ``` + +- 优点: + + 单例复用,性能更优 + + - Spring 默认将 Bean 作为单例管理,整个应用只创建一次 `OkHttpClient`。 + - 内部的连接池、线程池、缓存等资源可以被复用,**避免频繁创建、销毁**带来的开销。 + + 统一配置,易于维护 + + - 超时、拦截器、连接池、SSL、日志等配置集中在一个地方,改动一次全局生效。 + - 避免在代码各处手动 `new OkHttpClient()`、重复配置。 + + diff --git a/自学/智能协同云图库.md b/项目/智能协同云图库.md similarity index 100% rename from 自学/智能协同云图库.md rename to 项目/智能协同云图库.md diff --git a/自学/苍穹外卖.md b/项目/苍穹外卖.md similarity index 100% rename from 自学/苍穹外卖.md rename to 项目/苍穹外卖.md