posts - 41,  comments - 40,  trackbacks - 0

          import java.io.FileWriter;
          import java.io.IOException;
          import java.io.BufferedWriter;

          import java.awt.Toolkit;

          import java.sql.Types;
          import java.sql.ResultSet;
          import java.sql.Statement;
          import java.sql.Connection;
          import java.sql.SQLException;
          import java.sql.DriverManager;
          import java.sql.ResultSetMetaData;

          import javax.swing.JOptionPane;


          final class GetSQLServerType
          {
          ? private Connection??????? connection;
          ? private Statement???????? statement;
          ? private ResultSet???????? resultSet;
          ? private ResultSetMetaData metaData;

          ? public GetSQLServerType()
          ? {
          ??? try{ //實(shí)例化MSSQL2000的驅(qū)動(dòng)
          ???????? Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver" );

          ???????? //連接數(shù)據(jù)庫
          ???????? connection=DriverManager.getConnection( "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=Northwind", "sa", "" );

          ???????? //創(chuàng)建Statement接口對(duì)象
          ???????? statement=connection.createStatement();

          ???????? resultSet=statement.executeQuery( " SELECT * FROM SQLServerType " );

          ???????? metaData=resultSet.getMetaData();

          ???????? int columnCount=metaData.getColumnCount();

          ???????? FileWriter fw=new FileWriter( "SQLServerType.htm" );
          ???????? BufferedWriter bfw=new BufferedWriter( fw );

          ???????? bfw.write( "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=GBK\">" ); bfw.newLine();
          ???????? bfw.write( "<title>SQL Server數(shù)據(jù)類型對(duì)應(yīng)Java類型</title>" ); bfw.newLine();

          ???????? //申明樣式表//////////////////////////////////////////
          ???????? bfw.write( "<style type=text/css>" ); bfw.newLine();
          ???????? bfw.write( "td{ color:????????? #000000;" ); bfw.newLine();
          ???????? bfw.write( "??? background:???? #FFFFFF;" ); bfw.newLine();
          ???????? bfw.write( "??? height:???????? 20px;" ); bfw.newLine();
          ???????? bfw.write( "??? font-size:????? 10pt;" ); bfw.newLine();
          ???????? bfw.write( "??? font-weight:??? normal;" ); bfw.newLine();
          ???????? bfw.write( "??? font-family:??? 宋體;" ); bfw.newLine();
          ???????? bfw.write( "??? text-align:???? right;" ); bfw.newLine();
          ???????? bfw.write( "??? vertical-align: middle;" ); bfw.newLine();
          ???????? bfw.write( "??? table-layout:?? fixed;" ); bfw.newLine();
          ???????? bfw.write( "??? padding-top:??? 2;" ); bfw.newLine();
          ???????? bfw.write( "??? padding-bottom: 2;" ); bfw.newLine();
          ???????? bfw.write( "??? padding-left:?? 2;" ); bfw.newLine();
          ???????? bfw.write( "??? padding-right:? 2;" ); bfw.newLine();
          ???????? bfw.write( "? }" ); bfw.newLine();
          ???????? bfw.write( "td.left{ text-align: left; }" ); bfw.newLine();
          ???????? bfw.write( "td.center{ text-align: center; }" ); bfw.newLine();
          ???????? bfw.write( "</style>" ); bfw.newLine();

          ???????? bfw.write( "<body>" ); bfw.newLine();
          ???????? bfw.write( "<table border=1 bordercolor=#000000 cellspacing=0 style=\"border-collapse:collapse\">" );bfw.newLine();
          ???????? bfw.write( "? <tr>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getColumnClassName( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getColumnLabel( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getCatalogName( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getColumnCount()</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getColumnDisplaySize( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getColumnName( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getColumnType( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getColumnTypeName( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getPrecision( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getScale( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getSchemaName( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.getTableName( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isAutoIncrement( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isCaseSensitive( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isCurrency( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isDefinitelyWritable( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isNullable( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isReadOnly( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isSearchable( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isSigned( column )</td>" );bfw.newLine();
          ???????? bfw.write( "??? <td noWrap class=center>metaData.isWritable( column )</td>" );bfw.newLine();
          ???????? bfw.write( "? </tr>" );bfw.newLine();

          ???????? for( int column=0; column<columnCount; column++ )
          ??????????? {
          ????????????? /*/
          ????????????? //metaData的所有方法
          ????????????? bfw.write( "metaData.getColumnCount() "???????????????????????? + metaData.getColumnCount() );bfw.newLine();
          ????????????? bfw.write( "metaData.isAutoIncrement( "+( column+1 )+" ) "????? + metaData.isAutoIncrement( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isCaseSensitive( "+( column+1 )+" ) "????? + metaData.isCaseSensitive( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isSearchable( "+( column+1 )+" ) "???????? + metaData.isSearchable( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isCurrency( "+( column+1 )+" ) "?????????? + metaData.isCurrency( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isNullable( "+( column+1 )+" ) "?????????? + metaData.isNullable( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isSigned( "+( column+1 )+" ) "???????????? + metaData.isSigned( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getColumnDisplaySize( "+( column+1 )+" ) " + metaData.getColumnDisplaySize( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getColumnLabel( "+( column+1 )+" ) "?????? + metaData.getColumnLabel( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getColumnName( "+( column+1 )+" ) "??????? + metaData.getColumnName( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getSchemaName( "+( column+1 )+" ) "??????? + metaData.getSchemaName( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getPrecision( "+( column+1 )+" ) "???????? + metaData.getPrecision( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getScale( "+( column+1 )+" ) "???????????? + metaData.getScale( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getTableName( "+( column+1 )+" ) "???????? + metaData.getTableName( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getCatalogName( "+( column+1 )+" ) "?????? + metaData.getCatalogName( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getColumnType( "+( column+1 )+" ) "??????? + metaData.getColumnType( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getColumnTypeName( "+( column+1 )+" ) "??? + metaData.getColumnTypeName( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isReadOnly( "+( column+1 )+" ) "?????????? + metaData.isReadOnly( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isWritable( "+( column+1 )+" ) "?????????? + metaData.isWritable( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isDefinitelyWritable( "+( column+1 )+" ) " + metaData.isDefinitelyWritable( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.getColumnClassName( "+( column+1 )+" ) "?? + metaData.getColumnClassName( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "metaData.isSigned( "+( column+1 )+" ) "???????????? + metaData.isSigned( ( column+1 ) ) );bfw.newLine();
          ????????????? bfw.write( "--------------------------------------------------------------------------------" );bfw.newLine();
          ????????????? //*/

          ????????????? bfw.write( "? <tr>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getColumnClassName( column+1 )?? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getColumnLabel( column+1 )?????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getCatalogName( column+1 )?????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getColumnCount()???????????????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getColumnDisplaySize( column+1 ) +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getColumnName( column+1 )??????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getColumnType( column+1 )??????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getColumnTypeName( column+1 )??? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getPrecision( column+1 )???????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getScale( column+1 )???????????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getSchemaName( column+1 )??????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.getTableName( column+1 )???????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isAutoIncrement( column+1 )????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isCaseSensitive( column+1 )????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isCurrency( column+1 )?????????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isDefinitelyWritable( column+1 ) +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isNullable( column+1 )?????????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isReadOnly( column+1 )?????????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isSearchable( column+1 )???????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isSigned( column+1 )???????????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "??? <td noWrap class=center>"+metaData.isWritable( column+1 )?????????? +"</td>" );bfw.newLine();
          ????????????? bfw.write( "? </tr>" );bfw.newLine();
          ??????????? }

          ???????? bfw.write( "</table>" );bfw.newLine();
          ???????? bfw.write( "</body>" ); bfw.newLine();

          ???????? bfw.flush();
          ???????? fw.close();
          ?????? }
          ??? catch( IOException ioe )
          ???????? {
          ?????????? Toolkit.getDefaultToolkit().beep();
          ?????????? JOptionPane.showMessageDialog( null, "創(chuàng)建文件失敗!", "創(chuàng)建文件錯(cuò)誤", JOptionPane.WARNING_MESSAGE );
          ?????????? System.out.println( ioe );
          ???????? }
          ??? catch( ClassNotFoundException cnfe )
          ???????? {
          ?????????? Toolkit.getDefaultToolkit().beep();
          ?????????? JOptionPane.showMessageDialog( null, "找不到數(shù)據(jù)庫驅(qū)動(dòng)文件!", "數(shù)據(jù)庫錯(cuò)誤", JOptionPane.WARNING_MESSAGE );
          ?????????? System.out.println( cnfe );
          ???????? }
          ??? catch( SQLException se )
          ???????? {
          ?????????? Toolkit.getDefaultToolkit().beep();
          ?????????? JOptionPane.showMessageDialog( null, "連接數(shù)據(jù)庫失敗!請(qǐng)檢查數(shù)據(jù)庫是否運(yùn)行。", "數(shù)據(jù)庫錯(cuò)誤", JOptionPane.WARNING_MESSAGE );
          ?????????? System.out.println( se );
          ???????? }
          ??? finally{ try{ if( resultSet!=null )
          ??????????????????? {
          ????????????????????? resultSet.close();? //關(guān)閉ResultSet接口實(shí)例
          ??????????????????? }

          ????????????????? if( statement!=null )
          ??????????????????? {
          ????????????????????? statement.close();? //關(guān)閉Statement接口實(shí)例
          ??????????????????? }

          ????????????????? if( connection!=null )
          ??????????????????? {
          ????????????????????? connection.close();? //關(guān)閉Connection接口實(shí)例
          ??????????????????? }
          ??????????????? }
          ???????????? catch( SQLException se )
          ????????????????? {
          ??????????????????? System.out.println( se );
          ????????????????? }
          ?????????? }
          ? }

          ? public static void main( String[] arg )
          ? {
          ??? GetSQLServerType g=new GetSQLServerType();
          ? }
          }

          posted on 2007-07-03 04:03 NeedJava 閱讀(450) 評(píng)論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 拜城县| 广平县| 合肥市| 双辽市| 荥经县| 安泽县| 晋江市| 建德市| 宝清县| 沁水县| 景泰县| 平顶山市| 丁青县| 南雄市| 绩溪县| 南投县| 阆中市| 调兵山市| 藁城市| 含山县| 保定市| 大余县| 观塘区| 万全县| 顺昌县| 无棣县| 革吉县| 乌鲁木齐市| 北海市| 志丹县| 杭锦旗| 黎城县| 额济纳旗| 大连市| 木兰县| 都安| 永平县| 阳山县| 鲁山县| 富锦市| 江孜县|