| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- package xin.glue.ui.common.component;
- import java.io.IOException;
- import java.text.DateFormat;
- import java.text.SimpleDateFormat;
- import java.util.Collection;
- import java.util.Date;
- import java.util.Iterator;
- import java.util.Map;
- import java.util.Map.Entry;
- import java.util.UUID;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import org.apache.struts.action.ActionForm;
- import org.apache.struts.action.ActionForward;
- import org.apache.struts.action.ActionMapping;
- import com.posdata.glue.bean.PosBeanFactory;
- import com.posdata.glue.context.PosContext;
- import com.posdata.glue.dao.PosGenericDao;
- import com.posdata.glue.dao.vo.PosParameter;
- import com.posdata.glue.dao.vo.PosRowSet;
- public class PosStrutsAction extends com.posdata.glue.web.control.PosStrutsAction {
- public ActionForward execute(ActionMapping actionmapping, ActionForm actionform,
- HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
- request.setAttribute("HttpServletRequest", request);
- request.setAttribute("HttpServletResponse", response);
-
- PosBeanFactory b = PosContext.getBeanFactory();
- PosGenericDao dao = (PosGenericDao) b.getBeanObject("mesdao");
-
- DateFormat df = new SimpleDateFormat("yyyyMMddHHmmSS");
-
- UUID uuid = UUID.randomUUID();
- Date start = new Date();
-
- String ipadr=request.getRemoteAddr();
- String url = request.getRequestURL().toString();
- String pageId = request.getParameter("pageId");
-
- Map map = request.getParameterMap();
- Iterator it = map.entrySet().iterator();
- StringBuffer params = new StringBuffer();
- while (it.hasNext()) {
- Entry entry = (Entry)it.next();
- params.append("key: " + entry.getKey() + ", value: " + ((String[])entry.getValue())[0]).append(";\n");
- }
- String str =params.toString();
- if(str.length()>=2000){
- str = str.substring(0, 2000);
- }
- PosParameter posparam = new PosParameter();
- posparam.setValueParamter(0, uuid.toString());
- posparam.setValueParamter(1, str);
- posparam.setValueParamter(2, 0);
- posparam.setValueParamter(3, Thread.currentThread().getId());
- posparam.setValueParamter(4, Thread.currentThread().getName());
- posparam.setValueParamter(5, df.format(start));
- dao.insert("UIB020020_93.INSERT", posparam);
-
- ActionForward af = super.execute(actionmapping, actionform, request, response);
-
- int resultSize = 0;
- Date end = new Date();
- PosContext ctx = (PosContext)request.getAttribute("PosContext");
- Iterator it2 = ctx.values().iterator();
- int i = 0;
- while (it2.hasNext()) {
- Object object = it2.next();
- if (object != null) {
- System.out.println("object class: " + object.getClass().getName());
- if (object instanceof PosRowSet) {
- resultSize += ((PosRowSet)object).count();
- } else if (object instanceof Collection) {
- resultSize += ((Collection)object).size();
- } else if (object instanceof Map) {
- resultSize += ((Map)object).size();
- } else if (object.getClass().isArray()) {
- resultSize += ((Object[])object).length;
- }
- }
- i++;
- }
- System.out.println("i: " + i);
- System.out.println("resultSize: " + resultSize);
- posparam = new PosParameter();
- posparam.setValueParamter(0, 1);
- posparam.setValueParamter(1, df.format(end));
- posparam.setValueParamter(2, (end.getTime() - start.getTime()));
- posparam.setValueParamter(3, resultSize);
- posparam.setValueParamter(4, uuid.toString());
- dao.update("UIB020020_93.UPDATE", posparam);
- return af;
-
- //return super.execute(actionmapping, actionform, request, response);
- }
- }
|