Jackson 라이브러리 예제)
import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper
import com.fasterxml.jackson.module.kotlin.readValue
import java.io.File
val articles = mutableListOf<Article>()
val mapper = jacksonObjectMapper()
fun main() {
println(" ==== 테스트 시작 ==== ")
println(" JSON 파일 객체로 불러오기 시작 ")
val parsingArticles = mapper.readValue<List<Article>>(File("./ArticleData.json"))
println(" JSON 파일 객체로 불러오기 완료 ")
println(" 기존 JSON 내용 확인 시작 ")
println(" 기존 JSON :: $parsingArticles")
println(" 기존 JSON 내용 확인 완료")
println(" Article 추가 시작 ")
addArticle()
println(" Article 추가 완료 ")
println(" JSON 파일 추가 시작")
mapper.writerWithDefaultPrettyPrinter().writeValue(File("./ArticleData.json"),articles)
println(" JSON 파일 추가 완료")
println(" Articles 출력 시작 ")
println(articles)
println(" Articles 출력 완료 ")
println(" 새로운 게시물 추가 시작 ")
articles.add(Article("title10","body10"))
println(" 현재 Articles = $articles")
println(" 새로운 게시물 추가 완료 ")
println(" 새로운 게시물 JSON 파일에 저장 시작")
mapper.writerWithDefaultPrettyPrinter().writeValue(File("./ArticleData.json"),articles)
println(" 새로운 게시물 JSON 파일에 저장 완료")
println(" JSON 객체 출력 시작 ")
println(parsingArticles)
println(" JSON 객체 출력 완료 ")
println(" ==== 테스트 끝 ==== ")
}
fun addArticle(){
for ( i in 1 .. 5){
articles.add(Article("title$i","body$i"))
}
}
'Language > Kotlin' 카테고리의 다른 글
2021 - 05 - 09, Kotlin (0) | 2021.05.10 |
---|---|
2021 - 05 - 08, Kotlin (0) | 2021.05.10 |
2021 - 05 - 06, Kotlin (0) | 2021.05.08 |
2021 - 05 - 05, Kotlin (0) | 2021.05.08 |
2021 - 05 - 04, Kotlin (0) | 2021.05.08 |