1

Java と MS SQL Server。データをデータベースに保存しているときに、以下の警告が表示されます -

WARN org.springframework.jdbc.core.metadata.TableMetaDataProvider - 'table_name' のテーブル メタデータが見つかりません -- 列名を指定する必要があります

この警告は、パフォーマンスに多大な影響を与えます。オプションを試してみましたgenerateSimpleParameterMetadata=trueが、このエラーを解決するのに役立ちません。

私が使用した構成は次のとおりです。

  • 春 - 3.2.3
  • sqljdbc-4.0.jar
  • Java 7

Bean プロパティ

<bean id="abcd" class="org.apache.commons.dbcp.BasicDataSource"
        destroy-method="close">
    <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
    <property name="url" value="sqlserver://localhost:1521;databaseName=abc" />
    <property name="username" value="YYYYY" />
    <property name="password" value="ZZZZZ" />
    <property name="initialSize" value="5" />
    <property name="maxActive" value="10" />
    <property name="validationQuery" value="select TOP 1 * from sys.tables" />
    <property name="testOnBorrow" value="true" />
</bean>

データを挿入しようとしている以下のコード

public long insert(Object object) {
    simpleJdbcInsert = new SimpleJdbcInsert(jdbcTemplate)
        .withTableName(tableName)
        .usin‌​gColumns( col2,col3,col4)
        .usingGeneratedKeyColumns(col1);
    Map<String, Object> parameters = new HashMap<String, Object>();
    parameters.put("col2", "Value2");
    parameters.put("col3", "Value3");
    parameters.put("col4", "Value4");
    Number returnId = simpleJdbcInsert.executeAndReturnKey(parameters);
    return returnId.longValue();
} 

任意のヘルプをいただければ幸いです。

前もって感謝します

4

0 に答える 0