首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
java业务开发案例
boy1007
创建于2023-04-03
订阅专栏
学习记录
暂无订阅
共18篇文章
创建于2023-04-03
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
《开发实战》18 | 数据存储:NoSQL与RDBMS如何取长补短、相辅相成?
取长补短之 Redis vs MySQL 做一个简单测试,分别填充 10 万条数据到 Redis 和 MySQL 中。MySQL 中的 name字段做了索引,相当于 Redis 的 Key,data
《开发实战》17 | 异步处理好用,但非常容易用错
25 | 异步处理好用,但非常容易用错 大多数业务项目都是由同步处理、异步处理和定时任务处理三种模式相辅相成实现的。区别于同步处理,异步处理无需同步等待流程处理完毕,因此适用场景主要包括: 服务于主流
《开发实战》16 | 缓存设计:缓存可以锦上添花也可以落井下石
不要把 Redis 当作数据库 Redis 的确具有数据持久化功能,可以实现服务重启后数据不丢失。这一点,很容易让我们误认为 Redis 可以作为高性能的 KV 数据库。Redis 的特点是,处理请求
《开发实战》15 | 接口设计:系统间对话的语言,一定要统一
接口的响应要明确表示接口的处理结果 我曾遇到过一个处理收单的收单中心项目,下单接口返回的响应体中,包含了 success、code、info、message 等属性,以及二级嵌套对象 data 结构体
《开发实战》14 | Spring框架:IoC和AOP是扩展的核心
14 | Spring框架:IoC和AOP是扩展的核心 IOC、AOP IoC,其实就是一种设计思想,为什么要让容器来管理对象呢?或许你能想到的是,使用 IoC 方便、可以实现解耦。但在我看来,相比于
《开发实战》13 | 用好Java 8的日期时间类,少踩一些“老三样”的坑
16 | 用好Java 8的日期时间类,少踩一些“老三样”的坑 初始化日期时间 如果要初始化一个 2019 年 12 月 31 日 11 点 12 分 13秒这样的时间,Date date = new
《开发实战》12 | 异常处理:别让自己在出问题的时候变为瞎子
捕获和处理异常容易犯的错 “统一异常处理”方式正是我要说的第一个错:不在业务代码层面考虑异常处理,仅在框架层面粗犷捕获和处理异常。为了理解错在何处,先看看大多数业务应用都采用的三层架构: Contro
《开发实战》11 | 空值处理:分不清楚的null和恼人的空指针
11 | 空值处理:分不清楚的null和恼人的空指针 修复和定位恼人的空指针问题 NullPointerException 是 Java 代码中最常见的异常,最可能出现的场景归为以下5 种: 参数值是
《开发实战》10 | 集合类:坑满地的List列表操作
使用 Arrays.asList 把数据转换为 List 的三个坑 这个List 包含的其实是一个 int 数组,整个 List 的元素个数是 1,元素类型是整数数组。并不是我们期望的 其原因是,只能
《开发实战》09 | 数值计算:注意精度、舍入和溢出问题
国外的计算程序使用的是单步计算法。在单步计算法中,a+b%代表的是 a*(1+b%)。所以,手机计算器计算 10%+10% 时,其实计算的是10%*(1+10%),所以得到的是 0.11 而不是 0.
《开发实战》08 | 判等问题:程序里如何确定你就是你?
注意 equals 和 == 的区别 对基本类型,比如 int、long,进行判等,只能使用 ==,比较的是直接值。因为基本类型的值就是其数值。对引用类型,比如 Integer、Long 和 Stri
《开发实战》07 | 数据库索引:索引并不是万能药
07 | 数据库索引:索引并不是万能药 InnoDB 是如何存储数据的? 为了减少磁盘随机读取次数,InnoDB 采用页而不是行的粒度来保存数据,即数据被分成若干页,以页为单位保存在磁盘中。InnoD
《开发实战》06 | 20%的业务代码的Spring声明式事务,可能都没处理正确
06 | 20%的业务代码的Spring声明式事务,可能都没处理正确 小心 Spring 的事务可能没有生效 1、方法没有被public修饰除非特殊配置(比如使用 AspectJ 静态织入实现AOP)
05 | HTTP调用:你考虑到超时、重试、并发了吗?
进行 HTTP 调用本质上是通过 HTTP 协议进行一次网络请求,需要考虑以下三点 框架设置的默认超时是否合理; 考虑到网络的不稳定,超时后的请求重试是一
04 | 连接池:别让连接池帮了倒忙
连接池一般对外提供获得连接、归还连接的接口给客户端使用,并暴露最小空闲连接数、最大连接数等可配置参数,在内部则实现连接建立、连接心跳保持、连接管理、空闲连接回收、
03 | 线程池:业务代码最常用也最容易犯错的组件
线程池的声明需要手动进行 手动 new ThreadPoolExecutor 来创建线程池newFixedThreadPool 和 newCache
01 |使用了并发工具类库,线程安全就高枕无忧了吗?
01 |使用了并发工具类库,线程安全就高枕无忧了吗? ThreadLocal 在生产上遇到一个诡异的问题,有时获取到的用户信息是别人的。查看代码后,我发现他使用了 ThreadLocal 来缓存获取到
02 | 代码加锁:不要让“锁”事成为烦心事
02 | 代码加锁:不要让“锁”事成为烦心事 加锁前要清楚锁和被保护的对象是不是一个层面的 在一个类里有两个 int 类型的字段 a 和 b,有一个 add 方法循环 1 万次对 a 和 b 进行 +