📄 delxsltrade.java
字号:
package com.gzrealmap.oa.servlet;
import com.gzrealmap.oa.*;
import com.gzrealmap.lib.jdbc.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
import java.util.*;
import com.gzrealmap.user.user.User;
import com.gzrealmap.oa.db.*;
public class DelXSLtrade
extends HttpServlet {
final String req_TranID = "TranID"; //交易码
final String req_nextPage = "nextPage"; //
final String req_sqltable = "sqltable"; //
final String req_succeedstate = "succeedstate"; //
final String req_failurestate = "failurestate"; //
final String req_mark = "mark"; //
final String req_controlbox = "controlbox"; //
final String req_debug = "debug"; //
final String req_userlog = "userlog";
//servlet的流操作
private HttpServletRequest request = null;
private HttpServletResponse response = null;
private HttpSession session = null;
private PrintWriter out = null;
//是否测试
boolean debug = false;
//用于多条SQL语句时传参。
Hashtable parameters = null;
String markname[] = null;
String sqlwhere = null;
String sqltable = null;
String TranID = null;
String nextPage = null;
String succeedstate = null;
String failurestate = null;
String sqlstring = null;
String TranName = null;
//com.gzrealmap.UserLog userLogS = null;
//com.gzrealmap.common comm = null;
String userlog = null;
private String toISO(String str) {
String temp = "";
if (str != null) {
try {
/*temp = new String(str.getBytes("ISO8859_1"),"GBK" );*/
temp = str;
}
catch (Exception e) {
temp = "";
}
}
return temp;
}
private void getsql() {
sqlwhere = " ";
parameters = new Hashtable();
Commons cmms = new Commons();
String pks[] = request.getParameterValues(req_controlbox);
String param[] = null;
sqltable = request.getParameter(req_sqltable);
markname = request.getParameterValues(req_mark);
/*
sqltable ="bbb";
markname = new String[2];
markname[0] ="aaa";
markname[1] ="bbb";
*/
if (debug) {
out.print("<br>=============================");
out.print("<br>多条记录(共有" + pks.length + ")<br>");
}
if (pks != null) { //-------->不要忘记判断是否有值
int sqlcount = pks.length;
parameters.put("sqlcount", String.valueOf(sqlcount));
int sqlnum = 0;
for (; sqlnum < sqlcount; sqlnum++) {
//out.print(pks[i]); //-------->取多条的方法
param = cmms.String2Array(pks[sqlnum], ",");
//params[0] //-------->单个PK多条记录
for (int iparam = 0; iparam < param.length; iparam++) {
sqlwhere = sqlwhere + markname[iparam].trim() + " = '" +
toISO(param[iparam]) + "' and ";
userlog = userlog + markname[iparam].trim() + "(" +
toISO(param[iparam]) + "),";
if (debug) {
out.print(param[iparam] + "--"); //-------->取多个PK
}
}
sqlwhere = sqlwhere.substring(0, sqlwhere.length() - 4);
sqlstring = " DELETE FROM " + toISO(sqltable) + " WHERE " + sqlwhere;
if (debug) {
out.print(sqlnum + "<br>"); //-------->取多个PK
out.print("sqlstring:" + sqlstring + "<br>");
}
parameters.put(String.valueOf(sqlnum + 1), sqlstring);
sqlwhere = " ";
userlog = userlog + ";";
}
}
}
private void totrade(String userid) {
if (debug) {
out.print("<br>执行sql语句......");
}
boolean runok = true;
try {
transaction tran = transactionFactory.getTransaction(TranID,userid);
tran.setParameters(parameters);
tran.performAction();
}
catch (Exception Exce) {
runok = false;
Exce.printStackTrace();
}
if (runok) {
out.println("<SCRIPT LANGUAGE='JavaScript'>\r\n");
out.println(" alert ('" + succeedstate + "');\r\nsucceed");
out.println(" window.location='" + nextPage + "';\r\n");
out.println("</script>\r\n");
}
else {
out.println("<SCRIPT LANGUAGE='JavaScript'>\r\n");
out.println(" alert ('" + failurestate + "');\r\nfailure");
out.println(" history.go(-1); \r\n");
out.println("</script>\r\n");
}
}
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws
IOException {
//servlet的流操作
request = null;
response = null;
session = null;
out = null;
//是否测试
debug = false;
//用于多条SQL语句时传参。
parameters = null;
markname = null;
sqlwhere = null;
sqltable = null;
TranID = null;
nextPage = null;
succeedstate = null;
failurestate = null;
sqlstring = null;
TranName = null;
//userLogS = null;
//comm = null;
userlog = null;
request = req;
response = resp;
session = request.getSession();
out = response.getWriter();
String currentUserID = request.getRemoteUser();
User user = User.getInstance();
user = user.getUserByName(currentUserID);
currentUserID = user.getID();
System.out.println(currentUserID);
response.setContentType("text/html;charset=gb2312");
TranID = toISO(request.getParameter(req_TranID));
nextPage = toISO(request.getParameter(req_nextPage));
succeedstate = toISO(request.getParameter(req_succeedstate));
failurestate = toISO(request.getParameter(req_failurestate));
debug = (request.getParameter(req_debug) != null) ? true : false;
userlog = toISO(request.getParameter(req_userlog));
if (userlog == null || userlog.equals("")) {
userlog = "删除记录";
}
try {
}
catch (Exception e) {
TranName = "--";
}
finally {
try {
//comm.end();
}
catch (Exception e) {}
}
getsql();
System.out.println ("pk Start");
totrade(currentUserID);
System.out.println ("pk end");
request = null;
response = null;
session = null;
out = null;
debug = false;
parameters = null;
markname = null;
sqlwhere = null;
sqltable = null;
TranID = null;
nextPage = null;
succeedstate = null;
failurestate = null;
sqlstring = null;
TranName = null;
//userLogS = null;
//comm = null;
userlog = null;
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
IOException {
doPost(request, response);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -