高级映射

2018-07-15  本文已影响17人  tingshuo123

表结构

user表:


t_user

查询多条记录

mapper 内容

    <select id="findAllUser" resultMap="userListResultMap">
        SELECT * FROM t_user;
    </select>
    <resultMap type="UserBean" id="userListResultMap">
        <id property="id" column="u_id"></id>
        <result property="name" column="u_name" />
        <result property="dept" column="u_dept" />
        <result property="website" column="u_website" />
        <result property="phone" column="u_phone" />
    </resultMap>

IUserDao 接口

package com.project.dao;

import java.util.List;

import com.project.bean.UserBean;

public interface IUserDao {

    // 获取用户列表
    public List<UserBean> findAllUser();
}

IUserDao的实现类UserDaoImpl

package com.project.dao.impl;

import java.util.List;

import org.apache.ibatis.session.SqlSession;

import com.project.bean.UserBean;
import com.project.dao.IUserDao;
import com.project.util.MybatisUtil;

public class UserDaoImpl implements IUserDao {
    @Override
    public List<UserBean> findAllUser() {
        // 获取session
        SqlSession session = MybatisUtil.getsession(true);
        IUserDao dao = session.getMapper(IUserDao.class);
        // 用集合就收,其余跟查询单条结果一致
        List<UserBean> userlist= null;
        try {
            userlist = dao.findAllUser();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            session.close();
        }
        return userlist;
    }
}

小结:查询多条记录跟查询单条记录只有一些细微差别,唯一的区别就是,查询多条结果的要用一个泛型为实体Bean的List集合就是接收就行了。另外要提的一点,如果是用Sqlsession执行那么单条记录用selectOne()方法,会有多条记录就要使用selectList()方法

一对一关系

未完待续。。。

上一篇下一篇

猜你喜欢

热点阅读