Skip to content

Commit ba08996

Browse files
committed
Choco
1 parent 5ea6478 commit ba08996

31 files changed

+275
-80
lines changed

README.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -292,19 +292,18 @@
292292

293293
- [Tabby:一款逼格更高的开源终端工具](docs/gongju/tabby.md)
294294
- [Warp:一款21世纪人用的终端工具](docs/gongju/warp.md)
295-
- [Chocolatey Homebrew:两款惊艳的Shell软件管理器](docs/gongju/Chocolatey-Homebrew.md)
295+
- [Chocolatey:一款GitHub星标8.2k+的Windows命令行软件管理器](docs/gongju/choco.md)
296296
- [chiner:一款开源的数据库设计神器](docs/gongju/chiner.md)
297297
- [DBeaver:一款免费的数据库操作工具](docs/gongju/DBeaver.md)
298+
- [Forest:一款极简的声明式HTTP调用API框架](docs/gongju/forest.md)
298299
- [Junit:一个开源的Java单元测试框架](docs/gongju/junit.md)
299300
- [fastjson:阿里巴巴开源的JSON解析库](docs/gongju/fastjson.md)
300301
- [Gson:Google开源的JSON解析库](docs/gongju/gson.md)
301302
- [Jackson:GitHub上star数最多的JSON解析库](docs/gongju/jackson.md)
302-
- [Forest:一款极简的声明式HTTP调用API框架](docs/gongju/forest.md)
303-
- [Log4j:Log4j 2的前身,Java日志框架的鼻祖](docs/gongju/log4j.md)
303+
- [Log4j:Java日志框架的鼻祖](docs/gongju/log4j.md)
304304
- [Log4j 2:Apache维护的一款高性能日志记录工具](docs/gongju/log4j2.md)
305305
- [Logback:Spring Boot内置的日志处理框架](docs/gongju/logback.md)
306306
- [SLF4J:阿里巴巴强制使用的日志门面担当](docs/gongju/slf4j.md)
307-
- [其他辅助工具/轮子](docs/gongju/others.md)
308307

309308

310309
## 安全篇

docs/.vuepress/sidebar.ts

