关于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下,要怎么写呢?

补充:

求助各位,谢谢啦。

0

4个回答

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

0
DOM4jar
singleStandard 谢谢你。不好意思,今天才想到来采纳。
5 个月之前 回复
qq_27718453
庄粟 回复singleStandard: 问题也解决了,分不给我...
5 个月之前 回复
qq_27718453
庄粟 因为maven项目默认只会处理java下的java文件,不会处理其他文件,编译后的文件可能在target文件夹里看到,普通项目没有这个问题,这应该是maven的一个处理,希望配置文件放在resource里方便些.
6 个月之前 回复
DOM4jar
singleStandard 你好,刚刚的问题解决了。还是想问下你,你知道为什么src/main/resources下的文件就能直接引用,但是src/main/java下的文件就要这么配置一下啊?
6 个月之前 回复
DOM4jar
singleStandard 我前面按照你发我的链接,在pom.xml中配置了src/main/java,然后把userMapper.xml移到了src/main/java下,mybatis的配置文件conf.xml仍然放在src/main/resources下。运行提示找不到conf.xml文件。
6 个月之前 回复
DOM4jar
singleStandard 我前面按照你发我的链接,在破、】把userMapper
6 个月之前 回复
DOM4jar
singleStandard 谢谢,我看了链接,再问下啊,你知道为什么src/main/resources下的文件就能直接引用,但是src/main/java下的文件就要这么配置一下啊?
6 个月之前 回复
qq_27718453
庄粟 包名要间要用/分隔不要用.
6 个月之前 回复
qq_27718453
庄粟 按这个来:https://www.cnblogs.com/cc-java/p/7109807.html
6 个月之前 回复
qq_27718453
庄粟 但是前提是要被编译进去
6 个月之前 回复
qq_27718453
庄粟 一样的
6 个月之前 回复
DOM4jar
singleStandard 我是maven项目啊
6 个月之前 回复
qq_27718453
庄粟 放在src下带上包名就行了
6 个月之前 回复
DOM4jar
singleStandard 能不能麻烦看下我的三个问题,谢谢啦。
6 个月之前 回复
DOM4jar
singleStandard 回复qq_27718453: 我写<mapper resource="userMapper.xml"/>能运行,只是提问的三个问题不明白。
6 个月之前 回复
qq_27718453
庄粟 直接写<mapper resource="/userMapper.xml"/>试试
6 个月之前 回复
DOM4jar
singleStandard 只不过博客里是普通工程,引用路径是包名下的,我知道怎么写。但是我创建的是maven-webapp项目,不知道路径怎么写了。
6 个月之前 回复
DOM4jar
singleStandard 先是定义了User类,然后写一个conf.xml的myBatis配置文件,再写一个sql映射文件命名为userMapper.xml,最后再conf.xml中用resource标签引入userMapper.xm
6 个月之前 回复
DOM4jar
singleStandard 我是看https://www.cnblogs.com/xdp-gacl/p/4261895.html个博客的入门案例。
6 个月之前 回复

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

0

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

