Можно ли поставить myBatis (iBatis) xml mappers вне проекта - PullRequest
3 голосов
/ 08 июня 2010

Согласно руководству пользователя, я могу использовать путь к файлу вместо ресурс:


// Using classpath relative resources
<mappers>
    <mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
</mappers>

// Using url fully qualified paths
<mappers>
    <mapper url="file:///var/sqlmaps/AuthorMapper.xml"/>
</mappers>

в моем проекте я пытаюсь поместить мой mapper xml "вне" проекта и я делаю это:

<mapper url="file://D:/Mappers/ComponentMapper1.xml" /> 

Вывод моей консоли log4j: Error building SqlSession. The error may exist in file://D:/Mappers/ComponentMapper1.xml Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.net.UnknownHostException: D
Это ошибка или я что-то не так делаю?

Ответы [ 3 ]

1 голос
/ 18 июня 2010

Вам просто нужна дополнительная косая черта перед буквой диска.

0 голосов
/ 08 апреля 2016

Вы должны использовать

<mapper url="file:///usr/local/ComponentMapper1.xml" />

Где file:///usr/local/ComponentMapper1.xml - это путь к вашему XML-файлу, а не ресурс, если вы хотите использовать мапперы вне директории ресурса.

0 голосов
/ 08 июня 2010

Sql Map Config ищет файлы сопоставления относительно пути к классам, поэтому просто попробуйте добавить свой ComponentMapper1.xml где-нибудь в путь к классам.

set CLASSPATH=%CLASSPATH%;D:/Mappers/

...

<mapper resource="ComponentMapper1.xml" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...