You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
3.9 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# SUMMARY
* [简介](./README.md)
* [开篇词 | 业务代码真的会有这么多坑?](./docs/209108.md)
* [01 | 使用了并发工具类库,线程安全就高枕无忧了吗?](./docs/209494.md)
* [02 | 代码加锁:不要让“锁”事成为烦心事](./docs/209520.md)
* [03 | 线程池:业务代码最常用也最容易犯错的组件](./docs/210337.md)
* [04 | 连接池:别让连接池帮了倒忙](./docs/211388.md)
* [05 | HTTP调用你考虑到超时、重试、并发了吗](./docs/213273.md)
* [06 | 20%的业务代码的Spring声明式事务可能都没处理正确](./docs/213295.md)
* [答疑篇:代码篇思考题集锦(一)](./docs/260695.md)
* [07 | 数据库索引:索引并不是万能药](./docs/213342.md)
* [08 | 判等问题:程序里如何确定你就是你?](./docs/213604.md)
* [09 | 数值计算:注意精度、舍入和溢出问题](./docs/213796.md)
* [10 | 集合类坑满地的List列表操作](./docs/216778.md)
* [11 | 空值处理分不清楚的null和恼人的空指针](./docs/216830.md)
* [12 | 异常处理:别让自己在出问题的时候变为瞎子](./docs/220230.md)
* [答疑篇:代码篇思考题集锦(二)](./docs/261446.md)
* [13 | 日志:日志记录真没你想象的那么简单](./docs/220307.md)
* [14 | 文件IO实现高效正确的文件读写并非易事](./docs/223051.md)
* [15 | 序列化:一来一回你还是原来的你吗?](./docs/223111.md)
* [16 | 用好Java 8的日期时间类少踩一些“老三样”的坑](./docs/224240.md)
* [17 | 别以为“自动挡”就不可能出现OOM](./docs/224784.md)
* [18 | 当反射、注解和泛型遇到OOP时会有哪些坑](./docs/225596.md)
* [19 | Spring框架IoC和AOP是扩展的核心](./docs/227917.md)
* [20 | Spring框架框架帮我们做了很多工作也带来了复杂度](./docs/227918.md)
* [答疑篇:代码篇思考题集锦(三)](./docs/262560.md)
* [21 | 代码重复:搞定代码重复的三个绝招](./docs/228964.md)
* [22 | 接口设计:系统间对话的语言,一定要统一](./docs/228968.md)
* [23 | 缓存设计:缓存可以锦上添花也可以落井下石](./docs/231501.md)
* [24 | 业务代码写完,就意味着生产就绪了?](./docs/231568.md)
* [25 | 异步处理好用,但非常容易用错](./docs/234928.md)
* [26 | 数据存储NoSQL与RDBMS如何取长补短、相辅相成](./docs/234930.md)
* [答疑篇:设计篇思考题答案合集](./docs/263776.md)
* [27 | 数据源头:任何客户端的东西都不可信任](./docs/235700.md)
* [28 | 安全兜底:涉及钱时,必须考虑防刷、限量和防重](./docs/237060.md)
* [29 | 数据和代码:数据就是数据,代码就是代码](./docs/237139.md)
* [30 | 如何正确保存和传输敏感数据?](./docs/239150.md)
* [答疑篇:安全篇思考题答案合集](./docs/264776.md)
* [31 | 加餐1带你吃透课程中Java 8的那些重要知识点](./docs/212374.md)
* [32 | 加餐2带你吃透课程中Java 8的那些重要知识点](./docs/212398.md)
* [33 | 加餐3定位应用问题排错套路很重要](./docs/221982.md)
* [34 | 加餐4分析定位Java问题一定要用好这些工具](./docs/224816.md)
* [35 | 加餐5分析定位Java问题一定要用好这些工具](./docs/230534.md)
* [36 | 加餐6这15年来我是如何在工作中学习技术和英语的](./docs/235013.md)
* [答疑篇:加餐篇思考题答案合集](./docs/265484.md)
* [37 | 加餐7程序员成长28计](./docs/266608.md)
* [38 | 加餐8Java程序从虚拟机迁移到Kubernetes的一些坑](./docs/457161.md)
* [结束语 | 写代码时,如何才能尽量避免踩坑?](./docs/240276.md)
* [结课测试 | 关于Java业务开发的100个常见错误你都明白其中缘由了吗](./docs/240255.md)
* [结课问卷获奖用户名单](./docs/245985.md)