02 mybatis一对一
发布日期:2022-03-30 20:19:35 浏览次数:27 分类:博客文章

本文共 3089 字,大约阅读时间需要 10 分钟。

本文将阐述mybatis中的表是一对一关系的情况下如何完成查询操作。

1、环境约束

  • win10 64位操作系统
  • idea2018.1.5
  • jdk-8u162-windows-x64
  • mybatis3.2.8
  • mysql 6.5

2、前提约束

  • 完成idea中创建mybatis项目

3、操作步骤

  • 创建一个用户表和一个登录表
create table t_user(id int, name varchar(20));insert into t_user(id,name) values(1,'ali');insert into t_user(id,name) values(2,'zhangli');create table t_login(id int, username varchar(20), password varvhar(20), userid int);insert into t_login(id,username,password,userid) values(1,'aliuser','alipass',1);insert into t_login(id,username,password,userid) values(2,'zhangliuser','zhanglipass',2);
  • 创建两张表对应的实体类
    User.java
package net.wanho.entity;import java.io.Serializable;public class User implements Serializable {    private int id;    private String name;    public User() {    }    public User(String name)    {        this.name = name;    }    public User(int id, String name) {        this.id = id;        this.name = name;    }    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    @Override    public String toString() {        return "User{" +                "id=" + id +                ", name='" + name + '\'' +                '}';    }}

Login.java

package net.wanho.entity;import java.io.Serializable;public class Login implements Serializable {    private int id;    private String username;    private String password;    private User user;    public Login(int id, String username, String password) {        this.id = id;        this.username = username;        this.password = password;    }    public Login() {    }    public User getUser() {        return user;    }    public void setUser(User user) {        this.user = user;    }    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }    @Override    public String toString() {        return "Login{" +                "id=" + id +                ", username='" + username + '\'' +                ", password='" + password + '\'' +                '}';    }}
  • 在UserMapper.java中新增一个查询方法
List
selectLogin();
  • 在UserMapper.xml中新增标签
    
  • 测试
//关键代码String resource ="mybatis-config.xml";Reader reader = Resources.getResourceAsReader(resource);SqlSessionFactory sqlSessionFactory =new SqlSessionFactoryBuilder().build(reader);SqlSession sqlSession = sqlSessionFactory.openSession();UserMapper userMapper = sqlSession.getMapper(UserMapper.class);List
loginList = userMapper.selectLogin();

通过单步调试,便能查看到loginList包含t_login以及t_user中的数据。

转载地址:https://www.cnblogs.com/alichengxuyuan/p/12554757.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:07 mybatis多对多
下一篇:03 mybatis延迟加载

发表评论

最新留言

不错!
[***.144.177.141]2024年04月20日 19时21分54秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章