读书人

关于mybatis有关问题请

发布时间: 2013-09-12 22:07:00 作者: rapoo

关于mybatis问题,请高手进
我目前使用struts2+spring+mybatis进行开发,在进行mybatis配置的时候出现了一下问题:

我在applicationContext.xml进行了如下定义:
<!-- IBATIS -->
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="WEB-INF/sqlMapConfig.xml" />
<property name="dataSource" ref="dataSource" />
</bean>

在sqlMapConfig.xml中,进行了如下定义:
<sqlMapConfig>
<settings useStatementNamespaces="true" cacheModelsEnabled="true" lazyLoadingEnabled="true" enhancementEnabled="true" />
<sqlMap resource="WEB-INF/userMap.xml" />
</sqlMapConfig>

在userMap.xml中,进行了如下定义:
<sqlMap>
<typeAlias type="org.struts2.dao.User" alias="user"/>
<resultMap id="UserTest" class="user" >
<result column="username1" property="username1" jdbcType="VARCHAR" />
<result column="password" property="password" jdbcType="VARCHAR" />
</resultMap>

<select id="select" resultMap="UserTest">
select * from t_user
</select>
</sqlMap>

问题:我在启动tomcat的时候,出现了以下问题:
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'sqlMapClient' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is org.springframework.core.NestedIOException: Failed to parse config resource: ServletContext resource [/WEB-INF/sqlMapConfig.xml]; nested exception is com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'. Cause: java.io.IOException: Could not find resource WEB-INF/userMap.xml

注:我已经确认了,在
WEB-INF/的路径下,确实存在userMap.xml,但是为什么还是找不到呢?
[解决办法]
不要放在web-inf下 放在src目录下 比如建个sqlMap文件夹
------解决方案--------------------


Could not find resource WEB-INF/userMap.xml
找不到userMap.xml
mybatis配置文件是不放到WEB-INF下的
[解决办法]
建议不要放在WEB-INF下。 找个放就好了。

<sqlMap resource="classpath:apackage/bpackage/userMap.xml" />

这样!
[解决办法]

引用:
建议不要放在WEB-INF下。 找个放就好了。

<sqlMap resource="classpath:apackage/bpackage/userMap.xml" />

这样!

对,放在src下,路径前页加上classpath
[解决办法]
引用:
建议不要放在WEB-INF下。 找个放就好了。

<sqlMap resource="classpath:apackage/bpackage/userMap.xml" />

这样!

应该是这样
[解决办法]
想你这种的 就写
<sqlmap resource="WEB-INF/classes/userMap.xml"
把你 sqlmap.xml 你的service 包下
<sqlmap resource ="包路径/userMap.xml"/>
也可以直接放在 src 目录下
<sqlmap resource ="userMap.xml"/>

[解决办法]
引用:
Could not find resource WEB-INF/userMap.xml
找不到userMap.xml
mybatis配置文件是不放到WEB-INF下的


+1

自己见个文件夹 专门放xml文件好了

[解决办法]
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:mybatis-config.xml" />
<property name="dataSource" ref="dataSource" />
</bean>
将mybatis的配置文件放到src下面么。
然后那个mapper文件放到一个单独的包里面最好了
<mappers>
<mapper resource="com/lc/pojo/mappers/userInfo-mapper.xml" />
</mappers>
[解决办法]
把userInfo-mapper.xml最好放到src下或在src下自已建个文件夹放置userInfo-mapper.xml

读书人网 >J2EE开发

热点推荐