-
Maven Dependency
maven 依赖传递
maven 的 jar 默认是依赖传递的。
有两种方式可以断绝这种依赖传递。
声明时
如果当前模块其中一个引入的 jar 如此声明,那么其他的模块引入当前模块,则这个 jar 不会被引入。
<dependency>
<groupId>com.github.houbb</groupId>
<artifac...
2018-11-07 00:58:33 |
Java
-
Java Cpu & Memory
程序的方式
freeMemory
简单的测试方法
public static void main(String[] args) throws IOException {
Runtime run = Runtime.getRuntime();
System.out.println("Time: " + (new Date()));
// 获取开始时内存使用...
2018-11-02 13:01:14 |
Java
-
SourceGraph
SourceGraph
SourceGraph 一款开源的代码审查工具。
chrome 插件安装
chrome 插件
使用
浏览 github 代码的时候,会有对应的视图按钮。
点击一下,感觉就会变成一个 web IDE。
启发
能够提供便利的工具,都会有生存空间。
要学会和优秀的环境绑定。
SourceGraph
chrome 插件安装
...
2018-10-30 22:48:58 |
Tool
-
监控框架-PMC 业务监控系统平台工具:prometheus+grafana; sentry
监控类产品
两类监控类产品,一类是对于系统资源,系统状态、应用状态等信息的监控,主要是使用 prometheus+grafana,这个打算以后更熟悉了写几篇科普的文章,用起来感觉还是很酷也很实用的;
另外一类是error tracking类的产品,我用的是 sentry,很早以前就听过它了,粗略了解之后感觉部署还是不简单就放弃了,后来突然想到可以使用docker来进行部署,就仔细读了它的...
2018-10-30 22:48:58 |
APM
-
Oracle Group By
情景
假设有表 user_log,要求按照 user_id 字段分组,然后对应的 remark 用 , 隔开。
user_id remark
1 124
1 222
2 124
2 134
Group By 实现方式
wm_contact
直接按照逗号分隔 remark 结果。
SELECT wm_conca...
2018-10-30 22:48:58 |
SQL
-
Windows Chocolatey
chocolatey
chocolatey windows 的包管理工具。
类似于 brew apt-get
安装
使用 windows cmd.exe 管理员模式
运行命令:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -Executio...
2018-10-30 08:54:03 |
Tool
-
Java Web Layer Divide
MVC
Model-View-Controller 是一种指导思想的分层。
实际上我们处理的比这个要详细的多。
禁止跨级调用
一定要边界明确。
比如 biz 禁止直接调用 dao,应该通过 service 去做对应处理。
参考资料
如何合理的设计代码分层,论代码分层的设计之道
MVC
禁止跨级调用
参考资料
2018-10-30 01:54:43 |
Security
-
User Security
用户隐私
加密
用户密码应该使用 随机salt + Md5(等安全的不可逆加密)
通讯层的加密,应该使用 RSA 等非对称加密算法。
敏感信息,比如卡号等信息,建议使用可逆加密到数据库。加密的密匙对于开发人员不可见。
脱敏
日志输出等。
建议在框架层处理,不然每个项目都处理起来非常痛苦,且实现各不相同。后期如果想统一调整,非常之麻烦。
参考资料
网络数据隐私保护,阿里工程师...
2018-10-30 01:41:12 |
Security