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)
.usingColumns( 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();
}
任意のヘルプをいただければ幸いです。
前もって感謝します