JDBC方式及HTTP方式訪問TigerGraph圖數據庫

JDBC方式:

jdbc方式需要使用到此jar包:
在這裏插入圖片描述
jar包下載地址:點擊此處下載

package com.tigerGraph.jdbc;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

import com.tigergraph.jdbc.Driver;

public class connGraph {
  public static void main(String[] args) {
	Properties properties = new Properties();
	properties.put("username", "root");
	properties.put("password", "1a2b3c4d");
	properties.put("graph", "MyGraph");
	try {
		Driver driver=new Driver();
		Connection conn = driver.connect("jdbc:tg:http://192.168.72.143:14240",  properties);
		Statement stmt = conn.createStatement();
		String query="builtins stat_vertex_number";
		ResultSet rs = stmt.executeQuery(query);
		ResultSetMetaData metaData = rs.getMetaData();
		System.out.println(metaData.getColumnName(1));
		for(int i=2;i<=metaData.getColumnCount();++i){
			
			System.out.println("\t"+metaData.getColumnName(i));
		}
		System.out.println(" ");
		while(rs.next()){
			System.out.println(rs.getObject(1));
			for(int i=2;i<=metaData.getColumnCount();++i){
				Object obj = rs.getObject(i);
				System.out.println("\t"+String.valueOf(obj));
			}
		}
		while(!rs.isLast());
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
  }
}

HTTP方式(官方推薦):

HTTP請求工具類:

package com.tigerGraph.restpp;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.List;

public class restUtil {


	/**
	 * 實現對REST服務的請求
	 * @param urlStr
	 * @param urlParam
	 * @return
	 * @author liuze
	 * @throws java.io.IOException
	 */
	public static String httpGet(String urlStr, List<String> urlParam) throws IOException {
		if (!urlParam.isEmpty()) {
			urlStr += "?";
			// 定義一個迭代器,並將MAP值的集合賦值
			for (String string : urlParam) {
				urlStr += string + "&";
			}
			urlStr = urlStr.substring(0, urlStr.length() - 1);
		}
		// 實例一個URL資源
		URL url = new URL(urlStr);
		//實例一個HTTP CONNECT
		HttpURLConnection connet = (HttpURLConnection) url.openConnection();
		connet.setRequestMethod("GET");
		connet.setRequestProperty("Charset", "UTF-8");
		connet.setRequestProperty("Content-Type", "application/json");
		connet.setConnectTimeout(15000);// 連接超時 單位毫秒
		connet.setReadTimeout(15000);// 讀取超時 單位毫秒
		if (connet.getResponseCode() != 200) {
			System.out.println("請求異常" + urlStr);
			return "";
		}
		//將返回的值存入到String中
		BufferedReader brd = new BufferedReader(new InputStreamReader(connet.getInputStream(), "UTF-8"));
		StringBuilder sb = new StringBuilder();
		String line;

		while ((line = brd.readLine()) != null) {
			sb.append(line);
		}
		brd.close();
		connet.disconnect();
		return sb.toString();
	}
}

測試:

package com.tigerGraph.restpp;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class test {
 public static void main(String[] args) throws IOException {
	 List<String> list=new ArrayList<String>();
	 //list.add("a=100");
	 //String httpGet = restUtil.httpGet("http://192.168.184.25:9000/query/social/hello",list);
	 String httpGet = restUtil.httpGet("http://192.168.72.143:9000/graph/MyGraph/vertices/t_sb_znyc_dz",list);
	 System.out.println(httpGet);
 }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章