Mybatis框架入门
首先,先说一下写这个入门程序的需求与开发步骤:
- 需求:使用Mybatis从数据库中查询出数据。???
- 开发步骤:???
- 准备MySQL数据库,创建表结构添加一些数据
- 创建Java工程,导入开发用的jar包
- 编写实体类,和表结构对应,用来进行数据的封装
- 编写映射配置文件(其中包括数据库连接信息),加载映射配置文件
- 编写入门的代码
那前三步就不说了有一些基础就可以办到
在写配置文件的时候,主要编写两种配置文件,第一种为主配置文件,管理其他和接口对应的配置文件。
在编写主配置文件时,主要有两点:
- 配置环境们(需要设置默认环境)
- 配置具体环境
- 配置事务类型
- 配置是否使用数据库连接池
- 引入映射配置文件
- 配置事务类型
在编写映射配置文件的时候,文件名与Mapper接口(也可以说是Dao接口为持久层接口)名要一致(算是一种规范).通过命名空间来找到对应Mapper。
其对应id为其对应的方法,resultType为返回值类型。
mapper.xml的规范
在mapper标签中添加命名空间
在select标签内写对应的select语句
|
最后进行测试:
- 加载主配置文件(resources)
InputStream inputStream= null; SqlSession session = null; AccountMapper accountMapper = null; UserMappper userMappper =null; //@Before注释是将被注释的代码放在最前面执行 @Before public void init() throws IOException { inputStream= Resources.getResourceAsStream("SqlMapConfig.xml"); //创建新的会话工厂 SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream); //获取会话 session = factory.openSession(); //获取相应的代理对象 // accountMapper = session.getMapper(AccountMapper.class); userMappper = session.getMapper(UserMappper.class); } //@After注释是将被注释的代码放在最后执行进行收尾工作 @After public void destory() throws IOException { session.close(); inputStream.close(); }
- 创建会话工厂(sqlsessionFactory)
- 通过工厂获取(sqlsession)
- 获取代理对象进行操作
@Test public void test(){ //具体执行的操作 List
accounts = accountMapper.findAll(); for (Account account : accounts) { System.out.println(account); } }