MyBatis sqlMap.config中sqlMap.xml的相对路径问题

新建一个文件夹sqlMap用于存放sqlMap.xml文件,我把sqlMap文件夹放在(相对) 引用的iBatisNet.DataMapper.dll目录的上两级;sqlmap.config中怎么写路径才能应用这sqlMap文件夹中的xml;
我现在配置为sqlMap/sqlMap.xml 始终指向iBatisNet.DataMapper.dll同级的sqlMap文件夹
该项目中分为服务和应用server和app;两个都要用ibatis做数据库访问就有不同的xml文件;现在把sqlMap.config全局配置文件放在与app同级;providers.config数据库驱动和映射xml文件建立一个文件夹sqlMap也放在app同级;
问题就是sqlMap.config中,文件的相对路径不知到该怎么写了,它总是相对于ibatis程序集dll的

可以直接写相对classpath下的路径
<property
name="mapperLocations"
value="classpath:/com/XXXX/dao/*/*_mapper.xml" />
温馨提示:内容为网友见解,仅供参考
无其他回答

为什么mabatis的配置sqlMapConfigxml文件中文注释报错
sqlMapConfog.xml文件如下:<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE configuration PUBLIC "-\/\/mybatis.org\/\/DTD Config 3.0\/\/EN" "http:\/\/mybatis.org\/dtd\/mybatis-3-config.dtd"> <configuration> <environments default="development"> <environment id="development"> <transac...

为什么会报错,sql语句在mapper.xml里的写法有什么不同吗?
mybatis的sqlmap是xml格式的文件,你的代码里出现了小于号,而小于号是xml的组成部分,要用CDATA包裹住才不报错。示例代码: select rf.item_id as itemId , rf.device_id as deviceId , rf.station_id as stationId , rf.seq_date as seqDate , rf.average_value averageValue from re_factor...

mybatis怎么打印mapper.xml中执行的sql
在log4j.properties 中加上这行代码 显示SQL语句部分 log4j.logger.com.ibatis=DEBUG log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG log4j.logger.java.sql.Connec...

mybatis中为什么要这样写?能找到吗?
因为编译后config下的配置文件连同包一起被生成到WEB-INF下的classe里面去了,而XML找路径是编译后的路径,所以是不用写全路径的。

mybatis怎么实现两种数据库的兼容
分析问题:1、解决ibatis多数据库兼容的问题,实际上就是让ibatis可以自动选择不同数据库sqlmap配置文件。2、打开ibatis源码工程并进行代码跟踪,最终定位到com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.java处,系统中运行的sqlmap节点均从这里统一转化加载的。3、很明显SqlMapConfigParser源码中的add...

mybatis 中如何映射实体类和表名
首先:最好把实体类里面的变量名称和表里面字段写成一致。然后:在SqlMapConfig.xml中 <typeAliases><typeAlias alias="game" type="实体类路径"\/><\/typeAliases>这就是把你的实体类写了个别名 最后:在写查询添加的时候:返回实体类对象select * from tb_game这样查出的结果就对应上数据了。

mybatis:java.lang.IllegalArgumentException:Parameter Maps coll...
楼主,请打开你的配置文件 一:第一种可能:MaBatis-Config.xml 检查<typeAliases>配置 和<mappers>配置 应该是缺少配置,或配置有误 二:第二种可能:sqlmap配置文件里面 <mapper namespace="xxx"> 检查xxx的名字是否对应

mybatis中的$的sql注入该怎么解决
{ } 解析为一个 JDBC 预编译语句(prepared statement)的参数标记符。例如,sqlMap 中如下的 sql 语句 select * from user where name = #{name};解析为:select * from user where name = ?;一个 #{ } 被解析为一个参数占位符 ? 。{ } 仅仅为一个纯碎的 string 替换,在动态 SQL 解析...

求助myBatis sqlMap foreach 对象中的list传入,报错
bean =new JavaBean ();bean.setId(id);bean.setName(name);dao.insert(bean);上面的id,name等是service方法的各个参数 然后在myBatis 中的sql语句中直接引用各个属性就行了xx=#{id},xx=#{name}等等的 parametertype="你的实体名,也可以写实体的别名,这个别名是在sqlConfig.xml中";

求助myBatis sqlMap foreach 对象中的list传入,报错
不会报错吧! mybatis只管取值,根本就不会关心你的map里都有什么类型的数据。 报错可能的情况是key对应的值与数据库的类型不匹配. ~如果你认可我的回答,请及时点击【采纳为满意回答】按钮 ~~手机提问的朋友在客户端右上角评价点【满意】即可。...

相似回答