java19yf 2011-05-17 15:51
浏览 217
已采纳

spring 并发访问 客户订单号设计

[code="java"][/code]我写的demo 用的是flex+hibernate+Spring

需求是新增一个订单,(订单号是唯一的日期加数字如"s201105001")

比如在spring 中有一个保存订单数据的方法 public void saveOrders(List list)throws exception{
String ddh=cal(date);//这个方法是依据日期,查找订单表的订单号再生成日期
for(int i=0;i<list.size();i++){
Order o=list.get(i);
o.setddh(ddh);
save(o);//保存数据
}
}
问题是如果是并发访问的话,订单号就可能重复。求解?

  • 写回答

9条回答 默认 最新

  • redstarofsleep 2011-05-18 08:18
    关注

    首先你要确认是不是因为多人同时操作,时间相同,造成产生相同的ID号。
    如果是这样的话,那就是这个ID号的生成策略有问题了。

    建议在ID号上再加上人员ID,保证产生唯一的ID号。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(8条)

报告相同问题?