易截截图软件、单文件、免安装、纯绿色、仅160KB

java事务处理

我使用的是jboss的连接池,执行下面的语句就会出现死锁
Java code:

DataSource ds = null;
Context initctx=new InitialContext();
ds=(DataSource)initctx.lookup("java:OracleDS");
if(ds!=null){
Connection conn=ds.getConnection();
Statement st = null;
conn.setAutoCommit(false);
st=conn.createStatement();
int i=20;
try{
while(i>0){
st.executeUpdate("update WS_TEMPLATE set top=0 where dataitem_id=4 and style_id=1");
i--;
}
}catch(Exception ex){
try{
conn.rollback();
}catch(Exception ex1){}
}finally{
st.close();
conn.close();
}
}


如果把update语句换成update WS_TEMPLATE set top=0 where dataitem_id=4就可以通过,请问是怎么回事?
1: 同样的语句执行20次不知道是干什么?
2: 你这个如果产生死锁的话,可能是和其它地方冲突,本身应该不会有问题,另外一个地方可能也在更新WS_TEMPLATE表,因为你这个地方连续更新20次,如果在这20次中间有其它地方对这个记录进行更新就可能会产生死锁。

style_id是外键吧?如果是的话,给style_id加index应该可以解决。

另外,MS你没有commit

引用
1: 同样的语句执行20次不知道是干什么?
2: 你这个如果产生死锁的话,可能是和其它地方冲突,本身应该不会有问题,另外一个地方可能也在更新WS_TEMPLATE表,因为你这个地方连续更


相关问答:

java如何控制远程Linux重启

我目前在本地的linux上写了一个swing的界面,想通过这个界面来控制其它电脑的linux重启。
我知道用Runtime.getRuntime().exec("shutdown -r");可以控制本机Linux重启,但是怎么控制远程的linux重启呢? ......

jsp页面获取session的问题 - Java / Java EE

我在jsp页面存上一个session,本页面还可以取出值来.
但是一刷新,或者打开新的页面就取不出值来了.
奇怪的是,我测试另一个程序时候
在jsp页面存上一个session,本页面可以取出值来,刷新或打开新页面值能取出来了.
......

在jsp中用session怎么实现购买功能 - Java / Web 开发

我想做够购物车用session 但是不知道怎么获取购买数量 谁有具体的代码吗 希望能割舍

下面是购物车的核心代码 
有了这个 就应该能够做出来吧
Java code:

public void doPost(HttpServletRequest reque ......

java语法问题 - Java / Java EE

import java.io.*;
class FileTest
{
public static void main(String [] args) throws Exception
{

File fDir=new File(File.separator);
String strFile="java源代码测试"+File.separato ......

和java线程有关

有这样一个需求:
有a()和b()两个方法。
写一个线程,要求调用a()方法的几秒种后,调用b()方法。
其中a()方法是一个循环体【while(true)】,也就是一个死循环。b()方法也是一循环体(同a()方法)。
我看 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号