MyBatis mapping类基本用法
有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
定义mapping类
MyBatis 有两种定义查询结果到 Java 类的映射关系的方式,一种是通过xml文件定义,一种是通过Java annonation 定义,这里使用第二种方法。
现在我们有一张mysql的表定义如下:
CREATE TABLE `MY_BATIS_TEST` ( `id` varchar(255) NOT NULL DEFAULT '', `url` varchar(255) DEFAULT NULL )
首先定义table一条数据在Java中对应的class
public class Redord {
public String url;
}定义sql查询到Java class 结果集合的映射:
public interface SimpleMapper {
@Select("select url from testdb.MY_BATIS_TEST limit 1;")
Redord selectOneRecord();
@Select("select url from testdb.MY_BATIS_TEST;")
Set<Record> selectRecords();
@Select("select url from testdb.MY_BATIS_TEST where id=#{id};")
Record selectRecordByID(int id);
}初始化并注册mapping类
Properties properties = new Properties();
properties.setProperty("driver", "com.mysql.jdbc.Driver");
properties.setProperty("url", "jdbc:mysql://127.0.0.1:3306/testdb");
properties.setProperty("username", "the_user_name");
properties.setProperty("password", "the_password");
PooledDataSourceFactory pooledDataSourceFactory = new PooledDataSourceFactory();
pooledDataSourceFactory.setProperties(properties);
DataSource dataSource = pooledDataSourceFactory.getDataSource();
Environment environment = new Environment("development", new JdbcTransactionFactory(), dataSource);
Configuration configuration = new Configuration(environment);
configuration.addMapper(SimpleMapper.class); //注册mapping类
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);从mysql中查询数据
SqlSession session = sqlSessionFactory.openSession();
try{
PluginMapper mapper = session.getMapper(PluginMapper.class);
Plugin pl = mapper.selectPluginsByID(1000);
System.out.println(pl.url);
} finally {
session.close();
}全局唯一以及线程安全
SqlSessionFactory 可以在整个app的生命周期中只创建一次,SqlSession需要在每次执行sql的函数中创建一次并且使用后需要进行关闭:
SqlSession session = sqlSessionFactory.openSession();
try {
// do work
} finally {
session.close();
}以上就是MyBatis mapping类基本用法的详细内容,更多关于MyBatis mapping类的资料请关注脚本之家其它相关文章!
相关文章
SpringBoot中@ConditionalOnProperty注解的使用方法详解
这篇文章主要介绍了SpringBoot中@ConditionalOnProperty注解的使用方法详解,在开发基于SpringBoot框架的项目时,会用到下面的条件注解,有时会有需要控制配置类是否生效或注入到Spring上下文中的场景,可以使用@ConditionalOnProperty注解来控制,需要的朋友可以参考下2024-01-01
MyEclipse打开文件跳转到notepad打开问题及解决方案
windows系统打开README.md文件,每次都需要右键选择notepad打开,感觉很麻烦,然后就把README.md文件打开方式默认选择了notepad,这样每次双击就能打开,感觉很方便,这篇文章主要介绍了MyEclipse打开文件跳转到notepad打开问题,需要的朋友可以参考下2024-03-03
Mybatis之解决collection一对多问题(显示的结果没有整合到一起)
这篇文章主要介绍了Mybatis之解决collection一对多问题(显示的结果没有整合到一起),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-03-03
Spring Boot 配置 IDEA和DevTools 热部署的方法
这篇文章主要介绍了Spring Boot 配置 IDEA和DevTools 热部署的方法,需要的朋友可以参考下2018-02-02
解决Nacos成功启动但是无法访问 (Connection refused)
这篇文章主要介绍了解决Nacos成功启动但是无法访问 (Connection refused)问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-06-06


最新评论