Mybatis读取数据实战

1.Mybatis基础配置

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--别名-->
    <!-- 使用别名代替全限定名 -->
  <typeAliases>
         <typeAlias type="model.User" alias="user"/>
  </typeAliases>
  <!-- 数据库环境 -->
  <environments default="development">
  <environment id="development">
  <transactionManager type="JDBC"/>
  <dataSource type="POOLED">
     <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
    <!--在xml中 &=&-->
     <property name="url" value="jdbc:mysql://localhost:3306/office?useSSL=false&serverTimezone=Hongkong"/>
     <property name="username" value="root"/>
     <property name="password" value="123456"/>
  </dataSource>
  </environment>
  </environments>
  <!-- 映射文件 -->
  <mappers>
  <!-- 映射文件存放的位置 -->
  <mapper resource="mapper/UserMapper.xml"/>
  </mappers>
  </configuration>

2.得到SqlSessionFactory

import java.io.IOException;
import java.io.InputStream;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

public class SqlSessionFactorytest {
	//定义参数
	public static SqlSessionFactory sqlSessionFactory=null;
	//定义配置文件
	public static String resource="mybatis-config.xml";
	public static InputStream inputStream;
//构建SesseionFactory
	public static SqlSessionFactory getSqlSessionFactoryBuider() {
		try {
			//读取配置文件
			inputStream=Resources.getResourceAsStream(resource);
			System.out.println("配置文件加载成功!!");
			//SqlSessionFactoryBuilder通过输入流的相关配置得到sqlSessionFactory	
		}catch(IOException e) {
			e.printStackTrace();
		}
		sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
		System.out.println("sqlSessionFactory创造成功!!");
		return sqlSessionFactory;
	
	}
}

3.数据层开发标准

public interface UserDao {
    public List<User> getAllUser();//得到所有的用户
}

4.用XML实现映射器

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <mapper namespace="dao.UserDao">
      <select id="getAllUser" resultType="User">
          select * from user
      </select>
    </mapper>

5.得到SqlSession

import java.util.List;

import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;

import dao.UserDao;
import model.User;
import utils.SqlSessionFactorytest;


public class test {
public static void main(String[] args) {
	SqlSessionFactory sqlSessionFactory=SqlSessionFactorytest.getSqlSessionFactoryBuider();
	SqlSession sqlSession=sqlSessionFactory.openSession();
	System.out.println("SqlSession创造成功!!");
//用SqlSession得到Mapper接口 UserDao userDao=sqlSession.getMapper(UserDao.class); List<User> user=userDao.getAllUser(); if(user!=null) { System.out.println("数据读取成功!!"); } for(int x=0;x<user.size();x++) { User u=user.get(x); System.out.println(u.getId()); System.out.println(u.getUsername()); System.out.println(u.getPassword()); } } }
原文地址:https://www.cnblogs.com/cainame/p/10315939.html