首页
分类
后端开发
数据库
前端开发
学习笔记
错误合集
标签
Java
MySQL
MongoDB
Linux
IDEA
归档
海尔经典面试题
Linux清理磁盘空间
MySQL查询结果输出到文件
MongoDB数据处理
瞬间
留言板
友情链接
Java学习笔记
Java博客
累计撰写
72
篇文章
累计创建
28
个标签
累计收到
12
条评论
栏目
首页
分类
后端开发
数据库
前端开发
学习笔记
错误合集
标签
Java
MySQL
MongoDB
Linux
IDEA
归档
海尔经典面试题
Linux清理磁盘空间
MySQL查询结果输出到文件
MongoDB数据处理
瞬间
留言板
友情链接
Java学习笔记
目 录
CONTENT
以下是
星廿
的文章
2024-12-10
Spring Boot 重试机制@Retryable
**摘要(198字):** `@Retryable` 是 Spring Retry 提供的注解,用于在方法抛出指定异常时自动重试,支持配置最大重试次数、延迟策略和异常类型。`@Recover` 用于处理重试失败后的异常,实现恢复逻辑,可与 `@Retryable` 配合使用,分离重试与恢复逻辑。多个 `@Retryable` 方法可在同一类中定义,各自拥有独立的 `@Recover` 方法,通过异常类型和方法命名匹配对应关系。若未指定 `value`,默认重试所有异常。`@Recover` 方法需与 `@Retryable` 方法抛出的异常类型一致,Spring 通过方法参数类型和命名进行匹配,支持多方法共享相同异常类型但各自独立恢复。
2024-12-10
43
0
0
后端开发
2024-11-13
使用aligo将数据备份到阿里云盘
本文介绍了一个通过Python脚本实现Halo博客自动备份并上传至阿里云盘的方案。核心依赖库为`aligo`,用于操作阿里云盘,结合`requests`库调用Halo的备份API。脚本首先通过POST请求触发Halo备份,随后轮询检查备份状态,待备份完成后,将生成的压缩包上传至指定阿里云盘文件夹。文中详细列出了需要配置的参数,如网站地址、备份路径、阿里云盘目录ID及Halo账号密码。部署时需确保Python 3.7+环境,并安装`requests`和`aligo`依赖,若安装失败可从GitHub下载whl包手动安装。首次运行需扫码登录阿里云盘,之后即可自动完成备份与上传,实现博客数据的定期云端存储备份。
2024-11-13
45
0
0
学习笔记
建站系统
2024-09-29
使用 Docker 部署 Waline 评论组件
本文介绍了如何使用 Docker 部署 Waline 评论系统。Waline 是一个基于 Vercel Serverless 的轻量级评论组件,部署步骤包括:首先确保系统已安装 Docker;接着下载 Waline Docker 镜像;创建 `config.yml` 配置文件,填写域名、应用 ID、密钥等信息;然后通过 Docker 命令启动容器,配置数据库、邮箱、站点信息等环境变量;最后在网站中插入 Waline 客户端代码,绑定域名即可使用。文章还列出了常见问题,如 Docker 安装、配置文件错误、容器启动失败和网站代码配置不当等,并建议参考官方文档或社区支持解决。整个过程简洁高效,适合快速集成到个人或企业网站中。
2024-09-29
69
0
0
软件推荐
建站系统
2024-09-29
使用 Docker 部署 Artalk 评论组件
Artalk 是一个开源评论组件,可便捷集成至网站或博客,支持用户互动。通过 Docker 部署可简化流程、提升效率。部署步骤包括:安装 Docker、拉取 `artalk/artalk` 镜像、运行容器并映射端口(如 8667:23366)、配置环境变量(如站点名称、可信域名等)、设置管理员账号。配置文件位于容器 `/app/config.json`,可通过命令行进入容器编辑或使用 `artalk admin` 初始化账号。部署完成后,访问 `http://localhost:3000` 即可进入管理界面。最后,按文档将评论组件嵌入网站。整体流程清晰高效,适合快速搭建评论系统。
2024-09-29
89
0
1
建站系统
软件推荐
2024-09-09
SpringBoot多数据源集成——MongoDB
本文介绍了在Spring Boot项目中实现根据业务条件动态切换MongoDB数据源的完整方案。首先通过`spring-boot-starter-data-mongodb`引入依赖,并在配置文件中定义多个数据库(如`default`和`csfa`)。通过`MongoParamsConfig`读取配置,`MongoConfig`类创建多个`MongoTemplate`实例,支持用户名密码认证。为避免保存`_class`字段,扩展了`MappingMongoConverter`。动态切换数据源可通过手动设置`ThreadLocal`标识,结合`DynamicMongoTemplate`选择对应模板;或通过AOP切面自动切换,实现无侵入式数据源切换。针对`MongoRepository`的自定义方法无法通过AOP生效的问题,提出了两种解决方案:一是直接使用`MongoTemplate`;二是创建自定义接口及实现类,继承`MongoRepository`,实现动态数据源调用。该方案适用于需多库动态查询的复杂业务场景,兼顾灵活性与可维护性。
2024-09-09
107
0
7
后端开发
数据库
2024-08-31
SpringBoot多数据源集成——MySQL
本文介绍了在Spring Boot项目中实现基于条件动态切换MySQL数据库的完整方案。通过配置多个数据源(如default、csfa),并使用`AbstractRoutingDataSource`结合`ThreadLocal`实现数据源动态路由。配置包括Maven依赖、`application.yml`中多数据源定义、`DataSourceConfig`类中通过`@ConfigurationProperties`加载数据源并构建`DynamicDataSource`。为避免循环依赖,需添加`@Lazy`注解,为指定默认数据源需使用`@Primary`。提供三种切换方式:手动切换、注解+AOP自动切换、拦截器自动切换。注解方式支持类/方法级别指定数据源,AOP切面需注意执行顺序(`@Order(-1)`)并处理事务嵌套问题。拦截器可从请求头获取`bus-tab`动态设置数据源,实现无侵入式切换。三种方式可组合使用,灵活满足不同场景需求。此外,也提及可使用Apache ShardingSphere实现更高级的动态数据源管理。
2024-08-31
51
0
3
后端开发
数据库
2024-07-05
TypeScript语法
本文介绍了TypeScript的核心类型系统,包括原始类型(string、number、boolean)、数组、any类型、对象类型(含可选属性)、联合类型、类型别名、类型断言、字面类型以及null和undefined的处理。通过类型别名和联合类型,开发者可增强代码可读性和可维护性;类型断言和非空断言则帮助在特定场景下更灵活地处理类型。文章强调,TypeScript作为JavaScript的超集,通过静态类型检查、更好的IDE支持、提升代码可维护性与安全性,特别适用于大型项目和团队协作,虽在小型项目中可能显得冗余,但在复杂系统中能显著提高开发效率和代码质量。
2024-07-05
162
0
0
软件推荐
前端开发
2024-07-04
TypeScript的安装和使用
TypeScript是JavaScript的超集,引入静态类型系统,提升代码可维护性、可读性和开发效率,尤其适用于大型团队协作项目。其主要优势包括静态类型检查、更好的IDE支持、增强的面向对象特性、兼容JavaScript运行环境以及提前预防错误。安装可通过npm全局安装,并使用`tsc`命令编译。基础使用中,`.ts`文件经编译生成`.js`文件后可由Node执行。进阶使用可通过Sublime Text 4或IDEA实现自动编译:Sublime通过自定义编译系统集成`tsc`与`node`命令,IDEA则通过`tsconfig.json`配置输出目录并启用监听或配置运行前编译任务,实现开发流程自动化。选择TypeScript还是JavaScript,需根据项目规模和团队需求权衡。
2024-07-04
108
0
1
前端开发
软件推荐
2024-06-20
使用SSH登录远程服务器
当已配置密钥文件却仍被提示输入密码时,通常是因本地与远程服务器SSH版本不兼容,导致密钥算法不被识别。可通过在SSH命令中添加`-o`参数指定兼容算法解决,例如:`ssh -o PubkeyAcceptedKeyTypes=+ssh-rsa -o HostkeyAlgorithms=+ssh-rsa -i '/Users/mymac/.ssh/id_rsa' zndev@123.57.20.71`。同时,建议更新本地SSH客户端和服务器SSH服务以提升兼容性。若问题依旧,需检查密钥文件权限、服务器SSH配置,确保公钥正确无格式错误地添加至`authorized_keys`文件。Windows用户可尝试使用PuTTY或Git Bash等替代客户端进行连接。
2024-06-20
134
0
4
错误合集
建站系统
2024-06-19
Java版本切换
本文介绍了三种在多版本Java环境中切换 `JAVA_HOME` 的方法。第一种是使用 `jEnv`,通过安装、配置并添加Java版本路径,支持全局、会话或项目级别切换,操作灵活。第二种是手动修改 `.zshrc` 或 `.bash_profile` 文件,通过定义别名快速切换不同版本,适合简单场景。第三种是使用 `SDKMAN`,自动安装和管理Java版本,语法简洁,支持便捷切换。三种方法各有优劣:`jEnv` 和 `SDKMAN` 功能全面、易于管理,适合复杂环境;手动切换则轻量、易理解,适用于基础需求。用户可根据实际使用场景和个人偏好选择合适方案。
2024-06-19
84
0
0
建站系统
开发工具
1
2
3
4
5
6
7
鄂ICP备20003961号-3