iBatis中报一个 There is no statement named insertComment in this SqlMap.的错误 ,请教各位大侠……

时间:2021-07-04 21:41:20
getSqlMapClientTemplate().update("insertComment", comment);
这段代码,报一个 There is no statement named insertComment in this SqlMap.的错误
但是在comment.xml中,写了

        <resultMap id="commentResult" class="comment">
        <result property="itemId" column="ITEMID"/>
        <result property="commentId" column="COMMENTID"/>
        <result property="time" column="TIME"/>
        <result property="userId" column="USER_ID"/>
        <result property="content" column="CONTENT"/>     
        </resultMap>

        <insert id="insertComment" parameterClass="comment"><![CDATA[
        insert into COMMENT (
            COMMENTID,
            TIME,
            USER_ID,
            ITEMID,
            CONTENT
        ) values (
            #commentId#,
            #time#,
            #userId#,
            #itemId#,
            #content#
        )
    ]]></insert>

请各位大侠指教,谢过了

24 个解决方案

#1


update怎么能用insert操作啊!应该对应<update>

#2


引用 1 楼 qintao1203 的回复:
update怎么能用insert操作啊!应该对应 <update>

insert值用update方法,没错吧……

#3


设置命名空间。

#4


 There is no statement named insertComment in this SqlMap
在sqlmap中没有叫做insertComment的声明

查一下你是否把comment.xml放进SQL Map配置文件中了

SQL Map配置文件配置是否正确

#5


fengyifei11228 分析正确

#6


命名空间,其次是你的sql要是做insert操作的话,你必须写<insert >,相同的你要是做update操作的话也必须用<update>

#7


comment.xml 这个配置文件要放在的其他配置文件中引入进去。如果没引入进去,就会报找不到There is no statement named insertComment in this SqlMap ,因为首先加载就没这个文件

#8


刚碰上相同的问题,跟fengyifei11228 说的一样,现已解决,谢谢fengyifei11228 。

#9


没找到insertComment,既然楼主写了,要么是这个文件没放到配置文件里要么是拼写错误

#10


需要加前缀,应该这样写:
getSqlMapClientTemplate().update("comment.insertComment", comment);

#11


iBatis中报一个 There is no statement named insertComment in this SqlMap.的错误 ,请教各位大侠……iBatis中报一个 There is no statement named insertComment in this SqlMap.的错误 ,请教各位大侠……
才发现csdn的回复框可以自定义表情。哈哈,好玩

#12


引用 10 楼 hustlxjaw 的回复:
需要加前缀,应该这样写:
getSqlMapClientTemplate().update("comment.insertComment", comment);


为什么要加前缀呢?
我也一直报这个错,按照你的加了前缀,OK了,可我见其他人的DEMO中没有加,不知道什么时候加,什么时候不加。希望哪位大侠解释下,谢谢啦

#13


/wx

#14


问题是,sqlmapconfig.xml中没有配置SqlMap元素 <sqlMap resource="comment.xml"/>

#15


引用 12 楼 yuan29346 的回复:
引用 10 楼 hustlxjaw 的回复:
需要加前缀,应该这样写:
getSqlMapClientTemplate().update("comment.insertComment", comment);


为什么要加前缀呢?
我也一直报这个错,按照你的加了前缀,OK了,可我见其他人的DEMO中没有加,不知道什么时候加,什么时候不加。希望哪位大侠解释下,谢谢啦


<sqlMapConfig>
<settings 
cacheModelsEnabled="true" 
enhancementEnabled="true" 
lazyLoadingEnabled="true" 
errorTracingEnabled="true" 
maxRequests="32" 
maxSessions="10" 
maxTransactions="5" 
useStatementNamespaces="false" //在这里设置是否使用命名空间
/>

#16


gaga,我也碰到这个问题了。。。加上命名空间就行,不加就不行

#17


谢谢,15楼的那位朋友,我也一直在找原因呢,
终于明白了

#18


帮顶我来学习

#19


ibatis方法调用错误 方法类型必须和sql指向类型相同

#20


我们的项目中是用实体bean来写命名空间的  eg:com/entity/User.java
namespace = "com.entity.User"
用的时候  User.class.getName()+"insertUser"
(insertUser是在XML里面注册 iBatis中报一个 There is no statement named insertComment in this SqlMap.的错误 ,请教各位大侠……的ID)

