zoukankan      html  css  js  c++  java
  • mybatis学习四 mybatis的三种查询方式

          <select id="selAll" resultType="com.caopeng.pojo.Flower">
              select * from flower
          </select>
          
          <select id="selCount" resultType="int">
              select count(*) from flower
          </select>
          
          <select id="selMap" resultType="com.caopeng.pojo.Flower">
              select * from flower
          </select>    

    package com.XXX.demo;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.util.List;
    import java.util.Map;
    
    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 com.caopeng.pojo.Flower;
    
    
    public class Demo {
        public static void main(String[] args) throws IOException {
            //加载配置文件
            InputStream in = Resources.getResourceAsStream("mybatis.xml");
            //使用工厂设计模式   【注意】以后sqlSessionFactory都会被spring 管理,不需要我们自己创建
            SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(in);
            
            //获取sqlSession
            SqlSession sqlSession=sqlSessionFactory.openSession();
            
            //查询结果返回一个resultType的值作为泛型值的List
            List<Flower> flowrList = sqlSession.selectList("com.caopeng.mapper.FlowerMapper.selAll");
            for (Flower flower : flowrList) {
                System.out.println(flower);
            }
            //查询结果返回一个Obejct
            int count=sqlSession.selectOne("com.caopeng.mapper.FlowerMapper.selCount");
            System.out.println(count);
            
            //查询结果返回一个Map,其中key值是selectMap的最后一个参数,value为resultType的指定的返回的对象
            Map<Object,Object> map= sqlSession.selectMap("com.caopeng.mapper.FlowerMapper.selMap", "name");
            System.out.println(map);
            sqlSession.close();
        }
    }
  • 相关阅读:
    在终端聊天
    Vue双向数据绑定的原理
    手动封装on,emit,off
    浅谈Vue中组件传值的几种方式
    常见的一些性能优化的小方法
    常见的一些JS兼容问题
    移动布局的方法
    移动布局的方法
    快速、高效的学习vuex
    移动端300ms延迟原因及解决方案
  • 原文地址:https://www.cnblogs.com/cplinux/p/9613869.html
Copyright © 2011-2022 走看看