关于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个回答

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

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

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

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

DOM4jar
singleStandard 你好,我看的src/main/java 和 src/main/resources的output folder(编译后代码目录)都是mybatis/target/classes
9 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mybatis mapper.xml路径配置方式
-->               -->                           classpath:com/tourInteraction/mapper/*.xml       classpath:com/tourInteraction/mapper/article/*.xml
mybatis自动生成mapper.xml文件
springboot整合mybatis,自动生成mapper.xml文件以及dao和model
mybatis 接口文件和mapper.XML映射 文件 路径不同
最近在学习SSM,遇到一个问题: 就是 比如DepartmentDao接口需要一个DepartmentDao.xml映射文件, 习惯上接口放在java源码文件夹,映射文件放在resource资源文件夹, 如果你是这样放的那么你就需要在配置sqlSessionFactory时加一条属性 &amp;lt;property name=&quot;mapperLocations&quot; value=&quot;classpath...
【Mybatis】如何继承Mybatis中的Mapper.xml文件
最近在写一个 Mybatis 代码自动生成插件,用的是Mybatis来扩展,其中有一个需求就是 生成javaMapper文件和 xmlMapper文件的时候 希望另外生成一个扩展类和扩展xml文件。原文件不修改,只存放一些基本的信息,开发过程中只修改扩展的Ext文件 形式如下: SrcTestMapper.java package com.test.dao.mapper.srctest;...
mybatis热部署加载*Mapper.xml文件,手动刷新*Mapper.xml文件
由于项目已经发布到线上,要是修改一个Mapper.xml文件的话,需要重启整个服务,这个是很耗时间的,而且在一段时间内导致服务不可用,严重影响用户 的体验度。所以希望可以有一个机制可以,当修改某个mapper.xml的时候,只要重新加载这个mapper.xml就好了,参考网上的一些资料和demo,加上一些 自己的总结,下面的代码是通过测试的,可以供你们参考和使用。 import java.i
mybatis mapper.xml 文件修改后自动刷新
import java.io.IOException; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; import java....
MyBatis的mapper.xml文件中$和#的区别
#将传入的值当做一个字符串,自动添加双引号例如: where id=#id# ,此时传递的值为10 的话会解析成 where id="10"$将传递的值原封不动的显示在SQL中,例如 order by $ode$ ,此时传递的值为 time 那么会解析成order by time#方式能够很大程度防止sql注入 $方式无法防止Sql注入 动态sql中使用排序的时候注意用$而不是#,这边还是会存
mybatis的mapper.xml文件扫描注册问题
把mapper文件放在包里面可能不会被编译,必须放在Source folder文件夹里,详见: http://blog.csdn.net/hmily_hui/article/details/70313735
mybatis中mapper.xml文件参数问题
mapper.xml中的参数date,integer,string等一个的参数,可都修改为_paramete,或者在mapper.java的接口文件中的参数上添加@Param(value=&quot;xxxx&quot;),xxxx为xml中对应的参数,不然会报错:There is no getter for property named 'xxxx' in 'class java.lang.String(参数str...
关于mybatis中config.xml以及mapper.xml文件无法补全问题
第一步:下载mybatisDTD文件,我已经下载好了,解压后有两个如图:   第二步:在eclipse按顺序操作:windows -->preferences-->xml-->xml catalog-->add-->fileSystem 把上面顺序操作完后会看到如下图:   第三步: 先导入一个DTD文件(选择Mapper所对应得文件:mybatis-3-mapper.dtd) ke
关于使用IntelliJ时myBatis的mapper.xml文件发布问题
[b]请教一下[/b]rn我正在使用IntelliJ开发一个数据库应用,用到了myBatis,生成的mapper.xml文件生成到了main/java/下面的某一个类路径中,当我部署和打包生成war文件的时候,在target目录中的对应目录中却没有找到mapper.xml文件,导致运行时错误。rnrn[b]问题:[/b]rn我如何才能设置IntelliJ在部署和打包的时候让mapper文件自动的被复制到target目录中classes目录下对应的目录中呢?rnrn不好意思,初学使用IntelliJ,问的问题可能有点弱,还请有经验的朋友不吝赐教~~~rn非常感谢~~~
关于引用的路径问题
1.关于.css和.js中的路径引用。 首先看所在文件的位置在根据文件的所在的位置进行相对和绝对路径。
关于文件图片路径的引用
案例如下: 项目中有两个图片,主页面为show.jsp,要在主页面中访问两个图片 第一种,访问同目录下的图片,即当前jsp页面与要访问的图片位于同一文件夹下 &lt;p&gt;图片的显示 qq.jpg在webapp/img文件夹下 头像.jpg在webapp下&lt;/p&gt; &lt;p&gt;显示头像.jpg,与当前jsp在同一文件夹下&lt;/p&gt; &lt;img sr...
2015.9.21 关于文件引用路径
首先,在Win系统下,\和/都可以作为文件夹分割符,但是由于\是转义符,所以应当加上免转义声明,r /表示根目录 ./表示当前目录 ../表示上级目录 如果夸目录太多,可以直接使用绝对路径较为方便
关于Mybatis中Mapper.xml文件传多个参数和like问题
传一个参数:如String类型: parameterType=“java.lang.String” 传多个参数时: 不添加parameterType说明传参类型时: (1),用顺序对应,0,1形式,未成功 dao层.java文件 mapper.xml文件 (2)用注解对应,成功 dao.java函数 mapper.xml文件 添加参数类型说明,用对象 模糊查询like问题 未成功: L...
mybatis mapper.xml 基础的增删改查
新增的几种情景 &amp;lt;!--单条新增--&amp;gt; &amp;lt;insert id=&quot;addUser&quot; parameterType=&quot;User&quot;&amp;gt; INSERT INTO `user` ( `userId`, `username`, `nickname`, `password` ) VAL...
Mybatis的mapper.xml中$和#的区别?
#使用↓rnand t.`requestControllerMethod` likern CONCAT('%',#queryEntity,'%')rn$使用↓rnand t.`requestControllerMethod rn like '%$title%'rnrn还有'rnconcat不是多个字符串拼接吗? 这里的CONCAT('%',#queryEntity,'%') 为什么把'%'也分开了?rn还有rnconcat能配合$又该怎么使用的呢?rnrn[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/43.gif][/img]
求助:看不懂mybatis的mapper.xml
rn selectrn ,(SELECT name FROM sys_organ o WHERE o.id=s.baid) AS baNamern from sys_user srn where id = #valuern rnrnrnrn selectrn ,(SELECT name FROM sys_organ o WHERE o.id=u.baid) AS baName,rn (SELECT name FROM sys_organ o WHERE o.id=u.bapid) AS bapNamern from sys_user urn where login_name = #0rn rnrn为什么这里没有写parameter ,而可以传值?
如何去掉mybatis自动生成的mapper.xml文件背景色
在IDEA中使用mybatis逆向工程生成的Mapper.xml文件会有背景色,看着很不舒服。alt加enter,选择 un-inject Language/refence即可
【mybatis】mapper.xml文件自动扫描注入的方法
1、结构如下 2、配置好项目后在applicationContext-dao.xml中的  session 工厂配置里加入  mapperLocations  项 即可自动扫描目录下所有xml映射文件 classpath:com/gfan/account/check/mapper/*.xml 3、mybatis.xml可以直接这
单个和批量加载mybatis的mapper.xml文件
一,单个引用mapper.xml文件 创建完操作数据库表的mapper.xml文件后,需要在项目中进行引用,格式如下 然后在spring-db-config.xml文件中引用mappers所在的文件,格式如下 二,批量引入mapper.xml文件 单个引入mapper.xml文件的弊端就是太麻烦,每个mapper.xml文件都需要在中进行添加,如果忘记添加还报
去掉mybatis plus插件生成的mapper.xml文件
前言:使用mybatis自动生成mapper.xml文件,同时自己写的sql放在mapperExt.xml中,随着表的增加,启动越来越慢,为减少加载xml的时间,去掉生成的mapper.xml文件,步骤如下 1.重写AutoSqlInjector的inject(...)方法 /** * 自定义方法,注入点(子类需重写该方法) */ public void inject(Confi...
mybatis mapper.xml文件中$和#的使用区别
#{}表示一个占位符即?,可以有效防止sql注入。在使用时不需要关心参数值的类型,mybatis会自动进行java类型和jdbc类型的转换。 #{}可以接收简单类型值或pojo属性值,如果传入简单类型值,#{}括号中可以是任意名称。<!-- 根据名称模糊查询用户信息 --> <select id="findUserById" parameterType="String" resultTyp
mybatis mapper.xml文件里怎么调用静态方法
刚用mybatis时,当时想要在mapper.xml文件里调用静态方法,比如某个对象的id是由工具类的静态方法生成的,所以想在insert语句里调用那个工具类的静态方法,不过当时搜索了半天没有解决,最近在另一个项目组无意中看到其他同事写的mapper文件发现里面就有这个用法,所以记一篇博客,以免忘记。 写法见下图红框里所示,使用${}取值,里面类名前加@,方法名前也加@
MyBatis自动生成mapper.xml工具
mybatis使用虽然灵活简单,但mapper.xml的配置却很繁琐。如果项目的实体表比较多,手工配置是不现实的。这个工具可以帮助自动后成model,dao,mapper.xml 使开发者从繁琐的mapper.xml映射中解放出来,把更多的精力投入到项目的业务层中去。首先配置好generatorConfig_zongfenji.xml,之后运行MyBatisGeneratorTool. 这是一个完整的带源码的小工具,maven方式管理。所需jar包在pom.xml中有配置。联网更新依赖会自动下载。
springboot mybatis mapper.xml 配置
springboot mybatis mapper.xml 配置,里面包含了新增,修改,删除,查询,分页查询例子以及通过 网页访问的例子
Mybatis的mapper.xml配置文件——详解
&amp;amp;amp;lt;?xml version=&amp;amp;quot;1.0&amp;amp;quot; encoding=&amp;amp;quot;UTF-8&amp;amp;quot; ?&amp;amp;amp;gt; select * from user where id = #{id} select * from orders
mapper.xml映射文件配置 mybatis
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- namespace为命名空间,应该是mapper接口的全称-->
mybatis的mapper.xml使用循环语句
1.mapper.java,传的参数是mapList<实体类> getList(Map<String,Object> paraMap);2.mapper.xml<select id="getList" parameterType="java.util.Map" resultMap="BaseResultMap"> select * from table where <if test="a!
MyBatis的模糊查询mapper.xml的写法
模糊查询语句不建议使用${}的方式,还是建议采用MyBatis自带的#{}方式,#{}是预加载的方式运行的,比较安全,${}方式可以用但是有SQL注入的风险!!! 1.直接传参 在controller类中 String id = &quot;%&quot;+ id +&quot;%&quot;; String name = &quot;%&quot;+ name +&quot;%&quot;; dao.selectByIdAndName(id,name); 在map...
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配置文件常用语法mapper.xml
xml version="1.0" encoding="UTF-8"?> mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> namespace="com.sun.dao.UserDao"> 封装sql条件,封装可以重用-->
mybatis映射文件mapper.xml的写法。
在学习mybatis的时候我们通常会在映射文件这样写:&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&amp;gt; &amp;lt;!DOCTYPE mapper PUBLIC &quot;-//mybatis.org//DTD Mapper 3.0//EN&quot; &quot;http://mybatis.org/dtd/mybatis-3-mapper.dtd&quot;&amp;gt; &amp;lt;mappe
mybatis自动生成mapper.xml的方法
1. 首先添加maven插件                             org.mybatis.generator                 mybatis-generator-maven-plugin                 1.3.2                                     src/test/resources/con
MyBatis——mapper.xml提升指南
MyBatis常见细节问题 一、前言         MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数...
【MyBatis】mapper.xml映射文件
Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。 1 parameterType(输入类型) 1.1 #{}与${} #{}实现的是向prepareStatement中的预处理语句中设置参数值,sql语句中#{}表示一个占位符即?。 ...
mybatis注解开发代替mapper.xml
很好玩的一种注解开发 通过使用注解开发 1.省去了mybatis的配置文件中对实体和mapper.xml文件的配置 &lt;!--配置实体--&gt; &lt;!-- &lt;property name="typeAliasesPackage" value="com.blueocean.saveme.entity"/&gt;--&gt; &lt;!--配置mapper.xml文件--&gt...
maven项目编译mybatis的mapper.xml文件未生成
在maven项目当中,我们有时候会用maven clean清理项目的编译结果,然后在eclipse中build的时候项目可以启动,但是只要操作数据库就会抛出异常表示mybatis找不到相应ID的sql语句。这时候查看classes发现mybatis相应的mapper.xml根本没有生成。此时我们需要在[color=red]maven的pom.xml中[/color]中添加 ...
linux下文件引用的路径问题。
我写的是jsp程序,在其中要引用几个图片,路径写的是相对路径,我路径中的“/”改成“\”也不行,应该怎样写才成呀
用java程序生成mybatis的mapper.xml和mapper.java文件
只要在JAVA开发环境下都能逆向生成mapper.xml和mapper.java文件,不论开发工具
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数