mybatis 代码生成器及多表联查的细节

本文详细介绍了在使用MyBatis代码生成器时如何正确设置布尔类型字段,以及如何处理日期和时间类型的字段转换为JSON格式传送到前端的方法。此外,还深入探讨了在进行多表联查时,如何通过使用别名和前缀来避免字段冲突,确保数据正确映射到实体类中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在使用mybatis代码生成器时,若生成的字段要为布尔类型,则在设计表时,将字段属性设置为tinyint   长度设为1  这样 生成的domain中的 相应字段类型为布尔类型

 

如数据库中的字段类型为date或者datetime类型    该如何将其转成json类型传到前端?

  在实体类的字段上加上  @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")  即可

 

在mybatis多表联查,假设两个表中都有  id  这个字段 且未加区分,那么在查询时要给对应的字段起别名(可以在前面加x_),并且在封装的结果类型,可以设置  cloumsprefix  x_  及在关联对象的字段前加上前缀  

 <select id="selectAll" resultMap="BaseResultMap" >
    select e.id, e.username, e.inputtime, e.tel, e.email, e.state, e.admin,
    d.id as d_id,
    d.`name` as d_name
    from employee as e LEFT JOIN department as d on e.dep_id=d.id
  </select>
 <resultMap id="BaseResultMap" type="com.itlike.domain.Employee" >
    <id column="id" property="id" jdbcType="BIGINT" />
    <result column="username" property="username" jdbcType="VARCHAR" />
    <result column="inputtime" property="inputtime" jdbcType="TIMESTAMP" />
    <result column="tel" property="tel" jdbcType="VARCHAR" />
    <result column="email" property="email" jdbcType="VARCHAR" />
    <result column="state" property="state" jdbcType="BIT" />
    <result column="admin" property="admin" jdbcType="BIT" />
    <!--加上前缀   会自动的把数据库中的  id  和  name  给加上d_
    即将数据库中的   d_name  赋值给name    d_id   赋值给id
    -->
    <association property="department" javaType="com.itlike.domain.Department" columnPrefix="d_">
      <result property="id" column="id"/>
      <result property="name" column="name"/>
    </association>
  </resultMap>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值