User user = new User();
Sql sql = Sqls.create(sqlStr);
sql.params().set("account", account);
sql.params().set("pwd", thePassword);
sql.setCallback(Sqls.callback.entities());
sql.setEntity(dao.getEntity(User.class));
System.out.print(13);
dao.execute(sql);
List userList = sql.getList(User.class);
System.out.print("user大小:"+userList.size());
//////////&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
String sqlStruu = "select l.WF_LOGINNAME account,u.WF_USERID userId,u.WF_USERNAME userName, " +
" u.WF_DEPTID deptId,d.WF_DEPTNAME deptName," +
" decode(wf_positionid, '00015','1','00007','2','0') isManager " +
"from wf_users u,WF_LOGIN l,WF_DEPARTMENT d " +
"where l.WF_USERID = @userId ";
String userId="00020593";
Sql sql2=Sqls.create(sqlStruu);
sql2.params().set("userId",userId);
System.out.print("*1L");
sql2.setCallback(Sqls.callback.entities());
System.out.print("*2L");
sql2.setEntity(dao.getEntity(User.class));
System.out.print("*3L");
dao.execute(sql2);
System.out.print("*4L");
List userList2 = sql2.getList(User.class);
很简单的执行两个select查询在一个方法里,执行了第一个,然后&&&&&&&&&下的发现根本就没执行,为什么
@wendal 在打印出user大小:1 后 他应该往下执行还打印出 *1L,但是没打印出。
@nutzjay try catch它,如果catch住了了就是抛异常了,要是没有,那就是卡住不跑了
如果是后者,一般情况下是数据库连接池一直没返回新连接
@wendal try catch过,没出来东西,感觉是后者,请教一下,怎么返回新连接,
在打印出user大小:1 后 他应该往下执行还打印出 *1L
之间的代码是
System.out.print("user大小:"+userList.size());
//////////&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
String sqlStruu = "select l.WF_LOGINNAME account,u.WF_USERID userId,u.WF_USERNAME userName, " +
" u.WF_DEPTID deptId,d.WF_DEPTNAME deptName," +
" decode(wf_positionid, '00015','1','00007','2','0') isManager " +
"from wf_users u,WF_LOGIN l,WF_DEPARTMENT d " +
"where l.WF_USERID = @userId ";
String userId="00020593";
Sql sql2=Sqls.create(sqlStruu);
sql2.params().set("userId",userId);
System.out.print("*1L");
除去打印调试的语句及肯定不会出错的字符串拼接和字符串赋值语句
Sql sql2=Sqls.create(sqlStruu);
sql2.params().set("userId",userId);
set方法几乎不可能会抛异常, 而剩下的
Sql sql2=Sqls.create(sqlStruu);
前后都加System.out.println() 语句, 不要用print!!!!!!
@wendal 好的,我打印出来看一下
@wendal 打印出来
-1L
*0L
*1L
*2L
*3L
下面没了
@nutzjay 贴现在的代码,我看看你写成什么了
sql.setCallback(Sqls.callback.entities());
sql.setEntity(dao.getEntity(User.class));
System.out.print(13);
dao.execute(sql);
List<User> userList = sql.getList(User.class);
System.out.print("user大小:"+userList.size());
//////////&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
String sqlStruu = "select l.WF_LOGINNAME account,u.WF_USERID userId,u.WF_USERNAME userName, " +
" u.WF_DEPTID deptId,d.WF_DEPTNAME deptName," +
" decode(wf_positionid, '00015','1','00007','2','0') isManager " +
"from wf_users u,WF_LOGIN l,WF_DEPARTMENT d " +
"where l.WF_USERID = @userId ";
String userId="00020593";
System.out.println("*-1L");
Sql sql2=Sqls.create(sqlStruu);
System.out.println("*0L");
sql2.params().set("userId",userId);
System.out.println("*1L");
sql2.setCallback(Sqls.callback.entities());
System.out.println("*2L");
sql2.setEntity(dao.getEntity(User.class));
System.out.println("*3L");
dao.execute(sql2);
System.out.println("*4L");
List<User> userList2 = sql2.getList(User.class);
@wendal 我把执行的顺寻换了一下,到 *3L不执行了,一开始的那个被调到下面后,也没执行
@wendal 我的sql1.是登入验证,放下面会有问题吧
@wendal sql,我放在plsql里查过,没问题
String sqlStruu = "select l.WF_LOGINNAME account,u.WF_USERID userId,u.WF_USERNAME userName, " +
" u.WF_DEPTID deptId,d.WF_DEPTNAME deptName," +
" decode(wf_positionid, '00015','1','00007','2','0') isManager " +
"from wf_users u,WF_LOGIN l,WF_DEPARTMENT d " +
"where l.WF_USERID = 00020593 "; 。我都改成这样了
@wendal sql.params().set("account", account);
sql.params().set("pwd", thePassword);
sql.setCallback(Sqls.callback.entities());
sql.setEntity(dao.getEntity(User.class));
System.out.println("GGGG13GGG");
dao.execute(sql);
List userList = sql.getList(User.class);
System.out.println("user大小:"+userList.size());
//////////&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
String sqlStruu = "select l.WF_LOGINNAME account,u.WF_USERID userId,u.WF_USERNAME userName, " +
" u.WF_DEPTID deptId,d.WF_DEPTNAME deptName," +
" decode(wf_positionid, '00015','1','00007','2','0') isManager " +
"from wf_users u,WF_LOGIN l,WF_DEPARTMENT d " +
"where l.WF_USERID = 00020593 ";
System.out.println("*-1L");
Sql sql2=Sqls.create(sqlStruu);
System.out.println("*0L");
System.out.println("*1L");
sql2.setCallback(Sqls.callback.entities());
System.out.println("*2L");
sql2.setEntity(dao.getEntity(User.class));
System.out.println("*3L");
dao.execute(sql2);
System.out.println("*4L");
List userList2 = sql2.getList(User.class);
System.out.print("大小"+userList2.size());
sqlstruu我都在plsql里运行过,有数据的
@wendal 第一句是登入的sql。。。。,后来我换了最最简单的sql ,第二句是有问题,我也不知道有什么问题
@wendal 麻烦你了。谢谢
@wendal 测过的,因为第2个有问题,所以换到下面的也没执行