asp中把数据表映射成ajax可调用的json格式的方法

2009-12-23 18:37:00 已被阅读: 发表评论
感谢 http://www.miantuan.net 的投递

asp ajax json教程

首先用ACCESS建json.mdb的库,然后建一个表t_jsontable,字段如下:jt_id,jt_name,jt_createtime
下面我们学习如果把t_jsontable表的单条记录映射成JSON格式

<!--#include file="Conn.asp" -->
<!--#include file="MiantuanJson.asp" -->
<%
"MtRecToJson的使用范例
"作者:miantuan.net
"email:ray@miantuan.net
"qq:12694448
"交流区:http://www.miantuan.net
ConnectionDatabase
dim myrs,sqlstr,id,singleJson
Set myrs=Server.CreateObject("ADODB.recordset")
id = request("id")
if id="" then
id = "0"
end if
sqlstr = "select * from t_jsontable where jt_id="&id
set myrs = conn.execute(sqlstr)
"实例化一个MtRecToJson类的对象
set singleJson = new MtRecToJson
"把recordset对象set给singleJson singleJson.setRecordset(myrs)
"调用getOneJsonDB方法输出JSON response.write singleJson.getOneJsonDB()
if not IsEmpty(myrs) then
myrs.close
set myrs = nothing
end if
conn.close
set conn = nothing
%>

下面是执行结果:

{"jt_id":"1","jt_name":"麦兜","jt_createtime":"2009-12-7 15:01:40"}

接下来我们学习把多条记录映射成JSON格式的方法

<!--#include file="Conn.asp" -->
<!--#include file="MiantuanJson.asp" -->
<% ConnectionDatabase
dim myrs,sqlstr,singleJson,page,pagesize,sort
dim n,v
Set myrs=Server.CreateObject("ADODB.recordset")
page=Replace(Request.QueryString("page"),""","""")
pagesize=Replace(Request.QueryString("pagesize"),""","""")
sort=Replace(Request.QueryString("sort"),""","""")
n=Replace(Request.QueryString("n"),""","""")
v=Replace(Request.QueryString("v"),""","""")
If v="" then v=0
if sort="1" then
sort = "desc"
elseif sort = "2" then
sort = "asc"
else
sort = "desc"
end if
If page="" then page=1
If pagesize="" then pagesize=20
sqlstr = "select * from t_jsontable"
if n<>"" then
sqlstr = sqlstr & " where " & n & "=" & v
end if
sqlstr = sqlstr & " order by jt_id "&sort
myrs.Open sqlstr,Conn,1.1
if myrs.recordcount<>0 then
myrs.pageSize = pagesize
myrs.AbsolutePage = page
end if
"实例化一个MtRecToJson类的对象
set singleJson = new MtRecToJson
"把recordset对象set给singleJson
singleJson.setRecordset(myrs)
"调用getListJsonDB方法输出JSON
response.write singleJson.getListJsonDB()
if not IsEmpty(myrs) then
if myrs.State>0 then
myrs.close
end if
set myrs = nothing
end if
conn.close
set conn = nothing
%>

下面是执行结果:

{"count":"4",items:[{"jt_id":"5","jt_name":"嚷嚷","jt_createtime":"2009-12-8 17:12:22"},{"jt_id":"4","jt_name":"闪烁","jt_createtime":"2009-12-8 17:12:19"},{"jt_id":"2","jt_name":"帽子","jt_createtime":"2009-12-7 23:20:29"},{"jt_id":"1","jt_name":"麦兜","jt_createtime":"2009-12-7 15:01:40"}]

[下载源文件]