1

Java 与 MS SQL Server。在将数据保存到数据库时,我收到以下警告 -

警告 org.springframework.jdbc.core.metadata.TableMetaDataProvider - 无法找到“table_name”的表元数据——必须提供列名

这警告了影响性能的巨大时间。我尝试了该选项generateSimpleParameterMetadata=true,但它没有帮助我解决此错误。

我使用的配置如下:

  • 春天 - 3.2.3
  • sqljdbc-4.0.jar
  • 爪哇 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