실제로 Json은 데이터 형식입니다. 데이터는 백그라운드에서 형식으로 변환된 다음 직렬화와 유사하게 프런트엔드에서 동일한 방법으로 구문 분석됩니다. json 형식은 주로 여러 데이터를 나타낼 수 있는 키-값 쌍으로 구성됩니다. 예를 들어
{name:zhangsan,age:12,class:1}
동시에 json은 {} 및:으로 구성된 데이터 세트를 나타낼 수도 있습니다. 예를 들어, 데이터베이스에서 테이블을 쿼리한 다음 테이블을 프런트 데스크로 전송해야 하지만 데이터 세트를 직접 전송할 수는 없습니다. 데이터 세트 데이터를 json 데이터로 변환해야 프런트 데스크 js의 구문 분석이 쉬워집니다. 아래에 변환에 대해 작성하겠습니다.
{이름: 테이블 이름, 행: [{SName: 이름, Sage: 나이}{...}{...}] } 테이블의 데이터 형식은
{Tables:[{Name: Name of Table 1, Rows: [{SName: Name, Sage: Age}{...}{...} ]}{이름: 테이블 2의 이름, 행: [{SName: 이름, Sage: Age}{...}{...}]}]} 여러 테이블의 데이터 형식입니다
데이터 세트를 보여주기 위해 예제를 사용하겠습니다. 전송
먼저 Studentinfo.html 데이터를 가져오는 첫 페이지가 필요합니다. 이 페이지에는 Json 형식으로 데이터를 가져오는 기능이 있습니다. JSON.parse();
jquery의 post 기능을 사용하여 백그라운드에서 데이터를 가져온 다음 데이터를 구문 분석합니다. 이제 배경의 데이터 형식을 보여드리겠습니다
private String GetDataSet()
{
System.Data.DataSet ds = new System.Data.DataSet()
//테스트 데이터
(System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection("server=.;database= Student;uid=sa;pwd=123456"))
{
using (System.Data.SqlClient.SqlCommand com=conn.CreateCommand( ))
{
com.CommandText = "BaseNews에서 * 선택";
System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter(com); (ds);
}
}
return Dataset2Json(ds)
}
///
/// JSON 형식
/// ///
🎜>공개 정적 문자열 DataTable2Json(System.Data.DataTable dt)
{
StringBuilder jsonBuilder = new StringBuilder()
jsonBuilder.Append("{"Name":"" dt.TableName "", "행");
jsonBuilder.Append("":[ ");
for (int i = 0; i < dt.Rows.Count; i )
{
jsonBuilder.Append ("{");
for (int j = 0; j < dt.Columns.Count; j )
{
jsonBuilder.Append(""");
jsonBuilder.Append( dt.Columns[j].ColumnName);
jsonBuilder.Append ("":"")
jsonBuilder.Append(dt.Rows[i][j].ToString().Replace(""" , "\"")); //특수문자의 경우에도 특별한 처리를 거쳐야 합니다.
jsonBuilder.Append("",");
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
jsonBuilder.Append("},");
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1);
jsonBuilder.Append("]");
jsonBuilder.Append("}");
}
///
/// DataSet을 Json 형식으로 변환
/// ///
DataSet
///
공개 정적 문자열 Dataset2Json(System.Data.DataSet ds)
{
StringBuilder json = new StringBuilder();
json.Append("{"Tables":");
json.Append("[")
foreach(ds.Tables의 System.Data.DataTable dt)
{
json.Append(DataTable2Json(dt));
json.Append(",")
json.Remove(json.Length - 1, 1); >json.Append("]");
json.Append("}");
return json.ToString()}
결과를 보여드리겠습니다
얻은 데이터를 바탕으로 해당 형식을 제공할 수 있습니다
여기서 끝났다고 생각하지 마세요. Json 형식은 다른 브라우저에서 호환성 문제가 있을 수 있습니다. 이 경우 json2의 js만 다운로드하면 됩니다.