MyBatis由浅入深学习总结之二:MyBatis解决Java实体类和数据库表字段不一致方法总结

本文探讨了在MyBatis中如何处理Java实体类字段与数据库表字段不一致的问题,通过字段别名和resultMap的方式进行解决。文中通过实例展示了在Hibernate中使用XML映射和注解的方法,并对比了MyBatis的两种处理方式:SQL查询时使用字段别名和通过resultMap映射。总结了两种MyBatis方法的区别,强调了它们在处理结果集不一致问题上的不同阶段。
摘要由CSDN通过智能技术生成

在此,首先说明一点任何持久性框架都需要解决一个问题,那就是Java实体类的字段一般来说基本上会与数据库表中字段不一致,那么它们是如何解决的呢?咱们以Hibernate和SpringJDBC为例说明一下;

1、Hibernate中一般通过XML映射和注解的方式解决不一致问题,看下面两个简单例子,

注解方式:

@Entity
@Table(name = "ACCOUNT")
public class Account implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue
	private int id;

	@Column(name="fld_number")
	private String number;
	
	@OneToMany(mappedBy="account")
	private Set<Client> clients;
	
	private double balance;

}
XML映射文件配置方式:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

    <class name="org.hibernate.test.domain.Account" table="ACCOUNT" lazy="false">
        <id name="id" column="ACCOUNT_ID">
            <generator class="native"/>
        </id>

        <many-to-one name="person" class="org.hibernate.test.domain.Person" cascade="save-update,lock"
                     column="person_id"
                     unique="true"
                     not-null="true"/>
    </class>

</hibernate-mapping>
2、Spring
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值