MyBatis配置使用全限定名作为Mapper代理对象的名称
时间: 2023-11-26 09:03:36 浏览: 144
在MyBatis配置文件中,我们可以使用全限定名来为Mapper接口指定一个别名,从而在代码中使用别名来引用Mapper代理对象。这样可以提高代码的可读性和可维护性。
例如,我们可以在MyBatis配置文件中添加以下配置:
```xml
<typeAliases>
<typeAlias type="com.example.mapper.UserMapper" alias="userMapper"/>
</typeAliases>
```
这里的type属性指定了Mapper接口的全限定名,alias属性指定了这个接口的别名。这样,在代码中就可以使用别名来引用Mapper代理对象了:
```java
SqlSession sqlSession = sqlSessionFactory.openSession();
UserMapper userMapper = sqlSession.getMapper("userMapper");
```
这里的"userMapper"就是我们在配置文件中定义的Mapper接口的别名。这样,我们就可以在代码中使用更加简洁的名称来引用Mapper代理对象了。
相关问题
mybatis mapper单例对象名称使用全限定名
在MyBatis中,Mapper接口本身并不是单例对象,而是由MyBatis框架在需要时动态生成的代理对象。这个代理对象是线程安全的,可以被多个线程共享。
因此,在MyBatis中并没有使用全限定名作为Mapper代理对象的名称。如果你希望在代码中引用Mapper代理对象,可以使用以下方式:
```java
SqlSession sqlSession = sqlSessionFactory.openSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
```
这里的UserMapper.class是Mapper接口的Class对象,通过调用SqlSession的getMapper方法,可以获取到Mapper接口的代理对象。在这个例子中,获取到的Mapper代理对象的名称就是UserMapper,而不是全限定名。
阅读全文