zoukankan      html  css  js  c++  java
  • 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()); } } }
  • 相关阅读:
    uva 11729 Commando War
    剑指offer 38 数字在排序数组中出现的次数
    剑指offer 35 第一个只出现一次的字符
    剑指offer 33 把数组排成最小的数
    剑指offer17 合并两个排序的链表
    跳台阶
    app上线
    剑指offer54 表示数值的字符串
    剑指offer49 把字符串转换成整数
    段错误
  • 原文地址:https://www.cnblogs.com/cainame/p/10315939.html
Copyright © 2011-2022 走看看