CNET中国旗舰网站

ZDNet China | CNET科技资讯网 | 政府采购 | 行业网站联盟





 
标题: [求助] 一个java调用数据库的问题
德里罗
支柱会员
Rank: 10Rank: 10Rank: 10


UID 328556
精华 0
积分 16759
帖子 1575
威望 7464
ZD币 2067 元
阅读权限 210
注册 2008-5-21
状态 离线
  楼主
发表于 2008-10-9 15:34  资料  个人空间  短消息  加为好友 
开发者在线

一个java调用数据库的问题

各位:
      最近在做论坛方面的东西,我们的框架是使用struts2+hibernate+spring   数据库采用mysql集群,目前比较郁闷的是多数据库环境下,如何保证事务的完整性问题,比如 test1数据库下有一个表user1,test2数据库下有一个表user2,我想同时往这两个表中插入数据,可能出现user1中插入成功,而user2中插入不成功的现象,请问,我应该怎么做才能保证事务的完整性,顺便说下,我们使用hibernate与数据库交互。
       谢谢!




顶部
热点频道推荐: C/S开发| 数据库| WEB开发| 嵌入式| 项目管理|
大黄蜂
支柱会员
Rank: 10Rank: 10Rank: 10



UID 319163
精华 5
积分 17513
帖子 1256
威望 8124
ZD币 1987 元
阅读权限 210
注册 2008-4-15
状态 离线
  沙发
发表于 2008-10-9 15:37  资料  个人空间  短消息  加为好友 
一个jsp页面同时向两个表插入数据,其中有一个表要检查重复,如果重复就更新,不重复就插入一条新的记录,向一个表插入数据已经成功了,但是如何检查另一个表中数据是否重复,我是刚学jsp,如果问题很幼稚,请大家谅解,可能是我把问题说的复杂了!!!请多指教!!!先谢谢了!   
  Statement   stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);         
  还有请解释一下括号里的参数是什么意思,我查了文档了,但是e文不好,不是很明白啊,请指教!!!   
   
  -----------------------------------------   
  先回答第二个问题:   
  Statement   stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);     
   
  ResultSet.TYPE_SCROLL_SENSITIVE:   返回结果rs中的游标移动方式   
      这个参数有3种:ResultSet.TYPE_FORWARD_ONLY,   ResultSet.TYPE_SCROLL_INSENSITIVE,   or   ResultSet.TYPE_SCROLL_SENSITIVE   
   
  ResultSet.CONCUR_UPDATABLE:返回结果rs中的记录是否可更改   
      这个参数有2种:ResultSet.CONCUR_READ_ONLY   or   ResultSet.CONCUR_UPDATABLE     
   
   
   
   
  前面问题:   
        插第二个表的时候,先执行sql="select   count(*)   from   table   where   条件"(用executeQuery(sql);),返回>说明重复,再执行sql="updata   table     set   ...   where   条件"(用executeUpdata(sql););   返回0说明无记录,执行sql="insert   into   table   ..."   用executeUpdata(sql););




顶部
热点频道推荐: C/S开发| 数据库| WEB开发| 嵌入式| 项目管理|
 



当前时区 GMT+8, 现在时间是 2009-7-5 10:21

  Powered by Discuz! 5.5.0 © 2001-2007 Comsenz Inc.
Processed in 0.062154 second(s), 4/3 queries

清除 Cookies - 联系我们 - ZDNetChina中文社区 - 无图版