package Ġde . code bo je . t uts . sheet 2 site Ċ Ċ import Ġcom . google . api . client . googleapis . jav an et . Google Net Http Transport Ċ import Ġcom . google . api . client . json . jackson 2 . Jack son Factory Ċ import Ġcom . google . api . services . sheets . v 4 . Sheet s Ċ import Ġorg . springframework . stereotype . Controller Ċ import Ġorg . springframework . web . bind . annotation . GetMapping Ċ import Ġorg . springframework . web . bind . annotation . PathVariable Ċ import Ġorg . springframework . web . servlet . Model AndView Ċ import Ġorg . springframework . beans . factory . annotation . Value Ċ import Ġcom . google . api . services . sheets . v 4 . Sheet sRequest Initializer Ċ Ċ @ Controller Ċ class ĠPage Controller Ġ(@ Value ("\ ${ google . api . key }") Ġgoogle Key : String ) Ġ{ ĊĉĊ ĉ val Ġgoogle Key Ġ= Ġgoogle Key ĊĊ ĉ val ĠHTTP _ TRANSPORT Ġ= ĠGoogle Net Http Transport . new Trusted Transport () Ċ ĉ val ĠJSON _ FACTORY Ġ= ĠJack son Factory . getDefaultInstance () ĊĊ ĉ @ GetMapping ("/ site /{ sheet Id }") Ċ ĉ fun Ġget Site (@ PathVariable (" sheet Id ") Ġsheet Id : ĠString ?, Ġmodel : ĠModelAndView ): ĠString Ġ{ ĊĊĉ ĉ println ( google Key ) Ċĉ ĉ val Ġsheets Service Ġ= ĠSheet s . Builder ( HTTP _ TRANSPORT , ĠJSON _ FACTORY , Ġnull ). set Sheet sRequest Initializer ( Sheet sRequest Initializer ( google Key )). build () ĊĊĊĉ ĉ val Ġresponse Ġ= Ġsheets Service . spreadsheet s (). values () Ċĉĉĉ ĉ . get ( sheet Id , Ġ"! A 3 : E ") Ċĉĉĉ ĉ . execute (); Ċĉ ĉ val Ġvalues Ġ= Ġresponse . getValues (); Ċĉ ĉ if Ġ( values Ġ!= Ġnull Ġ&& Ġ! values . isEmpty ()) Ġ{ Ċĉĉ ĉ for Ġ( row Ġin Ġvalues ) Ġ{ Ċĉĉĉ ĉ // ĠPrint Ġcolumns ĠA Ġand ĠE , Ġwhich Ġcorrespond Ġto Ġindices Ġ 0 Ġand Ġ 4 . Ċĉĉĉ ĉ System . out . printf ("% s , Ġ% s \ n ", Ġrow . get ( 0 ), Ġrow . get ( 1 )); Ċĉĉ ĉ } Ċĉ ĉ } ĊĊĉ ĉ return Ġ" site " Ċ ĉ } Ċ }