mybatis顯示sql
① 如何在mybatis中調試查看生成的sql語句
推薦使用log4jdbc或是log4jdbc-remix,其實這2個都差不多,這個會把你sql的的?以實際的值填充進去,對查看生成的sql非常有幫助
② mybatis怎麼在控制台列印sql語句
mybatis默認使用log4j,當有self4j這個日誌jar包存在時會無法列印sql,請移除或者在工程啟動時顯示設置mybatis使用的日誌類
log4j.logger.org.apache.ibatis=debug,stdout
log4j.logger.java.sql=debug,stdout
③ 如何輸出mybatis里的SQL
你需要建立一個對象,然後運用輸出流進行輸出~ 。
④ mybatis 怎麼列印出sql語句
mybatis 列印sql語句一般都是用log4j,網上都有下載一個就行
⑤ mybatis怎麼顯示sql語句
mybatis的sql和你在資料庫客戶端執行的sql是一樣的,但是在mybatis中調用的sql一般都是動態的,所以用到了參數傳遞。這個mybatis有對應的標簽以及相應的變數來實現。你可以搜索下mybatis標簽。同時給你一個參考的你看看,這個是一個查詢用戶的
<select
id="queryUsers"
parameterType="map"
resultType="xx.xx.xx.bean.UserBean">
<![CDATA[
select
ID,
LOGIN_NAME
AS
loginName,
PASSWORD,
REAL_NAME
AS
realName,
POSITION,
(SELECT
D.POSITION_NAME
FROM
UNIT_POSITION
D
WHERE
D.POSITION_CODE=T.POSITION)
POSITIONNAME,
USER_TYPE
AS
userType,
SEX,
PID,
TO_CHAR(T.BIRTHDAY,'YYYY-MM-DD')
BIRTHDAY,
EMAIL,
CONTACT_TEL
AS
contactTel,
CONTACT_MOBILE
AS
contactMobile,
CONTACT_FAX
AS
contactFax,
CONTACT_ZIP
AS
contactZip,
CONTACT_ADDR
AS
contactAddr,
STATUS,
EDUCATION,
(SELECT
D.EDUCATION_NAME
FROM
UNIT_EDUCATION
D
WHERE
D.EDUCATION_CODE=T.EDUCATION
AND
D.STATUS=0)
EDUCATIONNAME,
NATION,
POLITICAL,
REMARK,
TO_CHAR(T.CREATE_DATE,'YYYY-MM-DD
HH24:MI:SS')
createDate,
(SELECT
D.REAL_NAME
FROM
UNIT_USER
D
WHERE
D.ID=
T.CREATE_USER_ID)
createUserId,
TO_CHAR(T.UPDATE_DATE,'YYYY-MM-DD
HH24:MI:SS')
updateDate,
(SELECT
D.REAL_NAME
FROM
UNIT_USER
D
WHERE
D.ID=
T.UPDATE_USER_ID)
updateUserId
from
UNIT_USER
T
]]>
<where>
T.STATUS='1'
<if
test="realName
!=null
and
realName
!=''">
and
T.REAL_NAME
like
'%${realName}%'
</if>
<if
test="nexusDpartment
!=null">
AND
T.ID
IN
(SELECT
DISTINCT
D.USER_ID
FROM
UNIT_USER_DEPT
D
WHERE
D.DEPT_CODE
IN
(${nexusDpartment}))
</if>
<if
test="deptCode
!=null
and
deptCode
!=''">
AND
T.ID
IN
(SELECT
DISTINCT
D.USER_ID
FROM
UNIT_USER_DEPT
D
WHERE
D.DEPT_CODE
=
#{deptCode})
</if>
</where>
<if
test="sort
!=
null
and
sort
!=
''">
order
by
${sort}
<if
test="direction
!=
null
and
direction
!=
''">
${direction}
</if>
</if>
</select>
⑥ mybatis 怎麼列印sql
其實很簡單,列印SQL只需要加一個setting就可以了。親測可用。
mybatis-config.xml:
<settings>
<setting name="cacheEnabled" value="true" />
<!-- 列印sql日誌 -->
<setting name="logImpl" value="STDOUT_LOGGING" />
</settings>
<typeAliases>
<!-- 指定實體類 別名掃描包,mapper.xml文件中只需要寫上實體類名即可,不區分大小寫 -->
<package name="com.renrenhua.user.entity"/>
</typeAliases>
mybatis的日誌列印方式比較多,SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING,可以根據自己的需要進行配置
⑦ 如何讓mybatis列印出執行的sql
log4j配置一下,把sql日誌打到一個獨立的日誌文件里
⑧ 如何在mybatis中列印sql
mybatis列印sql 用於在後台列印執行的sql,在applicationContext.xml中的<bean
id="sqlSessionFactory" 標簽中添加:
<property name="configLocation"
value="classpath:mybatis-config.xml" /> 即可列印sql語句 此方法僅用於開發調試,配置之後請勿提交!