欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Javaweb mybatis接口开发实现过程详解

程序员文章站 2022-07-08 09:55:57
mapper.xml文件

mapper.xml文件

<?xml version="1.0" encoding="utf-8"?>
<!doctype mapper
  public "-//mybatis.org//dtd mapper 3.0//en"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 门店表的映射文件  namespace值为对应接口的全路径 -->
<mapper namespace="com.tedu.dao.doormapper">
  <!-- 1.查询所有门店信息,id值为对应接口中方法的名字
    resulttype指定将查询的结果封装到哪个pojo对象中
   -->
  <select id="findall" resulttype="com.tedu.pojo.door">
    select * from tb_door
  </select>
</mapper>

mapper的接口文件(接口由我们自己声明,由spring-mybatis提供子类实现类)

package com.tedu.dao;

import java.util.list;
import com.tedu.pojo.door;
/**
 * doormapper接口 
 * 声明增删改查方法,对门店信息进行操作
 */
public interface doormapper {
  /**
   *接口由我们开发人员负责提供,但接口的实现类(子类)由框架负责提供
   *如果不整合mybatis和spring框架,接口的子类实例也是由mybatis负责创建
   * 如果整合了mybatis和spring框架,接口的子类实例将会由spring容器负责创建
   */

//方法名必须肯mapper文件中的id值一致
  public list<door> findall();
}

测试类中调用findall方法

package com.tedu;

import java.io.ioexception;
import java.io.inputstream;
import java.util.list;

import org.apache.ibatis.io.resources;
import org.apache.ibatis.session.sqlsession;
import org.apache.ibatis.session.sqlsessionfactory;
import org.apache.ibatis.session.sqlsessionfactorybuilder;
import org.apache.jasper.tagplugins.jstl.core.foreach;
import org.junit.test;

import com.tedu.dao.doormapper;
import com.tedu.pojo.door;


/**
 * mybatis的入门案例: 查询yonghedb.emp表中的所有员工信息
 */
public class testmybatis01 {
	
	/* 练习1: 查询emp中的所有员工信息 */
	@test
	public void testfindall01() throws exception {
		//1.读取mybatis核心配置文件(mybatis-config.xml),resources是mybatis提供的工具类
		inputstream in = resources.getresourceasstream("mybatis/mybatis-config.xml");
		//2.通过配置信息获取sqlsession工厂对象
		sqlsessionfactory fac = new sqlsessionfactorybuilder().build( in );
		//3.获取sqlsession对象(打开与数据库的连接)
		sqlsession session = fac.opensession();
		//4.获取doormapper子类实例
		doormapper doormapper = session.getmapper(doormapper.class);
		list<door> lis = doormapper.findall();
		//5.输出结果
		for (door door : lis) {
			system.out.println(door);
		}	
	}
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。