《密码故事》https://book.douban.com/subject/1036413/
《图解密码技术》 https://book.douban.com/subject/26822106/
对密码学有兴趣的,想大概了解一下密码知识的可以看这些书
《图解密码技术》 https://book.douban.com/subject/26822106/
对密码学有兴趣的,想大概了解一下密码知识的可以看这些书
2018-01-20
最赞回答 / bigtree41642
老师的代码挺规范的,如果没有这个商品,前端可以跟据开始时间与结束时间就可以判断前端要显示的逻辑三种情况: exposed等于false, start_time, end_time, now_time == null, 没有这个商品 exposed== fasle, start_time,end_time, now_time 有值,未开启或已结束 exposed==true, 已开启,md5有值。
2018-01-18
最赞回答 / 笑傲独行侠
楼上说的很对。老师对于异常处理有以下三步:1.try catch 将所有的已知的未知的异常全部捕获到后在最后一个catch里处理转变为spring认识的运行期异常再在方法里抛出,这样spring才会进行事务回滚2.由于所有异常都被最后一个catch转化为同一种异常:SeckillException,这样就难以区分到底是哪些业务异常,所以在最后一个catch前加了两个catch把相对应的每一种异常提前抛出
2018-01-16
已采纳回答 / 韩同學
SeckillExecution 继承RuntimeException。seckillCloseException ,RepeatKillException 继承SeckillExecution 这样保证所有出现的异常都被视为 运行期异常
catch (SeckillCloseException e1){ ...
2018-01-15