Ⅰ jsP执行数据库查询,然后将查询结果用html表格的形式显示出来
最常用的就是使用小脚本,把从数据库中查出的数据保存在一个List集合中,然后在jsp页面中遍版历这个集权合如:
<table><tr><th>数据库中的数据</th></tr>
<% XXXDao =new XXXDao();//这个应该能看懂吧,是和数据库连接的类
List<String> list=.getAllString();//调用XXXDao类中的getAllString方法,得到数据库中的信息,并保存到List泛型集合中
for(String str:list){//遍历集合
%>//一下为html标签,不能写在小脚本里面,所以在次结束小脚本,但for的后}没有结束
<tr><td><%=str %></td></tr>//每次循环都有一行,且用表达式为单元格填值,
<% } %>//在次写上for的}表示,循环到这里后开始下次循环...
</table>//结束table
这是我就在这个框里写的,基本就是这么个形式.你要是能看懂的话,就把其中的东西换成是你自己的,试着写写,多自己试试.这个东西不难,可以加我好友,继续讨论.
首先,你必须准备一个实体类,一个存放实体的集合;然后把从数据库中读出来的结果集还原成实体,存放到集合中,在输出html页面时循环读出去就行了,参考一下代码看看吧,再不懂的话就要好好看书了,要不就用jsp解决!
public static void printList(List<Users> list,PrintWriter out ){
int count = 1;
out.println("<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=gbk\">"+
"</meta></head><body><center><TABLE BORDER = 2 CELLSPACING = 4 CELLPADDING = 10>" +
"<CAPTION><b><font size=6 >用户信息列表</font></b><br>" +
"<TH>序 号</TH><TH>用户名</TH><TH>密 码</TH><TH>部 门</TH><TH>职 位</TH><TH>电 话</TH>);
for(Users user : list){
out.println("<TR align=center><TD>"+count+"</TD>");
out.println("<TD>"+user.getName()+"</TD>");
out.println("<TD>"+user.getPassword()+"</TD>");
out.println("<TD>"+user.getDepartment()+"</TD>");
out.println("<TD>"+user.getJob()+"</TD>");
out.println("<TD>"+user.getPhone()+"</TD>");
count++;
}
out.println("</TABLE></CENTER></BODY></HTML>");
}
Ⅲ 求JAVA中,取得数据库中数据,并将数据绑定到HTML页面文本框中的代码。
1.取数据库数据
2.使用IO把HTML页面内容读到内存,在内存中保存为String类仿巧型
3.使用正则把HTML页面内容中的文本框找到
4.把数据和文本框组合再使用String的replace方法替换到HTML文本内容中
5.在response中设置头信息,主要是设备渗键置Content-Type为text/html
6.用response的喊纤write方法写出即可
Ⅳ 如何获取数据库中的表,生成html页面的table
html只能通过ajax接口跟后台数据库接口通信,然后取出来的数据在页面上显示。
以下是一个例子:
html文件suggest.html:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=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=0; i < str.length - 1; i++)
{
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=0;i<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);
Ⅳ java中怎么将数据库中的数据拿出并生成一个HTML文件。
您好,这简单啊,你自己先创建一个mdb文件啊,连接上mdb文件,然后向他中创建表,再插入数据就OK:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=db1.mdb";
Connection con= DriverManager.getConnection(url,"user","pass");
Ⅵ 如何在java中实现自动生成html
创建一个StringBuilder对象,通过append方法来为其添加html语句。
StringBuilder sb = new StringBuilder();
Properties fileProperties = getProperties("file");
Properties sqlProperties = getProperties("sql");
PrintStream printStream = new PrintStream(new FileOutputStream(
"report.html"));
sb.append("<html>");
sb.append("<head>");
sb.append("<title>每日运营报表</title>");
sb.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");
sb.append("<style type=\"text/css\">");
sb.append("TABLE{border-collapse:collapse;border-left:solid 1 #000000; border-top:solid 1 #000000;padding:5px;}");
sb.append("TH{border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("TD{font:normal;border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("</style></head>");
sb.append("<body bgcolor=\"#FFF8DC\">");
sb.append("<div align=\"center\">");
sb.append("<br/>");
sb.append("<br/>");
List<Map<String, Object>> result1 = getRpt(sqlProperties
.getProperty("sql1"));
for (Map.Entry<String, Object> m : result1.get(0).entrySet()) {
sb.append(fileProperties.getProperty("file1"));
sb.append(m.getValue());
}
sb.append("<br/><br/>");
输出
sb.append("</div></body></html>");
printStream.println(sb.toString());
Ⅶ Java 数据生成html
不太懂来thymeleaf把数据放在session中是源什么意思。
使用thymeleaf的效率是肯定比前台渲染高的,因为你请求直接返回的就是后台已经处理好的html文档,不再需要发第二次请求获取数据,再使用js进行渲染操作。
但是页面加载速度反而使用js的方式更快,因为他可以先渲染出页面,再去加载数据。
Ⅷ java动态的生成html页面
把信息从库里读出来放到集合中,然后根据集合提供的信息拼接html字符串,HTML基本标签会写吧、在BODY中循环表格的行、。把拼接好的字符串直接生成一个html文件就行了、
Ⅸ 在java中 从数据库查出数据怎么显示在html表格中
保存宏丛型在 request 中,利用 ajax 技术,用 js 写在 Html 页面中郑毁的相蔽猜关 DOM 上即可