标签: 安全

Java面试题(7)- 线程安全

Java面试题(7)- 线程安全

整理一些Java基础面试题,内容涵盖语言基础、并发、JVM、IO模型、中间件、开发框架等等。本章节的面试题有:说说如何保证线程安全;如何实现一个线程安全的数据结构;volatile关键字的作用是什么;Java并发包提供了哪些并发类;HashMap在多线程环境下使用需要注意什么,为什么;ThreadLocal的作用与实现原理是什么;ThreadPoolExecutor的实现原理是什么;什么是死锁,如何避免死锁;Atomiclnteger的实现原理是什么。

Obsidian自定义文件夹图标

Obsidian自定义文件夹图标

在Obsidian的默认主题中,没有图标来区分左侧文件目录的文件夹和文件,虽然不影响使用,但是体验过于乏味。Obsidian提供了自定义CSS的方式来控制样式,生命不息,折腾不止,我们来试一试吧!在 Obsidian 文件夹里的 .obsidian 里新建一个 snippets 文件夹,再新建一个CSS文件,文件的命名没有限制,但是为了规范,尽可能准确一些,叫做 custom-icons-files-and-folders.css。在 Obsidian 的设置里面启用CSS文件。

笔记软件,我极力推荐Obsidian

笔记软件,我极力推荐Obsidian

大学时期,我首次使用了Mybase管理笔记和文档。Mybase的界面有点古板,但是功能异常强大。它的缺点也显而易见,没有移动客户端,无法在多平台同步数据。七八年前,我开始使用Evernote(本土化后叫做印象笔记),客户端UI很美观,但是整体响应有点慢,免费用户的空间也很小。后来朋友向我推荐了有道云笔记,它是国内的产品,界面很清爽,同步数据也很快,一直使用至今。国内知名的笔记软件还有语雀、为知笔记等等,这些产品固然做的很好,但是无法解决让我忧心忡忡的问题:数据安全。没有任何一家公司敢保证决不泄露客户数据,要么是被黑客窃取数据,要么被公司内鬼盗卖数据,这些案例比比皆是。随着我的笔记数量越来越多,有一些隐私数据也放在云笔记上。有道云笔记绝不可能让用户自行存储数据,我必须寻找新的产品来解决数据安全问题。

日常开发方案设计指北

日常开发方案设计指北

互联网公司管理研发流程,常常使用TAPD一类的敏捷工具。一个需求从提出到上线要经历至少七个流程。初级工程师往往做不好需求评审工作。要么被产品经理牵着鼻子走,让干什么就干什么;要么预估不到隐藏的工作量,在开发排期阶段给出不合理的排期,导致开发时间紧张,最后加班应付测试。

如何开发两步验证功能

如何开发两步验证功能

两步验证,是指用户登录账户的时候,除了要输入用户名和密码,还要求用户输入一个动态密码,为帐户添加了一层额外保护。这个动态密码要么是专门的硬件,要么由用户手机APP提供。即使入侵者窃取了用户密码,也会因不能使用用户手机而无法登录帐户。