//将记录转为Json格式
public <T extends Object> String objectsToJsonStr(List<T> baseModelList, Class beanClass, String datePatten,
int totalCount) {
JSONArray jsonArray = JSONArrayfromObject(baseModelList);
JsonConfig jsonConfig = new JsonConfig();
JSONArray returnJsonArray = new JSONArray();
T baseModel = null;
for (int i = 0; i < jsonArraysize(); i++) {
JSONObject rowData = (JSONObject) jsonArrayget(i);
baseModel = (T) JSONObjecttoBean(rowData, beanClass);
JSONObject jo = JSONObjectfromObject(baseModel, jsonConfig);
returnJsonArrayadd(jo);
}
StringBuffer jsonString = new StringBuffer();
jsonStringappend(returnJsonArraytoString());
// 返回结果集
return jsonStringtoString();
}
//使用实例
String strData = objectsToJsonStr(users, S_USERclass, null, userssize());
//users:多条记录; S_USER:POJO类
直接读写文件,再把读出来的文件内容格式化成json,再用JDBC、Mybatis或者其他框架将json数据存入数据库。
假设实体类是这样的:
public class ElectSet {public String xueqi;
public String xuenian;
public String startTime;
public String endTime;
public int menshu;
public String isReadDB;
//{"xueqi":,"xuenian":,"startTime":,"endTime":,"renshu":,"isReadDB":}
public String getXueqi() {
return xueqi;
}
public void setXueqi(String xueqi) {
thisxueqi = xueqi;
}
public String getXuenian() {
return xuenian;
}
public void setXuenian(String xuenian) {
thisxuenian = xuenian;
}
public String getStartTime() {
return startTime;
}
public void setStartTime(String startTime) {
thisstartTime = startTime;
}
public String getEndTime() {
return endTime;
}
public void setEndTime(String endTime) {
thisendTime = endTime;
}
public int getMenshu() {
return menshu;
}
public void setMenshu(int menshu) {
thismenshu = menshu;
}
public String getIsReadDB() {
return isReadDB;
}
public void setIsReadDB(String isReadDB) {
thisisReadDB = isReadDB;
}
}
有一个json格式的文件,存的信息如下:
Setsjson:{"xuenian":"2007-2008","xueqi":"1","startTime":"2009-07-19 08:30","endTime":"2009-07-22 18:00","menshu":"10","isReadDB":"Y"}
具体 *** 作:
/取出文件内容,填充对象
/
public ElectSet findElectSet(String path){
ElectSet electset=new ElectSet();
String sets=ReadFile(path);//获得json文件的内容
JSONObject jo=JSONObjectfromObject(sets);//格式化成json对象
//Systemoutprintln("------------" jo);
//String name = jogetString("xuenian");
//Systemoutprintln(name);
electsetsetXueqi(jogetString("xueqi"));
electsetsetXuenian(jogetString("xuenian"));
electsetsetStartTime(jogetString("startTime"));
electsetsetEndTime(jogetString("endTime"));
electsetsetMenshu(jogetInt("menshu"));
electsetsetIsReadDB(jogetString("isReadDB"));
return electset;
}
//设置属性,并保存
public boolean setElect(String path,String sets){
try {
writeFile(path,sets);
return true;
} catch (IOException e) {
// TODO Auto-generated catch block
eprintStackTrace();
return false;
}
}
//读文件,返回字符串
public String ReadFile(String path){
File file = new File(path);
BufferedReader reader = null;
String laststr = "";
try {
//Systemoutprintln("以行为单位读取文件内容,一次读一整行:");
reader = new BufferedReader(new FileReader(file));
String tempString = null;
int line = 1;
//一次读入一行,直到读入null为文件结束
while ((tempString = readerreadLine()) != null) {
//显示行号
Systemoutprintln("line " line ": " tempString);
laststr = laststr tempString;
line ;
}
readerclose();
} catch (IOException e) {
eprintStackTrace();
} finally {
if (reader != null) {
try {
readerclose();
} catch (IOException e1) {
}
}
}
return laststr;
}
将获取到的字符串,入库即可。
这个可以吧json格式的字符串解析成数组json_decode()函数,变成数组以后就可以方便 *** 作了,可以删除数组中的任意一项,也可以增加一项比如:array_push($data,['sort'=>3,'catentryId'=>10003]),再变成json格式的存入数据库。方法有多种,这里简单的示例下
把json字符串存入数据库,如果数据库里面存储的字段是字符串类型或者text的话是可以直接存入的。
例如:
$sql = "insert into tablename (fieldname) values ('$jsondata')";mysql_query($sql);
这样就好了。
数据库只是用来存储数据的,为什么不把处理数据的部分放在后台?
在这里你需要了解以下几个知识点。
在sqlserver 中存储json ,需要用字符串类型进行存储,一般用nvarchar()或 varchar()进行存储。
openJson:打开Json字符串
IsJson:判断一个字符串是不是合法的Json格式。是返回1,否返回0,null返回null。
Json_Value:从Json字符串中提取值。
Json_Query:Json字符串中提取对象或数组。
Json_Modify:更新Json字符串中的属性值,并返回更新的Json字符串
然后参考的需求,获取输入key值中的value字段可以得到如下sql语句。
从JSON中获取输入B的JSON对象
SELECT JSON_QUERY(json, CONCAT('$',key)) INTO K_VAL;
从B的JSON对象中,获取value字段的值
SELECT JSON_VALUE(K_VAL, '$value') INTO JSONVALUE;
最终我们的声明的函数大概是:
CREATE FUNCTION PARSEJSON(json VARCHAR(2000), key VARCHAR(200))
RETURNS VARCHAR
BEGIN
declare JSONVALUE VARCHAR;
declare K_VAL VARCHAR;
SELECT JSON_QUERY(json, CONCAT('$',key)) INTO K_VAL;
SELECT JSON_VALUE(K_VAL, '$value') INTO JSONVALUE;
return JSONVALUE;
END
以上就是关于数据库数据以json格式传递到网页全部的内容,包括:数据库数据以json格式传递到网页、java读取json格式文件 存入数据库、mysql数据库中某个字段存的是json数据,如何对json数据中的数据进行 *** 作等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)