package com.jboss.teiid.client; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import org.teiid.client.plan.PlanNode; import org.teiid.jdbc.TeiidStatement; import com.jboss.teiid.client.util.JDBCUtil; public class PortfolioCient { private static final String JDBC_DRIVER = "org.teiid.jdbc.TeiidDriver"; private static final String JDBC_URL = "jdbc:teiid:Portfolio@mm://localhost:31000;version=1"; private static final String JDBC_USER = "teiidUser"; private static final String JDBC_PASS = "password1!"; static String sql_sheet1 = "SELECT * FROM Sheet1"; static String sql_StockPrices = "SELECT * FROM StockPrices"; static String sql_PRODUCT = "SELECT * FROM PRODUCT"; static String sql_Stock = "SELECT * FROM Stock"; public static void main(String[] args) throws Exception { Connection conn = JDBCUtil.getDriverConnection(JDBC_DRIVER, JDBC_URL, JDBC_USER, JDBC_PASS); subPlanStatistic(sql_sheet1, conn); subPlanStatistic(sql_StockPrices, conn); subPlanStatistic(sql_PRODUCT, conn); subPlanStatistic(sql_Stock, conn); JDBCUtil.close(conn); } static void subPlanStatistic(String sql, Connection conn) throws SQLException { Statement stmt = null; ResultSet rs = null; try { stmt = conn.createStatement(); stmt.execute("set showplan DEBUG"); rs = stmt.executeQuery(sql); while(rs.next()){ // System.out.println(rs.getLong(1)); } TeiidStatement tstatement = stmt.unwrap(TeiidStatement.class); PlanNode queryPlan = tstatement.getPlanDescription(); System.out.println(queryPlan.toXml()); } finally { if(rs != null) { rs.close(); } if(stmt != null) { stmt.close(); } } System.out.println("\n\n"); } }