Lines changed: 57 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -731,21 +731,63 @@ export const sidebarConfig = defineSidebarConfig({
731731
text: "3.5 辅助工具/轮子",
732732
collapsable: true,
733733
children: [
734-
"gongju/tabby",
735-
"gongju/warp",
736-
"gongju/Chocolatey-Homebrew",
737-
"gongju/chiner",
738-
"gongju/DBeaver",
739-
"gongju/junit",
740-
"gongju/gson",
741-
"gongju/fastjson",
742-
"gongju/jackson",
743-
"gongju/forest",
744-
"gongju/log4j",
745-
"gongju/log4j2",
746-
"gongju/logback",
747-
"gongju/slf4j",
748-
"gongju/others",
734+
{
735+
text: "Tabby",
736+
link: "gongju/tabby",
737+
},
738+
{
739+
text: "Warp",
740+
link: "gongju/warp",
741+
},
742+
{
743+
text: "Chocolatey",
744+
link: "gongju/choco",
745+
},
746+
{
747+
text: "chiner",
748+
link: "gongju/chiner",
749+
},
750+
{
751+
text: "DBeaver",
752+
link: "gongju/DBeaver",
753+
},
754+
{
755+
text: "Forest",
756+
link: "gongju/forest",
757+
},
758+
{
759+
text: "Junit",
760+
link: "gongju/junit",
761+
},
762+
{
763+
text: "fastjson",
764+
link: "gongju/fastjson",
765+
},
766+
{
767+
text: "Gson",
768+
link: "gongju/gson",
769+
},
770+
{
771+
text: "Jackson",
772+
link: "gongju/jackson",
773+
},
774+
{
775+
text: "Log4j",
776+
link: "gongju/log4j",
777+
},
778+
{
779+
text: "Log4j2",
780+
link: "gongju/log4j2",
781+
},
782+
{
783+
text: "Logback",
784+
link: "gongju/logback",
785+
},
786+
{
787+
text: "SLF4J",
788+
link: "gongju/slf4j",
789+
},
790+
749791
],
750792
},
751793
{

docs/gongju/DBeaver.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
---
2+
title: DBeaver:一款免费的数据库操作工具
23
category:
34
- Java企业级开发
45
tag:
56
- 辅助工具/轮子
67
---
78

89

9-
# DBeaver:一款免费的数据库操作工具
10-
11-
1210
作为一名开发者,免不了要和数据库打交道,于是我们就需要一款顺手的数据库管理工具。很长一段时间里,Navicat 都是我的首选,但最近更换了一台新电脑,之前的绿色安装包找不到了。
1311

1412
于是就琢磨着,找一款免费的,功能和 Navicat 有一拼的数据库管理工具来替代。好朋友 macrozheng 给我推荐了 DBeaver,试用完后体验真心不错,于是就来给大家安利一波。
@@ -19,7 +17,7 @@ DBeaver 是一个跨平台的数据库管理工具,支持 Windows、Linux 和
1917

2018
DBeaver 是由 Java 编写的,默认使用 JDK 11 进行编译。社区版基于 [Apache-2.0 License](https://github.com/dbeaver/dbeaver/blob/devel/LICENSE.md) 在 GitHub 上开源,目前已获得 24k+ 的星标。
2119

22-
>https://github.com/dbeaver/dbeaver
20+
>[https://github.com/dbeaver/dbeaver](https://github.com/dbeaver/dbeaver)
2321
2422
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/DBeaver-1.png)
2523

@@ -31,7 +29,7 @@ DBeaver 支持几乎所有主流的数据库,包括关系型数据库和非关
3129

3230
可以通过 DBeaver 官方下载安装包,也可以通过 GitHub 下载 release 版本。
3331

34-
>官方下载地址:https://dbeaver.io/download/
32+
>官方下载地址:[https://dbeaver.io/download/](https://dbeaver.io/download/)
3533
3634
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/DBeaver-3.png)
3735

@@ -42,7 +40,7 @@ DBeaver 支持几乎所有主流的数据库,包括关系型数据库和非关
4240

4341
因为 DBeaver 是基于 [Maven 构建](https://github.com/itwanger/toBeBetterJavaer/blob/master/docs/maven/maven.md)的,数据库驱动也就是链接数据库的 JDBC 驱动是通过 Maven 仓库下载的。选择「首选项」→「Maven」,添加阿里云镜像地址:
4442

45-
>http://maven.aliyun.com/nexus/content/groups/public
43+
>[http://maven.aliyun.com/nexus/content/groups/public](http://maven.aliyun.com/nexus/content/groups/public)
4644
4745
和配置 Maven 镜像一样,如下图所示。
4846

docs/gongju/chiner.md

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,20 @@
11
---
2+
title: chiner:一款开源的数据库设计神器
23
category:
34
- Java企业级开发
45
tag:
56
- 辅助工具/轮子
67

78
---
89

9-
10-
# chiner:一款开源的数据库设计神器
11-
12-
1310
最近在造轮子,从 0 到 1 的那种,就差前台的界面了,大家可以耐心耐心耐心期待一下。其中需要设计一些数据库表,可以通过 Navicat 这种图形化管理工具直接开搞,也可以通过一些数据库设计工具来搞,比如说 PowerDesigner,更专业一点。
1411

1512
今天我给大家推荐的这款国人开源的数据库设计工具 chiner,界面漂亮,功能强大,体验后给我的感觉是真香......
1613

1714
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/chiner-1.png)
1815

1916

20-
### 一、 关于 PowerDesigner
17+
### 一、关于 PowerDesigner
2118

2219
PowerDesigner 是一款功能非常强大的建模工具,可以和 Rational Rose 媲美。Rose 专攻 UML 对象模型的建模,之后才拓展到数据库这块。而 PowerDesigner 是一开始就为数据库建模服务的,后来才发展为一款综合战斗力都还不错的建模工具。
2320

@@ -43,7 +40,7 @@ chiner,发音:[kaɪˈnər],使用React+Electron+Java技术体系构建的
4340

4441
chiner 支持 Windows、macOS 和 Linux,下载地址如下所示:
4542

46-
>https://gitee.com/robergroup/chiner/releases
43+
>[https://gitee.com/robergroup/chiner/releases](https://gitee.com/robergroup/chiner/releases)
4744
4845
码云做了外部链接的拦截,导致直接复制链接到地址栏才能完成下载。我这里以 macOS 为例。
4946

@@ -155,11 +152,11 @@ chiner 还有更多更强大的功能,大家觉得不错的话,可以去尝
155152

156153
项目地址:
157154

158-
>https://gitee.com/robergroup/chiner
155+
>[https://gitee.com/robergroup/chiner](https://gitee.com/robergroup/chiner)
159156
160157
使用手册:
161158

162-
>https://www.yuque.com/chiner/docs/manual
159+
>[https://www.yuque.com/chiner/docs/manual](https://www.yuque.com/chiner/docs/manual)
163160
164161

165162
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/xingbiaogongzhonghao.png)

docs/gongju/choco.md

Lines changed: 179 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,179 @@
1+
---
2+
category:
3+
- Java企业级开发
4+
tag:
5+
- 辅助工具/轮子
6+
title: chocolatey:一款 GitHub 星标 8.2k+的Windows命令行软件管理器
7+
8+
---
9+
10+
小二是公司新来的实习生,之前面试的过程中对答如流,所以我非常看好他。第一天,我给他了一台新电脑,要他先在本地搭建个 Java 开发环境。
11+
12+
二话不说,他就开始马不停蹄地行动了。**真没想到,他竟然是通过命令行的方式安装的 JDK,一行命令就搞定了!连环境变量都不用配置,这远远超出了我对他的预期**
13+
14+
我以为,他会傻乎乎地下一步下一步来安装 JDK,就像这样。
15+
16+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-9050933d-61f2-4d79-bad7-982803fc174a)
17+
18+
然后这样配置环境变量。
19+
20+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-4adb249c-a662-42af-9c7e-08deeb11c835)
21+
22+
结果他是这样的,就一行命令,环境变量也不用配置!
23+
24+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-5c996f2a-6d14-4f9d-acd4-ff1cf959b55f)
25+
26+
卧槽!牛逼高大上啊!
27+
28+
看着他熟练地在命令行里安装 JDK 的样子,我的嘴角开始微微上扬,真不错!这次总算招到了一个靠谱的。
29+
30+
于是我就安排他做一个记录,打算发表在我的小破站《Java 程序员进阶之路》上。从他嘴里了解到,他用的命令行软件管理器叫 chocolatey,这是一个Windows下的命令行软件管理器,在 GitHub 上已经收获 8.2k+的星标,可以方便开发者像在Linux下使用yum命令来安装软件,或者像在macOS下使用brew 命令来安装软件,非常酷炫。
31+
32+
33+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-c598af06-7a85-47ca-ade4-e07c60463990)
34+
35+
36+
以下是他的记录,一起来欣赏下。
37+
38+
### 先来了解 shell
39+
40+
对于一名 Java 后端程序员来说,初学阶段,你可以选择在 IDE 中直接编译运行 Java 代码,但有时候也需要在 Shell 下编译和运行 Java 代码。
41+
42+
>Windows 下自带的 Shell 叫命令提示符,或者 cmd 或者 powershell,macOS 下叫终端 terminal。
43+
44+
但当你需要在生产环境下部署 Java项目或者查看日志的话,就必然会用到 Shell,这个阶段,Shell 的使用频率高到可以用一个成语来形容——朝夕相伴。
45+
46+
一些第三方软件会在原生的 Shell 基础上提供更强大的功能,常见的有 tabby、Warp、xhsell、FinalShell、MobaXterm、Aechoterm、WindTerm、termius、iterm2 等等,有些只能在 Windows 上使用,有些只能在 macOS 上使用,有些支持全平台。还有 ohmyzsh 这种超神的 Shell 美化工具。
47+
48+
这里,我们列举一些 Shell 的基本操作命令(Windows 和 macOS/Linux 有些许差异):
49+
50+
- 切换目录,可以使用 cd 命令切换目录,`cd ..` 返回上级目录。
51+
52+
53+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-b329cba9-4982-44ec-9935-3c9eb5b92eab)
54+
55+
- 目录列表,macos/linux 下可以使用 ls 命令列出目录下所有的文件和子目录(Windows 下使用 dir 命令),使用通配符 `*` 对展示的内容进行过滤,比如 `ls *.java` 列出所有 `.java`后缀的文件,如果想更进一步的话,可以使用 `ls H*.java` 列出所有以 H 开头 `.java` 后缀的文件。
56+
- 新建目录,macOS/Linux 下可以使用 mkdir 命令新建一个目录(比如 `mkdir hello` 可以新建一个 hello 的目录),Windows 下可以使用 md 命令。
57+
- 删除文件,macOS/Linux 下可以使用 `rm` 命令删除文件(比如 `rm hello.java` 删除 hello.java 文件),Windows 下可以使用 del 命令。
58+
- 删除目录,macOS/Linux 下可以使用 `rm -r` 命令删除目录以及它所包含的所有文件(比如说 `rm -r hello` 删除 hello 目录)。Windows 下可以使用 deltree 命令。
59+
- 重复命令,macOS/Linux/Windows 下都可以使用上下箭头来选择以往执行过的命令。
60+
61+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-bdd0a107-512d-4906-9555-38fe06d24d5a)
62+
63+
- 命令历史,macOS/Linux 下可以使用 `history` 命令查看所有使用过的命令。Windows 可以按下 F7 键。
64+
65+
66+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-d6425fe6-1501-412e-9642-990864e6f810)
67+
68+
- 解压文件,后缀名为“.zip”的文件是一个包含了其他文件的压缩包,macOS/Linux 系统自身已经提供了用于解压的 unzip 命令, Windows 的话需要手动安装。
69+
70+
### 再来了解chocolatey
71+
72+
先安装 chocolatey。这是一个Windows下的命令行软件管理器,可以方便开发者像在Linux下使用yum命令来安装软件,或者像在macOS下使用brew 命令来安装软件,非常酷炫。
73+
74+
>The biggest challenge is reducing duplication of effort, so users turn to Chocolatey for simplicity
75+
76+
传统的安装方式要么非常耗时,要么非常低效,在命令行安装软件除了简单高效,还能自动帮我们配置环境变量。
77+
78+
>- 官方地址:[https://chocolatey.org/](https://chocolatey.org/)
79+
>- 安装文档:[https://chocolatey.org/install#individual](https://chocolatey.org/install#individual)
80+
81+
第一步,以管理员的身份打开 cmd 命令行。
82+
83+
84+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-f01fb23b-9ca5-4997-acc3-26ebd7da060f)
85+
86+
第二步,执行以下命令:
87+
88+
```
89+
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
90+
```
91+
92+
稍等片刻,就完成安装了。
93+
94+
安装完成后如下图所示:
95+
96+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-e9696a71-ceb5-4c62-b39f-876f742b6435)
97+
98+
如果不确定是否安装成功的话,可以通过键入 `choco` 命令来确认。
99+
100+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-211a2335-d3e1-49b5-8735-feabacf8087e)
101+
102+
这里推荐几个非常高效的操作命令:
103+
104+
- choco search xxx,查找 xxx 安装包
105+
- choco info xxx,查看 xxx 安装包信息
106+
- choco install xxx,安装 xxx 软件
107+
- choco upgrade xxx,升级 xxx 软件
108+
- choco uninstall xxx, 卸载 xxx 软件
109+
110+
如何知道 chocolatey 仓库中都有哪些安装包可用呢?
111+
112+
可以通过上面提到的命令行的方式,也可以访问官方仓库进行筛选。
113+
114+
>[https://community.chocolatey.org/packages](https://community.chocolatey.org/packages)
115+
116+
比如说我们来查找 Java。
117+
118+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-a4bdc885-22a9-4307-b4b6-cd1ad1f0ba8b)
119+
120+
好,现在可以直接在shell中键入 `choco install jdk8` 来安装 JDK8 了,并且会自动将Java加入到环境变量中,不用再去「我的电脑」「环境变量」中新建 JAVA_HOME 并复制 JDK 安装路径配置 PATH 变量了,是不是非常 nice?
121+
122+
稍等片刻,键入 `java -version` 就可以确认Java是否安装成功了。
123+
124+
125+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-80a6ced8-c25d-4371-8096-b95be48af768)
126+
127+
不得不承认!非常nice!
128+
129+
再比如说安装 Redis,只需要找到 Redis 的安装命令在 Choco 下执行一下就 OK 了。
130+
131+
132+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-488b71e7-8082-45b7-b454-3187938bf101)
133+
134+
安装 Git:
135+
136+
```
137+
choco install git.install
138+
```
139+
140+
安装 node.js
141+
142+
```
143+
choco install nodejs.install
144+
```
145+
146+
安装 7zip
147+
148+
```
149+
choco install 7zip
150+
```
151+
152+
安装 **Filezilla**
153+
154+
```
155+
choco install filezilla
156+
```
157+
158+
Choco 上的软件包也非常的多,基本上软件开发中常见的安装包都有。
159+
160+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongju/choco-3a59dfe8-6c2d-4c5b-9187-bf2812a59041)
161+
162+
163+
### 小结
164+
165+
通过小二的实战笔记,我们可以了解到。
166+
167+
对比下载安装包,通过图形化界面的方式安装 JDK,然后下一步,下一步是不是感觉在 Shell 下安装 JDK 更炫酷一些?
168+
169+
关键是还省去了环境变量的配置。
170+
171+
记得还没有走出新手村的时候,就经常被环境变量配置烦不胜烦。那下载这种命令行的方式,要比手动在环境变量中配置要省事一百倍,也更不容易出错。
172+
173+
通过 Choco 可以集中安装、管理、更新各种各样的软件。特别适合管理一些轻量级的开源软件,一条命令搞定,升级的时候也方便,不用再重新去下载新的安装包,可以有效治愈更新强迫症患者的症状。
174+
175+
如果不想特殊设置的话,Chocolatey 整体的操作与使用还是比较亲民的。就连刚接触软件开发的小白也可以直接使用,而且路人看着会觉得你特别厉害。
176+
177+
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/xingbiaogongzhonghao.png)
178+
179+

docs/gongju/fastjson.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
---
2+
title: fastjson:阿里巴巴开源的JSON解析库
23
category:
34
- Java企业级开发
45
tag:
56
- 辅助工具/轮子
67
---
78

8-
# fastjson:阿里巴巴开源的JSON解析库
99

1010

1111
### 01、前世今生

0 commit comments

Comments
 (0)