网络编程 
首页 > 网络编程 > 浏览文章

JS请求servlet功能示例

(编辑:jimmy 日期: 2025/4/22 浏览:3 次 )

本文实例讲述了JS请求servlet的方法。分享给大家供大家参考,具体如下:

前端js代码:

//创建ajax请求对象
var xmlHttp;
function createXMLHttpRequest(){
  if(window.ActiveXObject){
      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  }
  else if(window.XMLHttpRequest){
      xmlHttp = new XMLHttpRequest();
  }
}
/**
 * 表单提交
 */
function submit(){
  //发送请求
  var searchContent = $id("search_input").value;//查找内容
  createXMLHttpRequest();
  try{
    xmlHttp.onreadystatechange = handleStateChange;
    xmlHttp.open("GET", "/MyMap/QueryMapServlet"+searchContent, true);
    xmlHttp.send(null);
    }catch(exception){
    alert("您要访问的资源不存在!");
    }
  $("sideToggleRight").attr("checked","checked");//无作用
}
//处理结果
function handleStateChange(){
  if(xmlHttp.readyState == 4){
    if (xmlHttp.status == 200 || xmlHttp.status == 0){
      var t = xmlHttp.responseText;
        jsonobj = eval('('+t+')');
    }
  }
}

servlet端:

//oracle数据库查询的结果:
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url, "dio", "123");
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
rs = stmt.executeQuery("SELECT * FROM GEO where ST like '%"+searchName+"%'");
ResultSetMetaData metaData = rs.getMetaData();
rs.beforeFirst();//将指针移到最开始的位置
int columnCount = metaData.getColumnCount(); //列数
 JSONArray array = new JSONArray();
  while (rs.next()) {
   JSONObject jsonObj = new JSONObject();
    //输出数据
    for (int i = 1; i <= columnCount; i++) {
     String columnName = metaData.getColumnLabel(i);
     String value = rs.getString(columnName);
     jsonObj.put(columnName, value);
    }
     array.put(jsonObj);
    }
   System.out.println(array);
   response.getWriter().print(array);
}

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript中ajax操作技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

上一篇:Vue.Draggable实现拖拽效果
下一篇:vue.js加载新的内容(实例代码)
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?