怎样把SQL中的数据输出到HTML页面麻烦告诉我

怎样把SQL中的数据输出到HTML页面麻烦告诉我,第1张

在本例中,上述的参数分别代表的意思为: @outputfile 生成HTML 文件的位置。如果文档将在远程计算机上生成,则该参数可以是 UNC 名称。 @query 要运行的查询。当在运行任务时,查询结果将以表格形式显示在 HTML 文档中。可以指定多个 SELECT 查询,这样可以在 outputfile 中显示多个表。 @templatefile 用于生成 HTML 文档的模板文件的路径。模板文件包含 HTML 文档的格式特征信息和标记 <%insert_data_here%>,该标记指示将查询结果添加到 HTML 表中的位置。 @dbname 在其上运行查询的数据库名。 指定查询结果是以粗体 (1) 还是非粗体 (0) 显示。bold 的数据类型为 tinyint,默认值为 0。 @rowcnt 指定生成的 HTML 文档中所显示行的最大值。默认值为 0,用来指定显示在 HTML 文档中满足给定查询的所有行。 @whentype 指定何时运行创建 HTML 文档的任务。9代表立即和应请求创建页。将立即创建和重新创建 HTML 文档。

html只能通过ajax接口跟后台数据库接口通信,然后取出来的数据在页面上显示。

以下是一个例子:

html文件suggest.html:

<html>

<head>

<meta http-equiv="content-type" content="text/htmlcharset=UTF-8">

<script language="JavaScript" type="text/javascript" src="ajax_search.js"></script>

<style type="text/css" media="screen">

body {

font: 11px arial

}

.suggest_link {

background-color: #FFFFFF

padding: 2px 6px 2px 6px

cursor:hand

}

.suggest_link_over {

background-color: #E8F2FE

padding: 2px 6px 2px 6px

}

#search_suggest {

position:relative

background-color: #FFFFFF

text-align: left

border: 1px solid #000000

left: -12px

top: 1px

height: 74px

width: 170px

display:none

}

</style>

</head>

<body background="bg.gif">

<center>

<h3>实现搜索提示</h3>

<div style="width: 500px">

<input type="text" id="txtSearch" name="txtSearch" onKeyUp="searchSuggest()" autocomplete="off" />

<input type="submit" id="cmdSearch" name="cmdSearch" value="搜索"/><br />

<div id="search_suggest"></div>

</div>

</center>

</body>

</html>

ajax_search.js:

var searchReq = createAjaxObj()

function createAjaxObj()

{

var httprequest=false

if (window.XMLHttpRequest) //为非IE浏览器生成XmlHttpRequest对象

{

httprequest=new XMLHttpRequest()

if (httprequest.overrideMimeType) httprequest.overrideMimeType('text/xml')

}

else if (window.ActiveXObject) //为IE浏览器生成XmlHttpRequest对象

{

try

{

httprequest=new ActiveXObject("Msxml2.XMLHTTP")

}

catch (e)

{

try

{

httprequest=new ActiveXObject("Microsoft.XMLHTTP")

}

catch (e){}

}

}

return httprequest

}

function searchSuggest()

{

if (searchReq.readyState == 4 || searchReq.readyState == 0)

{

var str = escape(document.getElementById('txtSearch').value)

searchReq.open("GET", 'search?search=' + str, true)//向服务器端发送请求

searchReq.onreadystatechange = handleSearchSuggest//设置回调函数

searchReq.send(null)

}

}

function handleSearchSuggest()

{ //这是回调函数,处理从服务器端返回的信息

if (searchReq.readyState == 4)

{

var ss = document.getElementById('search_suggest')

ss.innerHTML = ''

var str = searchReq.responseText.split("\n")

for(i=0i <str.length - 1i++)

{

var suggest = '<div onmouseover="javascript:suggestOver(this)" '

suggest += 'onmouseout="javascript:suggestOut(this)" '

suggest += 'onclick="javascript:setSearch(this.innerHTML)" '

suggest += 'class="suggest_link">' + str[i] + '</div>'

ss.innerHTML += suggest

ss.style.display="block"

}

}

}

function suggestOver(div_value)

{

div_value.className = 'suggest_link_over'

}

function suggestOut(div_value)

{

div_value.className = 'suggest_link'

}

function setSearch(value)

{

document.getElementById('txtSearch').value = value

document.getElementById('search_suggest').innerHTML = ''

document.getElementById('search_suggest').style.display="none"

}

servlet文件SearchSuggest.java:

package com

import java.sql.Connection

import java.sql.DriverManager

import java.sql.ResultSet

import java.sql.SQLException

import java.sql.Statement

import java.util.ArrayList

import javax.servlet.ServletException

import javax.servlet.http.HttpServlet

import javax.servlet.http.HttpServletRequest

import javax.servlet.http.HttpServletResponse

public class SearchSuggest extends HttpServlet

{

public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, java.io.IOException

{

response.setCharacterEncoding("UTF-8")

String search = request.getParameter("search")//接受参数值

String sql = "select GoodsName from Goods where GoodsName like '"+search+"%' order by GoodsName"//设置查询语句

Connection conn = null

Statement stmt = null

ResultSet rs = null

ArrayList vData = new ArrayList()

java.io.PrintWriter out = response.getWriter()

try {

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")//注册数据库连接驱动

String MdbPath = "F:/sneaker/Tomcat/webapps/search/database/#costume.mdb"

String url= "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)}DBQ=" + MdbPath

conn = DriverManager.getConnection(url)

stmt = conn.createStatement()

rs = stmt.executeQuery(sql)//执行查询

while (rs.next())

{

vData.add(rs.getString("GoodsName"))

}

StringBuilder buf = new StringBuilder()

for (int i=0i<vData.size()i++)

{

String keyword = (String)vData.get(i)

buf.append(keyword+"\n")

}

out.print(buf.toString())//向客户端输出信息

} catch (Exception e) {

e.printStackTrace()

} finally {

try {

if (stmt != null)

stmt.close()

if (conn != null)

conn.close()

} catch (SQLException sqle) {

}

}

}

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, java.io.IOException

{

doPost(request, response)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zaji/5909201.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-08
下一篇2023-03-08

发表评论

登录后才能评论

评论列表(0条)

    保存