有关打印按钮与日志的操作

今天发现写的程序中的一个bug

function StartPrint(){

<%

java codes.................

%>

}

这样写是不对滴,即使StartPrint没有被触发,java代码也会被执行。。。也就是说,即使没点按钮,也会插入日志。。。。


解决方法:

开始尝试了自己写个方法,然后在js中调用。。发现传参,连接数据库之类的操作很麻烦 。。

看了一下别的文件,发现一个写好的,可以直接拿过来用的处理页面,哈哈哈哈。。。


function StartPrint(){
try
{
var log_sql = "…………………………";
//ajax异步提交
if (! Ext.fly('frmDummy'))
{    
var frm = document.createElement('form');          
frm.id = 'frmDummy';             
frm.name = id;               
frm.className = 'x-hidden';             
document.body.appendChild(frm);            
}
Ext.Ajax.request({                
url: 'gosql.jsp',                 
method: 'POST',              
form: Ext.fly('frmDummy'),                
callback: function(o, s, r) {   
 //alert(r.responseText);
},                 
params: {mysql:log_sql}         
})
}
catch(err)
{
//alert(err)
}
document.getElementById('BtnPrintOut').style.display='none';
document.getElementById('BtnClearAll').style.display='none';
print();
}

看了一下gosql,它是封装成一个事务了。。。。

<%
request.setCharacterEncoding("utf-8");
ResultSet rs = null;
String sql = ""; 
sql = request.getParameter("mysql");

try
{
//需要级联删除的sql语句,以百分号分隔了,然后分别进行删除
conn.setAutoCommit(false);
String []deleSqlArray = sql.split("%");
for(int i = 0; i < deleSqlArray.length;i++)
{
  System.out.println(deleSqlArray[i]);
  stmt.executeUpdate(deleSqlArray[i]);  
}
conn.commit();
conn.setAutoCommit(true);
out.println("success");
}
catch(Exception err)
{
conn.rollback();
out.println("failure");
}
conn.close();
%>
<%@ include file="closeconnection.jsp"%>


closeconnection.jsp

<%
//关闭连接
try
{
if(conn!=null)
{
if(!conn.isClosed())
{
conn.close();
conn = null;
}
}
}
catch(Exception excp3)
{
System.out.println("Connection Closed Error");
}
%>




转载于:https://www.cnblogs.com/java0721/archive/2011/11/09/2602781.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值