读书人

spring事务管理注意的有关问题

发布时间: 2012-10-14 14:55:08 作者: rapoo

spring事务管理注意的问题

    public?Player?initPlayer(String?qqId,?String?playerName)?{ ??????????Player?player=null; ??????????????try?{ ??????????????????player=new?Player(); ??????????????????player.setQqId(qqId); ??????????????????player.setPlayer_name(playerName); ?????????????????? ??????????????????PlayerBaseInfo?playerBaseInfo=new?PlayerBaseInfo(); ??????????????????playerBaseInfo.setAlliance(0); ??????????????????playerBaseInfo.setPlayer_name(playerName); ??????????????????playerBaseInfo.setQqId(qqId); ?????????????????? ??????????????????PlayerHelper?playerHelper=new?PlayerHelper(); ??????????????????playerHelper.setPlayer_name(playerName); ??????????????????playerHelper.setPlayer_newbie_flow(1); ??????????????????playerHelper.setQqId(qqId); ?????????????????? ??????????????????player=playerDao.saveEntity(player); ??????????????????playerBaseInfoDao.saveEntity(playerBaseInfo); ??????????????????//runtime错误发生处 ??????????????????[color=red]String[]?temp=new?String[1]; ??????????????????temp[5]="11";[/color] ??????????????????playerHelperDao.saveEntity(playerHelper); ??????????????}?catch?(Exception?e)?{ ??????????????????//?TODO?Auto-generated?catch?block ??????????????????e.printStackTrace(); ??????????????} ?????????? ??????????return?player; ??????}?

????????????? 对于支持事务的数据库,如果你要使用spring的事务管理功能,那么在service实现中,请不要手工去铺货异常,如上面代码中使用了try catch来捕获异常,那么spring会认为你的方法是正确的,不会使用事务回滚机制,如果希望遇到异常的时候使用事务回滚吗,那么必须把try catch语句取消。

读书人网 >软件架构设计

热点推荐