2016-08-16 7 views
-1

データベース接続でエラーが発生した場合、ログオンする必要があります(データベース名とデータベースに接続しようとしたユーザー名、パスワードを記録する必要はありません)。私のアプリケーションにSprig-Mybatisを使用してください。Mybatisとの接続情報を記録する方法

どうすればいいですか?

よろしく

答えて

0

あなたexpectionを取得しますJavaで簡単なのtry/catchとして行うには、他の特別な方法はありません。 は、例えば、私はMyBatisのマッパーメソッドを呼び出しています簡単なプログラム:

try{ 
    List result = mapper.myBatisMapperMethod();//this is responsible to set up 
               //a connection and run a query 
    } 

は私のパスワードは、私は通常、MyBatisの中で取得接続 例外間違っている場合について言う上記の呼び出しが無効な認証に失敗したと仮定します:私は何をすべきか

Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Login failed for user 'applicationUsername'.) 
     Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Login failed for user 'applicationUsername'.) 
      at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225) 
      at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) 
      at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111) 
      at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77) 
      ... 65 more 
     Caused by: 
    com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'applicationUsername'. 

は、上記に簡単にキャッチは、あなたがcatched SQL例外を持つことができますが、ここで私は単に例外を使用してみてください持っています。

catch(Exception e){ 
     //Suppose you are using Log4j You can simply 
     logger.error("This is my error log message"+e.getMessage()); 
     //The above will log any kind of exception including the authentication fail or you 
     can specifically log a particular kind of exception.Java wont log failed password it just logs the user who tried unless you explicitly want to log it. 
    } 
関連する問題