0
DOM4jar
singleStandard 你好,我看的src/main/java 和 src/main/resources的output folder(编译后代码目录)都是mybatis/target/classes
6 个月之前 回复
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mybatis的mapper映射器引入映射文件
mybatis的主配置文件中需要引入映射文件,现在介绍下配置引入映射文件的方式 1、 使用相对于类路径的资源 如: 2、 使用mapper接口类路径 如: 注意:此种方法要求mapper接口名称和mapper映射文件名称相同,且放在同一个目录中。 3、 使用文件的绝对路径,很少使用 4、 注册指定包下的所有mapper接口 如: 注意:
mybatis 接口文件和mapper.XML映射 文件 路径不同
最近在学习SSM,遇到一个问题: 就是 比如DepartmentDao接口需要一个DepartmentDao.xml映射文件, 习惯上接口放在java源码文件夹,映射文件放在resource资源文件夹, 如果你是这样放的那么你就需要在配置sqlSessionFactory时加一条属性 &amp;lt;property name=&quot;mapperLocations&quot; value=&quot;classpath...
mybatis多模块下引入其他模块的mapper.xml
由于mapper.xml分布在不同的模块中, mybatis.mapperLocations=classpath:mapper/*.xml 不能两个模块中mapper文件夹下的xml文件不能加载 这是因为classpath只加载了一个mapper的改成 mybatis.mapperLocations=classpath*:mapper/*.xml   转载:https://blog.csdn...
mybatis mapper.xml路径配置方式
-->               -->                           classpath:com/tourInteraction/mapper/*.xml       classpath:com/tourInteraction/mapper/article/*.xml
扫描mapper.xml文件问题
@MapperScan(basePackages = {“com.cybertron.barcode.service.dao”“})//扫描mapper.java和mapper.xml文件。 如果Mapper.xml与Mapper.class在同一个包下且同名,spring扫描Mapper.class的同时会自动扫描同名的Mapper.xml并装配到Mapper.class。 如果Mapper...
关于mybatis无法映射到mapper.xml文件的解决方案(可能与maven有关)
写在前面: 当确定所有文件没有错的时候,一定要看一看是不是其他辅助工具的问题。     最近再看一本书《你的灯亮着吗》,里面有一句话 “鱼是最后看见水的”,应验了,也受教了! 找不到mapper.xml文件的原因有几种: 确实不存在mapper.xml文件 相关配置出错 maven工具的原因 详解 a. 关于配置。  大多数情况下,使用ssm框架开发会这样的配置文件。...
mybatis框架的mapper.xml文件中sql的使用方法:
1. select * from test_tb_info where 1=1  and info.id=#{id} .......   //主键与其他字段有区别,需要注意     //column表示字段在数据库中对应的名称,property表示在实体bean中对应的名称 parameterType表示给sql语句传入的参数的类型,如上j
Maven工程中不识别mybatis的Mapper.xml文件问题
Maven的default生命周期中负责处理资源的插件默认没有打包xml文件,导致mybatis配置不生效
Mybatis学习错误之:重复加载mapper.xml
学习mybatis的时候,突然遇到测试出错。测试mapper代理失败,现在钻研少了,不喜欢看未知的错误了,立即改正。错误打印说mapper.xml已经注册,仔细查看SQLMapConfig.xml发现确实。修改后正常。 原因是直接复制教学代码,在SqlMapConfig.xml中,配置mappers,加载映射文件,已经配置了加载包文件,然后我自己又添加了单独的mapper。所以出错了,将包注释掉
Spring-mybatis整合后如果mapper.java和mapper.xml不在同一个 路径下应如何配置
放在不同路径下,创建xml文件路径为resource路径 mapper路径:src/com.edip.mapper xml路径:resources/com.edip.mapper 修改spring-mybatis.xml &amp;amp;lt;bean id=&amp;quot;sqlSessionFactory&amp;quot; class=&amp;quot;org.mybatis.spring.SqlSessionFactoryBean&amp;quot;...
IDEA中mybatis映射mapper.xml文件找不到
maven项目在pom文件中加入如下配置即可解决 &amp;lt;build&amp;gt; &amp;lt;resources&amp;gt; &amp;lt;!--拷贝xml文件到classpath下--&amp;gt; &amp;lt;resource&amp;gt; &amp;lt;directory&amp;gt;src/main/java&amp;lt;/directory&amp;gt; ...
Mybatis 学习笔记(一)——配置文件SqlMapConfig.xml和映射文件Mapper.xml
一、SqlMapConfig.xml (一)properties(属性)   将数据库连接参数单独配置在db.properties中,只需要在SqlMapConfig.xml中加载db.properties的属性值。在SqlMapConfig.xml中就不需要对数据库连接参数硬编码。 db.properties配置文件内容 jdbc.driver=com.mysql.jdbc.Driver jdb...
Mybatis加载解析Mapper(xml)文件第二讲
SqlSessionFactory初始化:[url]http://donald-draper.iteye.com/admin/blogs/2331917[/url] Mybatis加载解析Mapper(xml)文件第一讲:[url]http://donald-draper.iteye.com/blog/2333125[/url] [size=medium]解析Mapper对应的xml文件,实际...
springboot多数据源碰到的问题:mybatis的mapper.xml和dao分离到不同文件
前段时间有空,自己学习了下如何实现连接多数据源,框架是springboot+mybatis+mysql。具体实现有空再开个文章,这里记录下困扰许久的问题,今天终于解决。 一般mybatis,如果xml和dao分离,默认要放在同一个文件夹下。springboot默认有resources,推荐xml等静态资源放在resources文件夹下,目录为 单数据源时,只需要再application.p...
解决mapper.xml文件不发布问题
&amp;lt;!-- 如果不添加此节点mybatis的mapper.xml文件都会被漏掉。 --&amp;gt;  &amp;lt;build&amp;gt;    &amp;lt;resources&amp;gt;    &amp;lt;resource&amp;gt;    &amp;lt;directory&amp;gt;src/main/java&amp;lt;/directory&amp;gt;    &amp;lt;includes&amp;gt;    &amp;lt;inclu
MyBatis之Mapper XML 文件详解(四)-JDBC 类型和嵌套查询
支持的 JDBC 类型 为了未来的参考,MyBatis 通过包含的 jdbcType 枚举型,支持下面的 JDBC 类型。 BIT FLOAT CHAR TIMESTAMP OTHER UNDEFINED TINYINT REAL VARCHAR BINARY BLOB NVARCHAR SMALLINT D
mybatis学习笔记之——mybatis的Mapper XML文件中resultMap属性
resultMap resultMap:自定义结果集映射规则,自定义某个JavaBean的封装规则。 id:唯一id,方便引用。 type:自定义规则的Java类。 具体其他属性详细信息和配置代码如下: &amp;lt;resultMap id=&quot;MyEmp&quot; type=&quot;com.test.mybatis.bean.Employee&quot;&amp;gt; &amp;lt;!-- id:指定主键列的...
SSM框架 如何配置对多个路径下的XXXXXXMapper.xml文件的扫描
问题情境描述:在Spring的配置文件applicationContext.xml中配置扫描 XXXmapper.xml映射文件,配置扫描的路径,现在下面只扫描一个路径com/javafeng/mapping下的xml文件现在又有一个xml文件在另外一个com/inspur/NSRZCXXGR/mapping/*.xml路径下需要扫描。改如何配置。   &amp;lt;bean id=&quot;sqlSessio...
mapper.xml配置文件里使用<无效
我们经常会在mybatis中用到时间段查询,但是mapper.xml配置文件里使用<无效,这时候可以用转义字符来代替:
SpringBoot学习-MyBaties的XML文件路径处理
上一篇说有了个问题是SpringBoot在支持MyBaties时需要将XML文件放在resources路径下,逼死强迫症啊,找了一下解决方法,发现SpringBoot在打包的时候默认在Java目录下的文件只打包 .java的文件,所以把xml文件或者其他类型文件放在这个目录下,自然就会在项目运行的时候找不到了,所以需要做一些处理操作,让SpringBoot知道需要打包那些类型的文件 Maven B
解决src/main/java目录下mapper.xml文件不被扫描的问题
解决src/main/java目录下mapper.xml文件不被扫描的问题: mapper.xml文件直接放在了src/main/java目录下,,而没有放在src/main/resource下面,造成报错
springboot mybatis mapper.xml 配置
springboot mybatis mapper.xml 配置,里面包含了新增,修改,删除,查询,分页查询例子以及通过 网页访问的例子
maven项目编译mybatis的mapper.xml文件未生成
在maven项目当中,我们有时候会用maven clean清理项目的编译结果,然后在eclipse中build的时候项目可以启动,但是只要操作数据库就会抛出异常表示mybatis找不到相应ID的sql语句。这时候查看classes发现mybatis相应的mapper.xml根本没有生成。此时我们需要在[color=red]maven的pom.xml中[/color]中添加 ...
mybatis学习笔记之——mybatis的Mapper XML文件中select元素
select元素: Select元素用来定义查询操作,常用属性如下。 id:唯一标识符。用来引用这条语句,需要和接口的方法名一致。 parameterType:将会传入这条语句的参数类的完全限定名或别名。这个属性是可选的,因为 MyBatis 可以通过 TypeHandler 推断出具体传入语句的参数,默认值为 unset。 resultType:返回值类型。别名或者全类名。 如果返回的...
mybatis的mapper.xml文件扫描注册问题
把mapper文件放在包里面可能不会被编译,必须放在Source folder文件夹里,详见: http://blog.csdn.net/hmily_hui/article/details/70313735
分页查询(二)MyBatis中利用Mapper.xml的Include标签解决方案 [附源码]
分页查询(二)MyBatis中Mapper.xml解决方案 [附源码]
去掉mybatis plus插件生成的mapper.xml文件
前言:使用mybatis自动生成mapper.xml文件,同时自己写的sql放在mapperExt.xml中,随着表的增加,启动越来越慢,为减少加载xml的时间,去掉生成的mapper.xml文件,步骤如下 1.重写AutoSqlInjector的inject(...)方法 /** * 自定义方法,注入点(子类需重写该方法) */ public void inject(Confi...
加入此配置可以将mapper.xml直接放在src下
pom.XML文件加入此配置可以将xml直接放在src下,直接用文件目录的形式加载:&amp;lt;resources&amp;gt; &amp;lt;resource&amp;gt; &amp;lt;directory&amp;gt;${basedir}/src/main/java&amp;lt;/directory&amp;gt; &amp;lt;includes&amp;gt; &amp;lt;include&amp;gt...
mybatis mapper.xml配置问题及解决方案总结
1,定义别名的时候使用了mysql内置的关键字 You have an error in your SQL syntax:check the manual that ....    为了避免这种情况,可以先将sql在数据库客户端执行一遍,显示没有问题在拷贝到mapper中。 2,bad sql grammar   出现这个原因是sql中出现语法错误,解决方法和1类似 3,No enum...
IDEA下maven的mapper.xml文件路径改为resources文件夹下
在IDEA下创建maven项目时, 使用SSM框架,需要把mapper.xml 文件放在resources文件夹下,这样target文件夹才有mapper.xml文件,否则是没有的. 相关配置文件: application-dao.xml &amp;lt;beans xmlns=&quot;http://www.springframework.org/schema/beans&quot; xmlns:xsi=&quot;http:...
Mybatis mapper配置文件放jar包外
springboot使用mybatis的时候有注解和xml两种方式,如果使用xml还可以将配置文件放到jar包外面,不用重新编译直接修改xml中的内容。 mybatis: mapper-locations: classpath:mapper/*.xml 一般的配置信息如上,这里给出了自己制定xml的路径的方法,所以只要在jar包外面设定application的配置文件就可以动态指定配置文件...
MyBatis mapper文件中使用常量
MyBatis mapper文件中使用常量 Java 开发中会经常写一些静态常量和静态方法,但是我们在写sql语句的时候会经常用到判断是否等于 //静态类 public class CommonCode { public static String EENTERPRISE_PRODUCE = &quot;waste_produce_enterprise&quot; public static Stri...
创建Spring-Mybatis web项目,解决IDEA下找不到XXXmapper.xml文件的问题
转入Intellij已经有2个月了,编程效率确实比Eclipse快了很多,而且可以直接使用Maven,然后就想写个小项目玩玩,框架准备使用SpringMVC+spring+Mybatis,看了两篇博客就开工了这篇包括了单独的Mybatis创建和与Spring整合,这篇是Mybatis一个系列的博客的最后一篇,非常详细  想着万事俱备,又不是第一次玩框架,照葫芦画瓢撑死半天就能完成了,结果我是万万
Mybatis——mapper.xml中常用的SQL相关标签简介
题外话:使用Map方式用于传参,也是一种比较方便的方法 Map&amp;lt;String,Object&amp;gt; params = new HashMap&amp;lt;&amp;gt;(); params.put(&quot;name&quot;,&quot;a&quot;); List&amp;lt;Product&amp;gt; ps2 = session.selectList(&quot;listProduct&quot;,params); if标签 用法: ..
Mybatis加载解析Mapper(xml)文件第一讲
SqlSessionFactory初始化:[url]http://donald-draper.iteye.com/blog/2331917[/url] Mybatis加载解析Mapper(xml)文件第二讲:[url]http://donald-draper.iteye.com/blog/2333191[/url] 在上篇 SqlSessionFactory初始化中,解析全局配置文件mybat...
Mybites加载不到mapper的xml文件问题
版权声明:本文转自: https://blog.csdn.net/uniqueweimeijun/article/details/78035295 虽然项目架构中在同一个目录下,但是在项目工作空间里确实不在同一个目录下,我们可以通过pom.xml文件增添如下程序...
mybatis填坑之一:关于mapper中逗号位置的写法
写法一 &amp;lt;update id=&quot;updateRole&quot; parameterType=&quot;com.coship.web.uc.dto.RoleParam&quot;&amp;gt; update t_role set &amp;lt;if test=&quot;name != null and name !=''&quot;&amp;gt; name=#{name} ...
【mybatis】mapper.xml映射中可以使用继承关系,执行一对一时需用association元素
&amp;lt;resultMap type=&quot;Orders&quot; id=&quot;baseResultMap&quot;&amp;gt; &amp;lt;id column = &quot;oid&quot; property=&quot;oid&quot;/&amp;gt; &amp;lt;result column = &quot;orderId&quot; property=&quot;orderId&quot;/&amp;gt; &amp;lt;result column
tomcat work目录文件导致mybatis Mapper.xml不更新问题解决方案
生产环境部署时,本地代码距离上一次部署只更新了mybatis的Mapper.xml文件。部署上线后,发现调用mybatis接口,仍然触发的时上一个版本的sql语句。分析发现,在tomcat的work/Catalina/localhost/对应项目目录下缓存了上一个版本的所有Mapper.xml文件。删除work/Catalina/localhost/,重启tomcat问题解决。...
Mybatis中的mapper.xml使用注意事项
最近在做项目的过程中,使用mybatis的mapper.xml文件发现了一个很低级的错误,在此记录下来提醒自己。 一. 日期类型 数据库采用oracle,日期字段类型为Date。代码中对应实体类的类型为Date,这里注意Date要使用java.util.Date。在使用mybatis自动代码生成工具时,需要指定生成的mapper.xml文件中的字段的jdbcType为TIMESTAMP,因为默...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 国务院文件关于人工智能课程 关于大数据培训