Hibernate处理一个实体映射多张相同结构的数据表--动态映射

LZ在项目中需要处理这样一个业务,每天都有终端设备上传GPS位置信息到服务端,服务端要把GPS位置信息保存在本地,因为每天上传的GPS数据信息会有很多,

所以要把GPS数据按天分别存放在不同的表中,如2013年3月27日上传的GPS数据保存在Disa_GPS_20130327表中,而2013年3月28日上传的GPS数据保存在Disa_GPS_20130328表中,依次类推。这些表的数据结构完全一样,所以LZ想用一个实体去动态映射这些结构相同的表。在网上查了些资料,结果都是需要xml映射文件的,

而LZ用的是hibernate3.x的注解方式实现的映射,当时随便试了下,也没有调通(很惭愧,如果有研究注解方式可以实现的朋友,麻烦共享下,先在这里谢谢了)。所以,又另寻它法。后来在网上又找到了一个通过HQL的基础,SQLQuery实现的动态映射方法,经过LZ实验,终于调通。在此,与各位共享下。

【注】:DIsaGpsdata是实体类,里面要写注解或配置hbm.xml文件。

DisaGpsdata.java:

package com.supermap.earth.server.hibernate.disaster;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
@Entity
@Table(name = "DISA_GPSDATA", schema = "EARTH_DISASTER")
public class DisaGpsdata implements java.io.Serializable {

	private String id;
	private String temId;
	private String earthId;
	private String userId;
	private Double lng;
	private Double lat;
	private Double secretLng;
	private Double secretLat;
	private Date gpsTime;
	private Double gpsDir;
	private Double gpsSpeed;
	
	public DisaGpsdata() {
	}

	public DisaGpsdata(String id, String temId, Double lng, Double lat,
			Double se
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值