代码解惑!求解……

lqsmn613 2009-10-08 09:54:41
button_today.addMouseListener(new MouseAdapter() {

public void mouseClicked(MouseEvent e1) {

// if (e1.getClickCount() == 1) {
jta.setEditable(false);
String st = null;
String strText = null;
j = Integer.parseInt(jta.getName());
k = j - (day_week - 1);
if (k == 1 || k == 2 || k == 3 || k == 4 || k == 5
|| k == 6 || k == 7 || k == 8 || k == 9) {
st = str + "-" + "0" + k;
// strText取得的是点击保存后,不管是修改过还是未修改过的文本
strText = jta.getText().substring(1);
} else {
st = str + "-" + k;
strText = jta.getText().substring(2);
}
System.out.println("保存或修改过的数据: " + strText);
java.util.Calendar calendar = java.util.Calendar
.getInstance();
calendar.setTime(new Date());
int m = calendar.get(Calendar.MONTH) + 1;
int d = calendar.get(Calendar.DATE);
int h = calendar.get(Calendar.HOUR_OF_DAY);
int mi = calendar.get(Calendar.MINUTE);
int s = calendar.get(Calendar.SECOND);
String sy = String.valueOf(calendar
.get(Calendar.YEAR));
String sm = m < 10 ? "0" + m : String.valueOf(m);
String sd = d < 10 ? "0" + d : String.valueOf(d);
String sh = h < 10 ? "0" + h : String.valueOf(h);
String smi = mi < 10 ? "0" + mi : String
.valueOf(mi);
String ss = s < 10 ? "0" + s : String.valueOf(s);

final String se = "EB" + sy + sm + sd + sh + smi
+ ss;
if (strText != null && strA.equals("") == true) {
// 执行insert语句
try {
db// commentdate取的是选择保存的那个日期
.cun("insert into t_day_comment("
+ "id,orgid,orgname,employeeid,employee,status,commentdate,apwork)"
+ " values('"
+ se
+ "','EB200612141166096392000000ORGAAAAAAAAA16','集团公司·信息化管理中心',"
+ "'EB200612141166096392000000000AAAAAAAA902','于耀','0','"
+ st + "','" + strText
+ "')");
db.closs();
} catch (SQLException ew) {
// TODO Auto-generated catch block
ew.printStackTrace();
}
} else if (strA != null
&& strText.equals(strA) == false) {
// 执行update语句
try {
db
.update("update t_day_comment set apwork = '"
+ strText
+ "' where "
+ "employeeid = 'EB200612141166096392000000000AAAAAAAA902' "
+ "and commentdate = '"
+ st + "'");
db.closs();
} catch (SQLException ee) {
// TODO Auto-generated catch block
ee.printStackTrace();
}
}
// }
}
});
上面是我写的程序中一段代码,在这个按钮的监听事件中,不知道为什么,代码就是进不了数据库储存的那个if判断中,老是进的是修改的那个if中。还有就是这段代码会在第一次执行完毕后,再重头又执行一次,有时候2次,有时候三次。。为什么???高手帮忙解惑下啊。。谢谢!!!
...全文
44 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
lqsmn613 2009-10-08
  • 打赏
  • 举报
回复
if的问题已经解决,不是条件不对,是取得的值不对。
但是执行多次的情况还是存在???有会监听事件的高手吗??说说为什么啊
yangyanan1987 2009-10-08
  • 打赏
  • 举报
回复
将if (strText != null && strA.equals("") == true)
改为if(strTest.length>0 && "".equals(strA))试试。
if判断不执行肯定是条件不对
没有看到循环语句,会重复执行??

50,530

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