[前][次][番号順一覧][スレッド一覧]

mysql:13159

From: endo <endo <endo@xxxxxxxxxx>>
Date: Wed, 12 Jul 2006 15:16:53 +0900
Subject: [mysql 13159] JDBCドライバーを使用して遠隔からDB操作

初めまして、Jackと申します。
まだまだ初心者の域を脱しておりませんが、よろしくお願い致します。



Java Swingアプリ上からSQLを発行してMySQL5.0.11のデー 
タを操作し
結果を表示させるアプリを作成しております。


localhost上は軽快に動くのですが、ネットワーク越しにデータ操作を 
すると
ものすごく重く遅くなることが判明しました。
基本的にデータを必要としない操作に関してはそれほど動きは悪くない 
ので
Swingアプリ自体に問題はないと思います。

JDBCドライバー:mysql-connector-java-3.1.10-bin.jar

環境としましては
DBサーバー:Windows XP
MySQL	5.0.11
IP(例) 192.168.0.5


クライアント: Windows XP
IP(例) 192.168.0.6

JavaのClassフォルダー内に
JDBCドライバー mysql-connector-java-3.1.10-bin.jar
を置いて、

 >Java -classpath ".;.\mysql -connector-java-3.1.10-bin.jar"  
Login (Enter)

でLogin.classを起動しております。

そこでお聞きしたい事は、JDBCドライバーはネットワーク越しで 
はパフォーマンス
がかなり落ちるのでしょうか?
それともMySQLの設定、JDBCの使い方に問題があるので 
しょうか?


以下、接続に必要なJavaソースファイルの部分ですがおそらく 
オーソドックスだと思います。


よろしくお願い致します。
------
import java.sql.*;
import java.sql.Connection;
import java.sql.ResultSet;

public class MySQLManager implements DatabaseManager {
	private Connection con = null;
	private Statement stmt = null;
	private ResultSet rs = null;
	
	public void openResource() {
		//String url = "jdbc:mysql://localhost/kahns";
		String url = "jdbc:mysql://192.168.0.5:3306/(データベース名)";
		String param = "?userUnicode=true&characterEncoding=sjis";
		String usr = "myuser";
		String pwd = "********";

		
		//JDBCドライバーのロード
		try {
			Class.forName("com.mysql.jdbc.Driver").newInstance();
			
			//接続の確立
			con = DriverManager.getConnection(url + param, usr, pwd);
			
			//ステートメントの取得
			stmt = con.createStatement();
			
		} catch (InstantiationException e) {
						e.printStackTrace();
		} catch (IllegalAccessException e) {
						e.printStackTrace();
		} catch (ClassNotFoundException e) {
						e.printStackTrace();
		} catch (SQLException e) {
						e.printStackTrace();
		}

	}

	public void closeResource() {
		if (stmt != null){
			try {
				stmt.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if (con != null){
			try {
				con.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}

	}

	public ResultSet getData(String sql) {
		if (stmt != null){
			try {
				rs = stmt.executeQuery(sql);
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		return rs;
	}

	public void addData(String sql) {
		if (stmt != null){
			try {
				con.setAutoCommit(false);
				stmt.executeUpdate(sql);
				con.commit();
			} catch (SQLException e) {
				try {
					con.rollback();
					throw new RuntimeException("データの登録が失敗しました。");
				} catch (SQLException e1) {
					e1.printStackTrace();
				}
			}
		}

	}

}





[前][次][番号順一覧][スレッド一覧]

->   13159 2006-07-12 15:16 [endo <endo@xxxxxxxxx] JDBCドライバーを使用して遠隔からDB操作  
     13161 2006-07-12 18:39 ┗[Tetsuro IKEDA <te.ik]                                       
     13162 2006-07-12 19:37  ┗[endo <endo@xxxxxxxxx]                                     
     13163 2006-07-19 22:09   ┗[info2 <info2@xxxxxxx] 商品コードについて                
     13164 2006-07-19 22:31    ┣[Yoshiyuki SATO <sato]                                 
     13166 2006-07-20 09:06    ┃┗[info2 <info2@xxxxxxx]                               
     13169 2006-07-20 09:45    ┃ ┣["F.Y" <fumi_sby@xxxx]                             
     13170 2006-07-20 09:52    ┃ ┣["F.Y" <fumi_sby@xxxx]                             
     13173 2006-07-20 10:15    ┃ ┃┗[Yasufumi Yamagami <y]                           
     13171 2006-07-20 10:14    ┃ ┣[濱口産婦人科 広津 <]                             
     13174 2006-07-20 10:27    ┃ ┗["MIKAHOSI" <mikahosi]                             
     13165 2006-07-19 22:45    ┣[忠犬 KEN <ken_ken_19]                                 
     13167 2006-07-20 09:32    ┣[tatematsu <tatemax@x]                                 
     13168 2006-07-20 09:35    ┣["F.Y" <fumi_sby@xxxx]                                 
     13172 2006-07-20 10:15    ┣["片寄白王" <katayose]                                 
     13175 2006-07-20 10:39    ┗[柴田 和久 <yumeya21@]                                 
     13176 2006-07-20 17:22     ┗["TANAKA Masayuki" <t]                               
     13177 2006-07-20 23:12      ┗[info2 <info2@xxxxxxx]