为什么没提交 但是查询不到对象属性

来源:4-1 使用集成测试Service逻辑

慕瓜8068663

2017-07-02 16:44

秒杀成功过了  log记录库存减少了  秒杀记录也打印插入成功

http://img.mukewang.com/5958b0a90001e1d709310247.jpg

在查询SuccessKilled 对象的时候请看下面seckill_id  为什么是null?程序停止运行 我查看数据库记录  库存没减少 记录也没添加 (应该是事务在内存没提交)   这个时候我用查询SuccessKilled的语句在数据库运行 查询结果为空 然后放开断点 让程序执行 再在数据库执行sql语句 这个时候查询到一条记录 但是test里面的seckillid依然为null 其他字段都有值 为什么?????

http://img.mukewang.com/5958b0ab00013c0b14250433.jpghttp://img.mukewang.com/5958b25f000145b411620317.jpg一直搞不懂 

why?

写回答 关注

1回答

  • 慕瓜8068663
    2017-07-03 10:36:09

    我自己来回答 经过不断的测试+猜测 最终定位到了 mapper文件sql语句上面   seckillId=null  说明对象字段属性名师 seckillId  但是sql里面字段不是seckillId  而是  sk.seckill_id  mapper文件我们也没给字段和属性的映射 而是使用驼峰命名规范   所以给字段添加一个别名就行了 

    慕瓜8068... 回复慕瓜8068...

    也可以修改对象的属性名为 seckillId 这样也可以解决

    2017-07-03 10:43:51

    共 2 条回复 >

Java高并发秒杀API之Service层

Java实现高并发秒杀API,介绍秒杀业务Service层的设计和实现

59897 学习 · 137 问题

查看课程

相似问题