栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

没有基础表的休眠实体

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

没有基础表的休眠实体

我们一直在做这种事情-这是我们的做事方式:

  1. 定义一个简单的类似于bean的对象来表示报告中的每一行输出:

    public class CityStateRevenueReport {private String mId;private String mState;private String mCity;private Double mRevenue;public String getId() { return mId; }public void setId(String i) { mId = i; }public String getState() { return mState; }public void setState(String s) { mState = s; }public String getCity() { return mCity; }public void setCity(String c) { mCity = c; }public Double getReveneue() { return mRevenue; }public void setRevneue(Double d) { mRevenue = d; }

    }

  2. 定义一个hibernate映射文件CityStateRevneueReport.hbm.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&quot;>    <hibernate-mapping>        <class entity-name="CityStateRevenueReport"> <id name="Id" type="java.lang.String" column="report_id">     <generator  /> </id> <property name="city" type="string" column="city" /> <property name="state" type="string" column="state" /> <property name="revenue" type="double" column="revenue" />        </class>        <sql-query name="runReport"> <![CDATA[  SELECt {r.*} FROM      (select some_id_value as report_id,   state_abbreviation as state,   city_name as city,   dollar_amount as revenue         from -- tables, joins, other SQL insanity       ) r ]]> <return alias="r"  />        </sql-query>    </hibernate-mapping>
  1. 然后运行查询并填充实例:
    public List<CityStateRevenueReport> runReport() {List<CityStateRevenueReport> reports =    new ArrayList<CityStateRevenueReport>();List<HashMap> maps = session.getNamedQuery("runReport").list()for ( HashMap map : results ) {    CityStateRevenueReport report = new CityStateRevenueReport();    report.setState(map.get("state"));    report.setCity(map.get("city"));    report.setRevenue(Double.parseDouble(map.get("revenue"));    reports.add(report);}return reports;

    }



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/412923.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号