java entity tostring_Java PreparedStatement.toString方法代码示例

import java.sql.PreparedStatement; //导入方法依赖的package包/类

/**

* Gets called by {@code JdbcTemplate.execute} with an active JDBC

* PreparedStatement. Does not need to care about closing the Statement

* or the Connection, or about handling transactions: this will all be

* handled by Spring's JdbcTemplate.

*

NOTE: Any ResultSets opened should be closed in finally blocks

* within the callback implementation. Spring will close the Statement

* object after the callback returned, but this does not necessarily imply

* that the ResultSet resources will be closed: the Statement objects might

* get pooled by the connection pool, with {@code close} calls only

* returning the object to the pool but not physically closing the resources.

*

If called without a thread-bound JDBC transaction (initiated by

* DataSourceTransactionManager), the code will simply get executed on the

* JDBC connection with its transactional semantics. If JdbcTemplate is

* configured to use a JTA-aware DataSource, the JDBC connection and thus

* the callback code will be transactional if a JTA transaction is active.

*

Allows for returning a result object created within the callback, i.e.

* a domain object or a collection of domain objects. Note that there's

* special support for single step actions: see JdbcTemplate.queryForObject etc.

* A thrown RuntimeException is treated as application exception, it gets

* propagated to the caller of the template.

*

* @param ps active JDBC PreparedStatement

*

* @return a result object, or {@code null} if none

* @throws SQLException if thrown by a JDBC method, to be auto-converted

* to a DataAccessException by a SQLExceptionTranslator

* @throws DataAccessException in case of custom exceptions

* @see JdbcTemplate#queryForObject(String, Object[], Class)

* @see JdbcTemplate#queryForList(String, Object[])

*/

@Override

public T doInPreparedStatement(PreparedStatement ps) throws SQLException, DataAccessException {

SQLTools.fillStatement(ps, args);

if (isBatch && (rowCont = args.length) > 0){

int success = ps.executeBatch().length ;

if (success > 0 && success < rowCont){

logger.warn("The number of successful {}, now successful {} ", rowCont, success );

}

rowCont = success;

}else {

rowCont = ps.executeUpdate();

}

if (rowCont < 1) {

throw new SQLException("sql:{} On failure.", ps.toString());

}

if (this.isInsert){

if (entityPersister.getIdField().autoGeneratedKeys()){

id = generated(ps);

}

return id;

}

return (T) (Object)rowCont;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值