老師講的挺好的,尤其是js模塊化,這里一直是弱項。
參照老師的思路。
自己用spring,springmvc,mybatis,jsp實現了一套,附上源碼地址:https://github.com/colg-cloud/seckill
用spring boot,mybatis,通用Mapper,Pagehelper分頁插件,thymeleaf模版也實現了一套,附上源碼地址:https://github.com/colg-cloud/seckill-boot
準備再完善一下,加入redis緩存。
看到老師后面還有收費課程,有點想買,買過的小伙伴覺得值得購買嗎?
參照老師的思路。
自己用spring,springmvc,mybatis,jsp實現了一套,附上源碼地址:https://github.com/colg-cloud/seckill
用spring boot,mybatis,通用Mapper,Pagehelper分頁插件,thymeleaf模版也實現了一套,附上源碼地址:https://github.com/colg-cloud/seckill-boot
準備再完善一下,加入redis緩存。
看到老師后面還有收費課程,有點想買,買過的小伙伴覺得值得購買嗎?
2018-04-12
默認spring事務只在發生未被捕獲的 runtimeexcetpion(運行期異常)時才回滾。
spring aop 異常捕獲原理:
被攔截的方法需顯式拋出異常,并不能經任何處理,這樣aop代理才能捕獲到方法的異常,才能進行回滾,默認情況下aop只捕獲runtimeexception的異常,但可以通過配置來捕獲特定的異常并回滾,換句話說在service的方法中不使用try catch 或者在catch中最后加上throw new runtimeexcetpion(),這樣程序異常時才能被aop捕獲進而回滾。
spring aop 異常捕獲原理:
被攔截的方法需顯式拋出異常,并不能經任何處理,這樣aop代理才能捕獲到方法的異常,才能進行回滾,默認情況下aop只捕獲runtimeexception的異常,但可以通過配置來捕獲特定的異常并回滾,換句話說在service的方法中不使用try catch 或者在catch中最后加上throw new runtimeexcetpion(),這樣程序異常時才能被aop捕獲進而回滾。
2018-03-29
是因為同一個商品不同人去購買,生成了多條記錄
但是成功后返回SuccessKilled實體的方法
SuccessKilled successKilled = successKilledDao.queryByIdWithSeckill(seckillId);
是根據seckillId查的,因此如果該商品被多個人秒殺時,會返回多條記錄
則報錯
Expected one result (or null) to be returned by selectOne()
應該將方法修改為queryByIdWithSeckill(seckillId,userPhone);比較合適
但是成功后返回SuccessKilled實體的方法
SuccessKilled successKilled = successKilledDao.queryByIdWithSeckill(seckillId);
是根據seckillId查的,因此如果該商品被多個人秒殺時,會返回多條記錄
則報錯
Expected one result (or null) to be returned by selectOne()
應該將方法修改為queryByIdWithSeckill(seckillId,userPhone);比較合適
2018-02-24
我也遇到如下這個問題
Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2
Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2
2018-02-24