时间:2021-05-19
一. 使用sqlSessionFactory 的 mapperLocations 进行加载,
<!-- SessionFactory --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" scope="singleton"> <property name="dataSource" ref="dataSource" /> <property name="configLocation" value="classpath:mybatis-config.xml" /> <!-- 映射文件路径,可以集中写到一个地方,也可以与dao写到一个地方,支持多个路径,支持通配符--> <property name="mapperLocations" value="classpath:mapperdao/*.xml"></property> </bean>此种方法可以使用通配符, 可以指定位置, 可以使用多个位置,
二. 使用MapperScannerConfigurer进行扫描
<!-- 扫描指定包下的所有接口,创建代理类,如果mysql的配置文件名与接口名相同的话,可以不用一一配置 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.sunny.shop" /> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property> </bean>此种方法可以扫描指定包下的接口, 如果需要扫描配置文件, 则配置文件须与对应的DAO接口处于同一目录, 且名字必须相同
三.配置 mybatis 的 mapper
<mappers> <!-- 既可写映射文件, 也可写对应的接口 --> <!--<mapper resource="com/mybatis/student/StudentMapper.xml" /> <mapper resource="com/mybatis/classes/ClassesMapper.xml" /> <mapper class="com.sunny.shop.user.dao.UserDao" /> --> </mappers>前两种都是在spring的配置文件中配置的, 在 mybatis 的配置文件中配置 <mappers>节点
PS:下面给大家介绍下mybatis 加载配置文件的两种方式
package com.atguigu.day03_mybaits.test;import java.io.IOException;import java.io.InputStream;import java.io.Reader;import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;public class Test {public static void test1(){///加载mybatis的配置文件(它也加载关联的映射文件)String str="conf.xml";InputStream is=Test.class.getClassLoader().getResourceAsStream(str);//构建sqlSession的工厂SqlSessionFactory factory=new SqlSessionFactoryBuilder().build(is);SqlSession session=factory.openSession();//映射sql的标识字符串,是在影射文件中找到namespace+“”+select中的idString statement="com.atguigu.day03_mybaits.userMapper.getUser";//执行查询返回一个唯一user对象的sqlUser user=session.selectOne(statement, 1);System.out.println(user);}public static void test2() throws IOException{///加载mybatis的配置文件(它也加载关联的映射文件)String resource = "conf.xml"; //加载mybatis的配置文件(它也加载关联的映射文件)Reader reader = Resources.getResourceAsReader(resource); //构建sqlSession的工厂SqlSessionFactory factory=new SqlSessionFactoryBuilder().build(reader);SqlSession session=factory.openSession();//映射sql的标识字符串,是在影射文件中找到namespace+“”+select中的idString statement="com.atguigu.day03_mybaits.userMapper.getUser";//执行查询返回一个唯一user对象的sqlUser user=session.selectOne(statement, 2);System.out.println(user);}public static void main(String[] args) throws IOException {test1();test2();}}总结
以上所述是小编给大家介绍的mybatis 加载配置文件的方法(两种方式),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一、Mybatis中的延迟加载1、延迟加载背景:Mybatis中Mapper配置文件中的resultMap可以实现高级映射(使用association、coll
全局配置文件为mybatis-config.xml1、properties标签可以使用properties来引入外部properties配置文件的内容引入方式有
SpringBoot设置接口访问超时时间有两种方式一、在配置文件application.properties中加了spring.mvc.async.reques
mybatis项目配置首先这事一个简单的mybatis项目配置文件:environmentmybatis支持多个环境,可以任意配置比如:就会有两个环境,envi
一、DMI动态方法调用的其中一种改变form表单中action属性的方式已经讲过了。还有两种,一种是改变struts.xml配置文件中action标签中的met