DOM4jar
singleStandard
2019-01-02 15:01
采纳率: 25%
浏览 4.9k
已采纳

关于mybatis引用mapper.xml文件的路径问题

我是看 https://www.cnblogs.com/xdp-gacl/p/4261895.html 的入门例子照着写的:

先是定义了User类,然后写一个conf.xml的myBatis配置文件,再写一个sql映射文件命名为userMapper.xml,最后再conf.xml中用resource标签引入userMapper.xml。

但博客里是普通的java项目,路径引用我知道怎么写。而我创建的是maven-webapp项目,不知道怎么写路径地址了。

项目结构如下:

图片说明

在mybatis-config.xml文件里添加了mapper,是这么引用的:

 <mapper resource="userMapper.xml"/>

能正常运行,但是有几个问题:

-

1. 我看到网上说在src/main/resources下的xml文件,在配置文件里引用时,好面可以写上classpath,如:

<mapper resource="classpath:userMapper.xml"/>

但我试了,却找不到userMapper.xml。想请问下,classpath代表什么,是怎么用的呢?

2. 同样写这句:

<mapper resource="userMapper.xml"/>

由于src/main/java 和 src/main/resources的output folder都是mybatis/target/classes,但我把userMapper.xml移到src/main/java下,运行却提示找不到userMapper.xml呢?

3. 我现在是把mybatis-config.xml文件放在src/main/resources下,Test类中是这么写的资源地址:

String resource = “mybatis-config.xml”;
但如果我要把xml放到src/main/java下,要怎么写呢?

补充:

求助各位,谢谢啦。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • qq_27718453
    庄粟 2019-01-02 07:43
    已采纳

    你莫不是看岔了? xml里resourc=xxx.xml? 什么意思
    xml里可以指定相对应的dao接口 如 :<mapper namespace="com.xxx.xx.xxxDao">
    提示找不到xml,你配置的xml路径是什么呢.把 配置内容 代码 放出来.

    点赞 评论
  • u012976158
    强化脑细胞 2019-01-02 07:25

    classpath是指 WEB-INF文件夹下的classes目录

    点赞 评论
  • qq_37843105
    飘零碎步 2019-01-02 10:14

    看编译后代码目录比较直观,列如图片说明

    点赞 评论
  • qq_38181513
    qq_38181513 2019-01-04 14:19
    点赞 评论

相关推荐