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);
  }

Servlet 后台获取XML的更多相关文章

  1. Servlet的5种方式实现表单提交(注册小功能),后台获取表单数据

    用servlet实现一个注册的小功能 ,后台获取数据. 注册页面: 注册页面代码 : <!DOCTYPE html> <html> <head> <meta ...

  2. Hbuilder app开发,使用mui.ajax和服务器交互,后台获取不到值,显示null的解决方法

    先上一个能用的js代码: function login() { var uname=document.getElementById("username").value.trim() ...

  3. javaWeb - 2 — ajax、json — 最后附:后台获取前端中的input type = "file"中的信息 — 更新完毕

    1.ajax是什么? 面向百度百科一下就知道了,这里就简单提炼一下 Ajax即Asynchronous Javascript And XML(异步JavaScript和XML).当然其实我们学的应该叫 ...

  4. SpringMVC核心——参数获取与Servlet资源获取问题

    一.SpringMVC 使用 @PathVariable.@RequestParam.@RequestHeader.@CookieValue 等来解决参数获取问题. 1. @PathVariable: ...

  5. asp.net后台获取路径的各种方法归纳

    asp.net后台获取路径的各种方法归纳   1.Request.CurrentExecutionFilePath    获取当前请求的虚拟路径,不同于 FilePath,差别在于如果请求已在服务器代 ...

  6. Servlet中Web.xml的配置详解

    1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码. DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用 ...

  7. servlet自动获取前端页面提交数据

    servlet自动获取前端页面jsp提交数据 以下是本人在学习过程中,因前端页面提交参数过多,后台servlet封装实体类过于麻烦而写的一个工具类,应用于jsp/servlet数据提交后,基于MVC+ ...

  8. ligerUI---ligerGrid分页排序的使用(从后台获取数据显示)

    写在前面: 最近项目的前框框架用的是ligerUI,里面用到了ligerGrid表格,下面就来说说从后台获取数据并在前台页面进行完美展示.啊哈哈哈..(天啦,坐我旁边的丽姐貌似炒股 一个月可以搞几十万 ...

  9. servlet中获取配置文件中的参数.

    web.xml (添加init-param) <?xml version="1.0" encoding="UTF-8"?> <web-app ...

随机推荐

  1. mysql5.7.16安装

    系统:centOS6.5 mysql: 5.7.16 wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.16-linux-glib ...

  2. NOIP2014提高组第二题联合权值

    还是先看题吧: 试题描述  无向连通图 G 有 n 个点,n-1 条边.点从 1 到 n 依次编号,编号为 i 的点的权值为 Wi ,每条边的长度均为 1.图上两点(u, v)的距离定义为 u 点到 ...

  3. jquery各版本区别

     jquery版本区别:          1.3一般功能够 1.4.2一般功能够而且稳定 1.7+比较新特性 2不支持老IE 兼容的话最好选 1.x.稳定性就用1.7或者1.4,其中1.4的体积相对 ...

  4. 河南多校联合训练 南阳理工 1261 音痴又音痴的LT

    描述 LT最近一直在无限循环薛之谦的歌,简直都中毒了!可是呢…他的歌LT还是不会唱(其实不止他的歌LT不会唱,所有人的歌LT都不会唱…因为LT是标准的音痴)可是LT又很喜欢唱歌(所以LT不仅是音痴还是 ...

  5. QTP连接MYSQL数据库方法

    1.首先安装mysql数据驱动,qtp在windows系统下操作连接mysql,所以下载mysql-connector-odbc-   5.1.8-win32.msi 下载地址:http://mysq ...

  6. linux手工笔记

    一.vi编辑器常用命令: -------------------------------- •插入文字:I键A键 •退回命令模式:ESC •存盘:w •不存盘退出:q •存盘退出:wq •强制退出:q ...

  7. java 线程池 并行 执行

    https://github.com/donaldlee2008/JerryMultiThread/blob/master/src/com/jerry/threadpool/ThreadPoolTes ...

  8. java中的equals()方法

    大家都知道,在Java中,对于对象的比较,如果用“==”比较的是对象的引用,而equals才是比较的对象的内容. 一般我们在设计一个类时,需要重写父类的equals方法,在重写这个方法时,需要按照以下 ...

  9. shell脚本学习(二)

    4.cat命令 1)  cat -s    摆脱多余的空白行 2)  cat -T    将制表符显示为^I 3)  cat -n    显示行号 4) cat -b    跳过空白行,然后显示行号 ...

  10. SNMP学习之结构体snmp_secmod_def

    此结构体中定义了各个回调函数,在函数init_ksm(E:\code\net-snmp-5.4.2.1\snmplib)中进行了初始化. void init_ksm(void) { struct sn ...