weixin_42467719
weixin_42467719
2011-06-24 13:08
浏览 220
已采纳

ibatis 多线程

一个查询的方法测试(Junit)通过
放到线程里就不行了 查不到结果 也不报错
本来期待多线程模拟多用户同时访问
Thread :
public void run() {
Integer s = 0;
try {
s = Lee.selectAllAccountCount();
System.out.println(s+"..............."); // 没值 也不报错
} catch (SQLException e) {
e.printStackTrace();
}
}

Junit
@Test
public void threadDb(){
Integer s = 0;
try {
s = Lee.selectAllAccountCount();
System.out.println(s+"..............."); // ----- s 有值,没问题
} catch (SQLException e) {
e.printStackTrace();
}
Tas t;
for (int i = 0; i < 3; i++) {
t= new Tas();
t.start();
}
if(1==1){
t= new Tas();
t.start();
}
}

sqlMap.xml:

select count(*) from Lee

Dao:
public static Integer selectAllLeeCount () throws SQLException {
System.out.println("+++++++++++++");
return (Integer)sqlMapper.queryForObject("selectAllLeeCount");
}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • andyfacesjava
    andyfacesjava 2011-06-25 01:42
    已采纳

    这跟ibatis多线程没什么问题, 一般不建议直接使用 JUnit 来测试,它对多线程支持并不好。
    去 Google Search Keyword: "JUnit 多线程测试",会有你需要的答案。

    点赞 评论

相关推荐