こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

JDBCでDBアクセスする際のユーザーID、パスワード等はハードコードして良い?

ServletからJDBCによってデータベースにアクセスしようと思っております。
例えば次のようなサンプルが見つかりました。
http://www.atmarkit.co.jp/fjava/rensai/jdbc02/jdbc02.html

class JavaDataAccess01 {
public static void main (String args[])
throws SQLException, ClassNotFoundException {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn =
DriverManager.getConnection
("jdbc:oracle:thin:@localhost:1521:ORCL", "scott", "tiger");
  ・・・省略・・・
}
}

サンプルにならって、自分のServletでも同様にやってみたところ、無事にデータベースにアクセスすることができました。
ただ、上記のユーザー名やパスワードをハードコードしている個所が気になりました。
DBの経験がないのでよく分からないのですが、実際の業務プログラムでもハードコードして良いものなのでしょうか。

また、ホスト名、ポート名、データベース名(上記のORCL)についても、プログラムに直接書いてしまって問題ないものなのでしょうか。

それとも、何らかの設定ファイルのような形で登録しておいたりするのでしょうか。

投稿日時 - 2008-11-11 00:38:39

QNo.4469214

困ってます

質問者が選んだベストアンサー

もし、保守性を大切にするのであれば、ハードコーディングはせずに、
プロパティファイルに出すか、xmlファイルにするか、
もしくは、JNDIにすると良いでしょう。

サンプルプログラムは、たぶん、簡略化のためにハードコーディングしていると思われます。

投稿日時 - 2008-11-11 01:14:59

お礼

JNDIというしくみがあるのですね。
こちらで、JNDIによってデータベース接続情報を管理する方法がみつかりました。
http://www.atmarkit.co.jp/fjava/javatips/004container003.html
ありがとうございました。

投稿日時 - 2008-11-11 14:40:28

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問