Есть ли какой-либо путь, где я могу получить выполняемый запрос iBatis? Я хочу снова использовать запрос для Запроса на объединение.
Например:
<sqlMap namespace="userSQLMap">
<select id="getUser" resultClass="UserPackage.User">
SELECT username,
password
FROM table
WHERE id=#value#
</select>
</sqlMap>
И когда я выполняю запрос через
int id = 1
List<User> userList = queryDAO.executeForObjectList("userSQLMap.getUser",id)
Я хочу добраться SELECT username, password FROM table WHERE id=1
Есть ли какой-либо способ, которым я мог получить запрос?
Спасибо.
Большинство механизмов SQL позволяют «регистрировать» все выполненные запросы (обычно вместе с информацией о времени, затраченном на запрос, количестве возвращенных результатов и т. Д.). Есть ли у вас доступ к журналам вашего движка и можете ли вы настроить его так, чтобы он регистрировал все, что вам нужно?
Возможно показать эту информацию.iBatis использует некоторые фреймворки логирования, включая Log4J
.
Для использования Log4J
создайте файл log4j.properties
в пути класса. Вы должны поместить следующие строки в файл, например:
log4j.logger.com.ibatis=DEBUG
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
log4j.logger.com.ibatis=DEBUG
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
Для других фреймворков логирования и подробной информации смотрите эту ссылку