Beanshell是一款開源而且非常流行的Java腳本引擎,它可以處理Java的對象以及其他任何類型的數據。通過Beanshell我們可以非常方便地獲取JSON數據,從而實現業務需求。
import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; import org.json.JSONObject; public class BeanshellDemo { public static void main(String[] args) { String urlStr = "https://api.example.com/mydata.json"; try { // 打開URL連接 URL url = new URL(urlStr); URLConnection conn = url.openConnection(); // 讀取數據 InputStream is = conn.getInputStream(); InputStreamReader isr = new InputStreamReader(is, "UTF-8"); StringBuffer sb = new StringBuffer(); char[] buffer = new char[1024]; int len; while ((len = isr.read(buffer)) != -1) { sb.append(new String(buffer, 0, len)); } isr.close(); is.close(); // 將數據解析成JSON對象 JSONObject jsonObj = new JSONObject(sb.toString()); System.out.println(jsonObj.toString(2)); } catch (IOException e) { e.printStackTrace(); } } }
上面的代碼演示了如何使用Beanshell從URL中讀取JSON數據,并將其解析成JSON對象。在這個例子中,我們首先打開URL連接,然后從連接中讀取數據并解析成一個字符串,最后使用JSON對象將字符串解析成一個可操作的JSON對象。
總之,Beanshell是一款非常強大的Java腳本引擎,在獲取JSON數據方面也有很好的功效。如果你需要從網絡或者其他地方獲取JSON數據并進行進一步處理,可以嘗試使用Beanshell來實現。