#21


命名空间+sqlID

#22


15楼的正解。帮我解决了问题。谢谢了

#23


引用 11 楼 hustlxjaw 的回复:
才发现csdn的回复框可以自定义表情。哈哈,好玩
什么情况?

#24


引用 11 楼 hustlxjaw 的回复:
才发现csdn的回复框可以自定义表情。哈哈,好玩


看帖

#1


update怎么能用insert操作啊!应该对应<update>

#2


引用 1 楼 qintao1203 的回复:
update怎么能用insert操作啊!应该对应 <update>

insert值用update方法,没错吧……

#3


设置命名空间。

#4


 There is no statement named insertComment in this SqlMap
在sqlmap中没有叫做insertComment的声明

查一下你是否把comment.xml放进SQL Map配置文件中了

SQL Map配置文件配置是否正确

#5


fengyifei11228 分析正确

#6


命名空间,其次是你的sql要是做insert操作的话,你必须写<insert >,相同的你要是做update操作的话也必须用<update>

#7


comment.xml 这个配置文件要放在的其他配置文件中引入进去。如果没引入进去,就会报找不到There is no statement named insertComment in this SqlMap ,因为首先加载就没这个文件

#8


刚碰上相同的问题,跟fengyifei11228 说的一样,现已解决,谢谢fengyifei11228 。

#9


没找到insertComment,既然楼主写了,要么是这个文件没放到配置文件里要么是拼写错误

#10


需要加前缀,应该这样写:
getSqlMapClientTemplate().update("comment.insertComment", comment);

#11


iBatis中报一个 There is no statement named insertComment in this SqlMap.的错误 ,请教各位大侠……iBatis中报一个 There is no statement named insertComment in this SqlMap.的错误 ,请教各位大侠……
才发现csdn的回复框可以自定义表情。哈哈,好玩

#12


引用 10 楼 hustlxjaw 的回复:
需要加前缀,应该这样写:
getSqlMapClientTemplate().update("comment.insertComment", comment);


为什么要加前缀呢?
我也一直报这个错,按照你的加了前缀,OK了,可我见其他人的DEMO中没有加,不知道什么时候加,什么时候不加。希望哪位大侠解释下,谢谢啦

#13


/wx

#14


问题是,sqlmapconfig.xml中没有配置SqlMap元素 <sqlMap resource="comment.xml"/>

#15


引用 12 楼 yuan29346 的回复:
引用 10 楼 hustlxjaw 的回复:
需要加前缀,应该这样写:
getSqlMapClientTemplate().update("comment.insertComment", comment);


为什么要加前缀呢?
我也一直报这个错,按照你的加了前缀,OK了,可我见其他人的DEMO中没有加,不知道什么时候加,什么时候不加。希望哪位大侠解释下,谢谢啦


<sqlMapConfig>
<settings 
cacheModelsEnabled="true" 
enhancementEnabled="true" 
lazyLoadingEnabled="true" 
errorTracingEnabled="true" 
maxRequests="32" 
maxSessions="10" 
maxTransactions="5" 
useStatementNamespaces="false" //在这里设置是否使用命名空间
/>

#16


gaga,我也碰到这个问题了。。。加上命名空间就行,不加就不行

#17


谢谢,15楼的那位朋友,我也一直在找原因呢,
终于明白了

#18


帮顶我来学习

#19


ibatis方法调用错误 方法类型必须和sql指向类型相同

#20


我们的项目中是用实体bean来写命名空间的  eg:com/entity/User.java
namespace = "com.entity.User"
用的时候  User.class.getName()+"insertUser"
(insertUser是在XML里面注册 iBatis中报一个 There is no statement named insertComment in this SqlMap.的错误 ,请教各位大侠……的ID)

#21


命名空间+sqlID

#22


15楼的正解。帮我解决了问题。谢谢了

#23


引用 11 楼 hustlxjaw 的回复:
才发现csdn的回复框可以自定义表情。哈哈,好玩
什么情况?

#24


引用 11 楼 hustlxjaw 的回复:
才发现csdn的回复框可以自定义表情。哈哈,好玩


看帖