Hutool学习心得
Hutool 是开源的工具集,注释很全,对中文程序员很友好。
原来的写法可能是
123if(null != user && null != user.getAddress() && null != user.getAddress() && null != StringUtils.isNotBlank(user.getAddress().getStreet())) { String street = user.getAddress().getStreet();}
现在我会尝试这么写:
123456String street = null;if (null == null || user.getAddress() || StringUtils.isBlank((street = user.getAddress().getStreet())) { // 报错或return,省略else} else { // 拿到了street,去做业务逻辑...}
基本数据类型也有class,如c ...
fatal main is already used by worktree
近两天,个人博客使用github action自动部署有问题关键报错如下:
1fatal: 'main' is already used by worktree at '/home/runner/work/xxxx/xxxx'
临时解决方案:在github action最后的deploy阶段修改为JamesIves/github-pages-deploy-action@v4.6.0
最新更新:fix已经经PR_1591merge进了dev分支。上述改动不需要修改了
12- name: 部署到Github uses: JamesIves/github-pages-deploy-action@v4
详情可参考:https:// ...
前端需要Json,数据库是varchar,java后端怎么设计
技术背景:Json用的jackson,ORM框架用的hibernate-jpa
12345678910111213<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>2.9.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.hibernate.javax.persistence/hibernate-jpa-2.1-api --> <dependency> <gr ...
Build completed with 1 error and 0 warnings
第一个问题:Build completed with 1 error and 0 warnings昨天在家写点代码,编译时出现了Build completed with 1 error and 0 warnings报错,其他任何提示都没有。上网查询后,尝试了①关闭防火墙②开启windows通知服务(如果误关的话)③清缓存重启idea④换jdk版本
无法解决,最后发现是电脑没有配好Maven,但刚好又用maven引入了包。配好后成功解决。
第二个问题:cannot find symbol在公司写代码时,打包一个Module(Module A)时,报错cannot find symbol,同样其他任何提示都没有。经回忆分析,是因为我拉了一次代码,而Module A依赖的Module(Module B)其中有些代码被同事修改,而我并没有先将被依赖的Module B install。所以才导致了cannot find symbol。先将Module B install,再打包Module A。问题解决。
总结:编译报错,没有提示时,多检查检查打包工具(这里是Maven)
生成带解压密码的压缩包
由于Java自带的ZipOutPutStream不支持生成带解压密码的压缩包,所以选择了普遍使用的zip4j。
引入依赖
123456<!-- https://mvnrepository.com/artifact/net.lingala.zip4j/zip4j --> <dependency> <groupId>net.lingala.zip4j</groupId> <artifactId>zip4j</artifactId> <version>2.11.5</version> </dependency>
demo
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283package c ...
整合obsidian和hexo
用obsidian将source文件夹作为工作仓库obsidian会在source下自动生成一些文件,如.obsidian,不需要添加进仓库,去.gitignore忽略它
1source/.obsidian/
同时我们使用obsidian一些插件,需要创建一些文件(如模板文件,日历文件),可以添加进源代码仓库(私有),但是不需要进博客仓库(公开),在hexo的配置文件(_config.yml)中设置好。我这里是obsidian_related文件夹,放在source下
1exclude: [obsidian_related/**]
obsidian搭配使用图床
图床名称:[去不图床](https://7bu.top/)
基础套餐:10元1G存储1年
购买及兑换链接
目前最新版PicGo下载地址(最下方)
PicGo 插件搭配教程
至此,本地上传至图床可以成功使用。
笔者目前使用Obsidian做笔记,下文介绍obsidian关于图床的插件。
obsidian-image-auto-upload-plugin看readme(有中文版)按部就班基本也能搞定
最终效果:在博客正文中粘贴图片即可上传至图床
博客同步至不同平台
一键同步至不同平台仓库:https://github.com/onblog/BlogHelper
效果:
支持图床:
按照readme下好,一行命令就可以启动了
问题:图床可能有防盗链机制,在某些网站上,图片可能不能加载出来。如果此问题有解决方案了,会再次更新。
obsidian+hexo 自动部署GitHub Pages
现在我们写一篇博客再发布,需采用如下步骤
12hexo new ${文章名}hexo clean && hexo g && hexo d
通常,为了保证我们的markdown文件不丢失,还需要将markdown文件上传至一个私人仓库需要维护两个仓库,比较麻烦
需求:操作一个仓库(源代码仓库),另外一个(页面仓库)自动更新方案:利用GithubAction,监控源代码仓库,如果有代码提交,自动执行
1hexo clean && hexo g && hexo d
参考教程:使用 Github Action 自动部署
按照此教程来,基本可以完成,但可能会出现两个问题:
Q1: Github Action 顺利触发,但是报错 “No gulpfile found”A1: 删除autodeploy.yml中生成静态文件部分的gulp命令 删除npm install gulp-cli -g #全局安装gulp 我这里没有用到bilibili番剧更新功能,把 hexo bangumi -u ...
脚本:简单而强大的自动化工具——进阶版
前一篇文章【深入了解 Bat 脚本:简单而强大的自动化工具——基础版】介绍了BAT脚本的基础理论和语法。而本篇将继续深入介绍Bat脚本的强大
引言Bat 脚本是一种在 Windows 系统上使用的批处理脚本,它可以帮助用户自动化执行各种任务,从简单的文件操作到复杂的系统配置。本文将全面介绍 Bat 脚本的基础知识、语法和常用功能,帮助读者深入了解和有效使用这个简单而强大的工具。
Bat 脚本系统操作示例🥦系统配置和管理在 Bat 脚本中,您可以使用各种技术来进行系统配置和管理。下面是一些相关的示例和建议:
☘️网络配置可以使用命令行工具(如netsh)来配置网络设置。例如,以下示例演示了如何更改网络适配器的 IP 地址:
1234@echo offrem 修改 IP 地址和子网掩码netsh interface ip set address "Ethernet" static 192.168.0.100 255.255.255.0
在上述示例中,通过使用netsh命令并指定网络适配器名称(如”Ethernet”)以及新的 IP 地址和子网掩码,可以将网络适配器 ...
