首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

关于mybatis有关问题,请

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

关于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

热点排行