如何将数据库里的数据能输入进js表格

lusaowei0759 2017-07-13 01:56:03
Mysql数据库数据是在severlet里打开的。
想通过java script输入进表格。
不知道输出的数据该做何处理。
我用的是ajax同步的方法。
求大神帮助

testSeverlet.java文件
package org.test.servlets;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import java.sql.*;
/**
* Servlet implementation class testServlet
*/
@WebServlet("/testServlet")
public class testServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/Database Initailization";
String id;
String name;

// 数据库的用户名与密码,需要根据自己的设置
static final String USER = "root";
static final String PASS = "123456";

/**
* @see HttpServlet#HttpServlet()
*/
public testServlet() {
super();
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


Connection conn = null;
Statement stmt = null;
// 设置响应内容类型
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();


try{
// 注册 JDBC 驱动器
Class.forName("com.mysql.jdbc.Driver");

// 打开一个连接
conn = DriverManager.getConnection(DB_URL,USER,PASS);

// 执行 SQL 查询
stmt = conn.createStatement();
String sql;
sql = "select*from train_exam_dept";
ResultSet rs = stmt.executeQuery(sql);

// 展开结果集数据库
while(rs.next()){
out.print(rs.getString("ID")+"");
name=rs.getString("NAME");
out.print(name);
out.print("<br>");
}
out.println("</body></html>");

// 完成后关闭
rs.close();
stmt.close();
conn.close();
} catch(SQLException se) {
// 处理 JDBC 错误
se.printStackTrace();
} catch(Exception e) {
// 处理 Class.forName 错误
e.printStackTrace();
}finally{
// 最后是用于关闭资源的块
try{
if(stmt!=null)
stmt.close();
}catch(SQLException se2){
}
try{
if(conn!=null)
conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}

Employee[] employeeList =new Employee[]{
new Employee(name)};


}
}
class Employee
{
public Employee(String p_dept)
{

_dept = p_dept;
}

private String _dept = null;

public String getDept()
{
return _dept;
}

}


test.js文件
datagrid = function (datagrid_container)
{

var me=this;

me.container=datagrid_container;
var _table=null;
me.dataSource=null;
me.dataSourceURL="testServlet";

me.selection =null;
me.selectedRow =null;

me.onDataBind=null;
me.onSelectionChange=null;

me.init =function()
{

me.container.className="datagrid";
_table=me.container.appendChild(document.createElement("table"));

var tbody=_table.appendChild(document.createElement("tbody"));
tbody.addEventListener("click", _onclick,false);

_initHead();
_initColumns();

}

me.load = function()
{

_fetchData();
me.dataBind();

}
me.dataBind = function()
{
if(me.dataSource !=null)
{
for(var i = 0;i < me.dataSource.length;i++)
{
var employee = me.dataSource[i];
me.appendRow(employee);
}
}
if(me.onDataBind!=null&&typeof(me.onDataBind)=="function")
{
me.onDataBind(me,null);

}
}
me.appendRow = function(p_data)
{
var row = _table.insertRow();
row.id="r" + p_data.id;



var cell = row.insertCell();
cell.innerText= p_data.dept;

return row;
}

me.selectRow = function(p_id)
{
if(me.selectedRow!=null)
{
me.selectedRow.className="";

}
var row=_table.rows["r"+p_id];
row.className="selected";
me.selectedRow=row;
me.selection= me.getEmployeeById(p_id);
{
if(me.onSelectionChange!=null&&typeof(me.onSelectionChange)=="function")
{
me.onSelectionChange(me,row);

}
}
}
me.getEmployeeById=function(p_id)
{
{

for(var i=0;i<me.dataSource.length;i++)
{
var data=me.dataSource[i];
if(data.id== p_id)
{
return data;
}


}
return null;
}
}
function _onclick()
{
var e = event.srcElement;
while(e.tagName!="TR")
{
e=e.parentNode;
if(e==null)
{
return;
}
}

me.selectRow(parseInt(e.id.substring(1)));
}

function _fetchData()
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET",me.dataSourceURL,false);
xmlHttp.send();
var jsonCode=xmlHttp.responseText;
me.dataSource=eval(jsonCode);
// xmlHttp.onreadystatechange=function()
// {
// if(xmlHttp.readyState==4 )
// {
//
// if(xmlHttp.status==200)
// {
// var jsonCode=xmlHttp.responseText;
// me.dataSource=eval(jsonCode);
// me.dataBind();
//
// }
// }
// }
// xmlHttp.send();



}
function _initColumns()
{
var colgroup=_table.appendChild(document.createElement("colgroup"));


var col=colgroup.appendChild(document.createElement("col"));
col.width="30%";
}
function _initHead()
{
var thead=_table.appendChild(document.createElement("thead"));
var row=thead.insertRow();

var cell=row.insertCell();
cell.innerText="部门";

}

return me;
}
...全文
139 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