zoukankan      html  css  js  c++  java
  • Servlet 后台获取XML

    D

    package net.nw.servlet;
    import java.io.IOException;
    import java.io.PrintWriter;
    
    import javassist.expr.NewArray;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import net.nw.dao.Conn;
    import net.nw.dao.ModelcodesDAO;
    
    import java.sql.*;
    import java.util.ArrayList;
    import java.util.List;
    
    
    public class DateServlet extends HttpServlet {
    	private static final long	serialVersionUID	= 1L;
    	private ModelcodesDAO mcd = new ModelcodesDAO();
    	public void doGet(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		String where = null;
    		String currdate= request.getParameter("currdate");
    		String projectname=request.getParameter("projectname");	
    		String codeid = request.getParameter("modelname");
    		String mname = mcd.getNameById(Integer.parseInt(codeid));
    		where="where ProjectName like '%"+projectname+"%'  AND ModelCode like '%"+mname+"%'";
    		
    		StringBuffer xmlDOM = new StringBuffer();
    		ResultSet rs=null;
    		rs = this.getResultSet(where);		
    		xmlDOM.append("<root>");
    		try {			
    			xmlDOM.append("<defects>");
    			while (rs.next()) {
    				xmlDOM.append("<defectmonth>");
    				xmlDOM.append("<Day1>" + rs.getString("Day1") + "</Day1>");
    				xmlDOM.append("<Day2>" + rs.getString("Day2") + "</Day2>");
    				xmlDOM.append("</defectmonth>");
    				request.setAttribute("daay1", rs.getString("Day1"));
    				System.out.println(request.getAttribute("daay1"));
    			}
    			rs.close();
    			xmlDOM.append("</defects>");
    		} catch (SQLException e) {
    			System.out.println(e.getMessage());
    		}		
    	
    		xmlDOM.append("</root>");		
    		this.print(request, response, xmlDOM.toString());
    	}
    
    
    	public void doPost(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    			this.doGet(request, response);		
    	}
    	
    
    	private void print(HttpServletRequest request, HttpServletResponse response,String xmlDOM) throws IOException{
    		response.setCharacterEncoding("utf-8");
    		response.setContentType("text/xml");
    		PrintWriter out = response.getWriter();
    		out.print(xmlDOM);
    		out.close();
    	}
    	
    	
    	private ResultSet getResultSet(String where){
    		Connection conn = null;
    		PreparedStatement pstmt = null;
    		ResultSet rs = null;
    		try {
    			conn = getConn();
    		} catch (ClassNotFoundException e) {
    			System.out.println(e.getMessage());
    		} catch (SQLException e) {
    			System.out.println(e.getMessage());
    		}
    		
    		String sql = "select * from defects_infor_daily "+where; 
    		System.out.println(sql);
    		//String sql = "select top "+len+" * from person where pid >= ? order by pid";
    		
    		try {
    			pstmt = conn.prepareStatement(sql);			
    			rs = pstmt.executeQuery();
    		} catch (SQLException e) {
    			System.out.println(e.getMessage());
    		}
    		return rs;
    	}
    	
    	
    	private Connection getConn() throws ClassNotFoundException, SQLException{
    		
    		String driver = "com.mysql.jdbc.Driver"; 
            String url="jdbc:mysql://109.110.100.56/tsdr_project";
        	String user="root";
        	String password="";
    		Class.forName(driver);
    		System.out.println("��ݿ�����");
    		return DriverManager.getConnection(url,user,password);
    		
    	}
    
    }
    

    前台获取

      var js = {
    	XMLHttp:null,
    		//发送请求函数
    	sendRequest:function(url,responseFun,callback){
    		//创建XMLHTTPRequest对象
    		(function(){						
    			//根据浏览器类型创建XMLHTTPRequest对象
    			if(window.XMLHttpRequest){
    				js.XMLHttp = new XMLHttpRequest();
    			}
    			else{
    				try{
    					js.XMLHttp = new ActionXObject("Msxml2.XMLHTTP");
    				}catch (e){
    				  try{
    						js.XMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
    				  } catch (e0){alert("Microsoft"+e0);}
    				}
    			}
    						
    		})();
    					
    		js.XMLHttp.open("POST", url, true);
    		js.XMLHttp.onreadystatechange = function(responseFunction){
    		  if(js.XMLHttp.readyState == 4){
    				if(js.XMLHttp.status == 200){						
    					responseFun(js.XMLHttp);
    				}else{
    					document.getElementById("canvasDivZhe").innerHTML = "<font color='red'>连接服务器异常...</font>"	;
    				}
    		  }
    		  else{
    			//document.getElementById("div").innerHTML = "<font color='red'>数据加载中...</font>"	;	
    		  }
    		};//指定响应函数
    		js.XMLHttp.send(null);
    		return js.XMLHttp;
    	}
      };
    				
    				
      //响应函数
      function responseFunction(xmlhttp){				
    		var xmlDOM = xmlhttp.responseXML; //接受服务器返回的xml文档	
    		//document.getElementById("div").innerHTML =xmlhttp.responseText;
    		//alert(xmlhttp.responseText);
    		parse(xmlDOM);//解析XML文档
      }
    				
       //解析XML文档
      function parse(xmlDOM){
    		//alert(xmlDOM);
    		//var da=#request.daay1;
    		var person = xmlDOM.getElementsByTagName("defectmonth");
    		var day1=person[0].getElementsByTagName("Day1")[0].firstChild.data;
    		alert(day1);
    		  		
    }//function end
    //主调函数,以当前页作为参数		
      function AjaxTest(currdate,projectname,modelname) {				
    		var projectname="<%=session.getAttribute("projectname_session")%>";	
    		var modelname= document.getElementById("codeid").value;
    		//alert(currdate+ " " +projectname+" "+modelname);
    		js.sendRequest("DateServlet?currdate="+currdate+"&projectname="+projectname+"&modelname="+modelname,responseFunction,null);			
      }
    			
    
  • 相关阅读:
    Leetcode 15 3Sum
    Leetcode 383 Ransom Note
    用i个点组成高度为不超过j的二叉树的数量。
    配对问题 小于10 1.3.5
    字符矩阵的旋转 镜面对称 1.2.2
    字符串统计 连续的某个字符的数量 1.1.4
    USACO twofive 没理解
    1002 All Roads Lead to Rome
    USACO 5.5.1 求矩形并的周长
    USACO 5.5.2 字符串的最小表示法
  • 原文地址:https://www.cnblogs.com/wujixing/p/5776268.html
Copyright © 2011-2022 走看看