By GokiSoft.com|
19:14 14/04/2023|
Java Advanced
[Source Code] Tìm hiểu JSON - C2206L
#Main.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.gokisoft.xml.lesson03;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
/**
*
* @author teacher
*/
public class Main {
/**
* gson: https://mvnrepository.com/artifact/com.google.code.gson/gson/2.10.1
*
* @param args
*/
public static void main(String[] args) {
String json = "[{\"fullname\":\"TRAN VAN A\",\"email\":\"a@gmail.com\",\"address\":\"Ha Noi\",\"phone-number\":\"4234234234\",\"age\":22},{\"fullname\":\"TRAN VAN B\",\"email\":\"b@gmail.com\",\"address\":\"Ha Noi\",\"phone-number\":\"4234234234\",\"age\":22}]";
List<Student> dataList = new ArrayList<>();
Type listType = new TypeToken<List<Student>>(){}.getType();
dataList = new Gson().fromJson(json, listType);
for (Student student : dataList) {
student.display();
}
}
}
#Student.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.gokisoft.xml.lesson03;
import com.google.gson.annotations.SerializedName;
/**
*
* @author teacher
*/
public class Student {
String fullname;
@SerializedName(value = "phone-number")
String phoneNumber;
String address;
String email;
int age;
public Student() {
}
public String getFullname() {
return fullname;
}
public void setFullname(String fullname) {
this.fullname = fullname;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "fullname=" + fullname + ", phoneNumber=" + phoneNumber + ", address=" + address + ", email=" + email + ", age=" + age;
}
public void display() {
System.out.println(this);
}
}
#readme.txt
u뚀
#student.json
[
{
"fullname": "TRAN VAN A",
"email": "a@gmail.com",
"address": "Ha Noi",
"phone-number": "4234234234",
"age": 22
}, {
"fullname": "TRAN VAN B",
"email": "b@gmail.com",
"address": "Ha Noi",
"phone-number": "4234234234",
"age": 22
}
]
#student.min.json
[{"fullname":"TRAN VAN A","email":"a@gmail.com","address":"Ha Noi","phone-number":"4234234234","age":22},{"fullname":"TRAN VAN B","email":"b@gmail.com","address":"Ha Noi","phone-number":"4234234234","age":22}]
#vidu.html
<!DOCTYPE html>
<html>
<head>
<title>JSON tutorial</title>
</head>
<body>
<script type="text/javascript">
var json = `[{"fullname":"TRAN VAN A","email":"a@gmail.com","address":"Ha Noi","phone-number":"4234234234","age":22},{"fullname":"TRAN VAN B","email":"b@gmail.com","address":"Ha Noi","phone-number":"4234234234","age":22}]`;
console.log(json)
var arr = JSON.parse(json)
console.log(arr)
</script>
</body>
</html>
#vidu2.html
<!DOCTYPE html>
<html>
<head>
<title>JSON tutorial</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<!-- Popper JS -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div class="panel panel-primary">
<div class="row" id="dataList">
</div>
<button class="btn btn-success">Load Data</button>
</div>
</div>
<script type="text/javascript">
$(function() {
$('.btn.btn-success').click(function() {
$.get('https://gokisoft.com/api/fake/49/product/list', function(data) {
data = JSON.parse(data)
console.log(data)
for(var item of data) {
$('#dataList').append(`<div class="col-md-4">
<img src="${item.thumbnail}" style="width: 100%">
<p>${item.title}</p>
<p>${item.price}</p>
</div>`)
}
})
})
})
</script>
</body>
</html>
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)