seckill is not defined 。 改成<script src="<%=basePath%>resources/script/seckill.js" type="text/javascript"></script>
再加入<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>,就可以了
再加入<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>,就可以了
2018-06-02
倒计时出不来的同学请参考如下script的顺序.
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.bootcss.com/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
<script src="https://cdn.bootcss.com/jquery.countdown/2.2.0/jquery.countdown.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.bootcss.com/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
<script src="https://cdn.bootcss.com/jquery.countdown/2.2.0/jquery.countdown.min.js"></script>
2018-05-28
错误: Uncaught TypeError: $.cookie is not a function
解决办法:
在detail.jsp导入script的bootstrap.min.js下面加上如下导入语句.
<script src="https://cdn.bootcss.com/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
解决办法:
在detail.jsp导入script的bootstrap.min.js下面加上如下导入语句.
<script src="https://cdn.bootcss.com/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
2018-05-27
跟着老师撸了一遍代码,里面的源码上传到github上了,每一步都做了详细的笔记。跟大家一起交流学习
https://github.com/limingval/seckill
https://github.com/limingval/seckill
2018-05-20
detail.jsp页面的script代码那里注意,老师写错了下节debug时才发现,应该是:
seckillId:${seckill.seckillId},
seckillId:${seckill.seckillId},
2018-05-10
这节有些争议,我也说一些自己的想法,欢迎指正批评
@哀幻暝
除了@Launcher95 所说的 SeckillResult()的 boolean success 值为空,前端拿到时没办法处理;还有一个重要的原因,service层中的executeSeckill()之所以要显示的抛出异常,是为了触发spring的声明式事务回滚,没有异常就不会回滚
至于大家说的有些冗余,这个是有一点点,但这样做是为了规范,方法的返回值已经用泛型规定了:SeckillResult<SeckillExecution>,所以即便出现异常也需要返回一个SeckillExecution对象
@哀幻暝
除了@Launcher95 所说的 SeckillResult()的 boolean success 值为空,前端拿到时没办法处理;还有一个重要的原因,service层中的executeSeckill()之所以要显示的抛出异常,是为了触发spring的声明式事务回滚,没有异常就不会回滚
至于大家说的有些冗余,这个是有一点点,但这样做是为了规范,方法的返回值已经用泛型规定了:SeckillResult<SeckillExecution>,所以即便出现异常也需要返回一个SeckillExecution对象
2018-05-09
@xanthuim同学,其实我个人觉得对于异常情况的判断捕捉,一般情况下越多越全面越好,detail是个get方法,所以可以通过手动拼接地址的方式进去,或防止如果输入地址的时候写错了的情况
2018-05-09