带有MS SQL Server的Java。在将数据保存到数据库时,我收到以下警告 -
WARN org.springframework.jdbc.core.metadata.TableMetaDataProvider - 无法找到' table_name'的表元数据 - 必须提供列名
此警告影响了性能的巨大时间。我尝试使用选项generateSimpleParameterMetadata=true
,但它无法帮助我解决此错误。
我使用的配置如下:
<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();
}
任何帮助将不胜感激。
提前致谢