ssh 表映射后怎么取出映射表中的数据
   <many-to-one  name="member"  column="mid" class="abk.model.Member"/>
   <many-to-one  name="school"   column="School" class="abk.model.School" />
   <many-to-one name="province"  column="Province" class="abk.model.Province"/>

    这是我的映射

    sb.append(
            "select c1.classid,c1.classname,s2.id,s2.schoolname,p3.id,p3.provincename from classmanage c1,school s2,province p3");
    sb.append(" where 1=1");
    sb.append(" and c1.school=s2.id");
    sb.append(" and c1.province=p3.id");
    sb.append(" order BY p3.provincename");
    System.out.println(sb.toString());
    List<Classmanage> list = (List<Classmanage>) getHibernateTemplate().find(sb.toString());

            这是我的查询

            classmanage is not mapped [select c1.classid,c1.classname,s2.id,s2.schoolname,p3.id,p3.provincename from classmanage c1,school s2,province p3 where 1=1 and c1.school=s2.id and c1.province=p3.id order BY p3.provincename]

            这是我的异常

3个回答

查询语句from后面的类名都需要大写

qq_35568224
qq_35568224 我这里数据查得出来,只是取值的时候有问题
2 年多之前 回复

你的意思是从list集合中取值有问题吗?
如果是这样的话那是因为延迟加载的问题,从你的表能看出来classmanage与school和province之间都是多对一的关系
需要在school和province的映射文件中配置lazy="false"
具体点就是在你的School映射文件中应该有如下(就是school与classmanage之间的映射关系那部分):

........

改成:

........

province同样如此

ToFate_
可惜我是摩羯座 回复qq_35568224: 这倒不需要,具体的话我还是得看代码,不然也没法说清
2 年多之前 回复
qq_35568224
qq_35568224 那大哥怎么配呢...我就是不会配,难道在classmanage配置many-to-one之后还要在相应表中配置one-to-many 吗
2 年多之前 回复

你的意思是从list集合中取值有问题吗?
如果是这样的话那是因为延迟加载的问题,从你的表能看出来classmanage与school和province之间都是多对一的关系
需要在school和province的映射文件中配置lazy="false"
具体点就是在你的School映射文件中应该有如下(就是school与classmanage之间的映射关系那部分):

< set name="classmanages">

........

< /set>

改成:

< set name="classmanages" lazy="false">

........

< /set>

province同样如此

qq_35568224
qq_35568224 回复可惜我是摩羯座: 那个,他取出来是object 怎么办...
2 年多之前 回复
ToFate_
可惜我是摩羯座 回复qq_35568224: 这样我也很纠结啊
2 年多之前 回复
qq_35568224
qq_35568224 回复可惜我是摩羯座: 数据库里吗?数据库里没有外键关系,但是在实体类中有其他三个表,我不会贴代码啊,不然直接给你看了
2 年多之前 回复
ToFate_
可惜我是摩羯座 回复qq_35568224: 看看你的Classmanage表中是否是否有外键关联了其它三张表,再看看你的Classmanage类中的属性与配置文件中的映射是否一一对应
2 年多之前 回复
qq_35568224
qq_35568224 回复可惜我是摩羯座: 我知道那个问题出在哪了,是大小写问题,,,那现在取出来了他又抛异常 [Ljava.lang.Object; cannot be cast to abk.model.Classmanage 这个怎么解决啊
2 年多之前 回复
ToFate_
可惜我是摩羯座 回复qq_35568224: 你的hibernate.cfg.xml文件中有没有引入映射文件?
2 年多之前 回复
qq_35568224
qq_35568224 这样的大哥,他的异常是 classmanage is not mapped 就是找不到映射啊....
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
映射表原理分析与总结
映射表的原理及在大数据上的使用分析与总结。
【SSH快速进阶】——Hibernate继承映射:每个类映射一张表
上文说了每棵继承树映射一张表,本文继续描述让每个类都映射一张表的配置。 场景:与上篇文章场景一样,如下类图,Pig类和Bird类继承Animal类,要让每个类映射一张表,就是让着三个类都分别映射一张表,但同时这三张表也跟对应的三个类似的,有继承关系,如下表所示…… 缺点:查询时需要关联表,效率差;插入时也要执行多个insert语句,适合继承程度不深的情况。 优点:粒度较细,调理清楚,没有冗余。
hive到hbase创建映射表以及添加数据
1.创建映射表 create table CHEN1_19 (NAME String,ID String) row format delimited fields terminated by '|' stored as orc create table hbase_CHEN1_19 (key String,NAME String,ID String) STORED BY 'org.ap
Phoenix映射HBase数据表
1. 说明 安装好phoenix后对于Hbase中已经存在的数据表不会自动进行映射,所以想要再phoenix中操作HBase已有数据表就需要手动进行配置。 2. 创建HBase表 hbase(main):002:0> create 'phoenix','info' 3. 插入数据 hbase(main):004:0> put 'phoenix', 'row001','in
Hive与HBase映射表 实现大数据的增量操作
先说下使用场景 : HIve有Orc表 可以增删改 但是每一个事务执行的速度很慢 不适合于高并发的场景。 我之前mysql同步hadoop 创建了hive事务表 但是效果很差 这里另辟蹊径,将数据存入hbase 很快 建立映射 这样解决了效率问题。 概念 详解: HIve有 内部表 和外部表 针对于HBase来说 外部表 –》HBase已经存在这张表 hive只建立...
hbase的表与phoenix建立映射
一,hbase的表与phoenix建立映射1, 具体步骤如下:(1) 先在hbase上建立表,表名为(PHO)hbase(main):001:0>create 'PHO','KID','INFO'(2), 然后在phoenix上建立相同的表名 (PHO)0: jdbc:phoenix:db1,db2,db3:2181>create table if not exists PHO(id varcha
Hive映射Hbase表
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。 hive与Hbase的整合功能的实现是利用两者本身对外的API接口互相进行通信,相
map 映射表 基本用法
-
Hbase表映射成hive中
Hbase表映射成hive中 一、1.Hive内部表,语句如下 1、hive中建表 CREATE TABLE member( m_id string , address_contry string , address_province string , address_city string , info_age string , info_birthday string ,
映射表
集是一个集合,它可以快速地寻找现有的元素,但是要查看元素,就需要查看的元素的精确副本。这不是一种非常通用的查找方式。通常,我们知道某些键的信息,并想要查找与之相对应的元素。映射表(map)数据结构就是为此设计的。映射表用来存放键值对。如果提供了键就能查找到相应的值。例如,有一张关于员工信息的记录表,键为员工ID,值为Employee对象。 Java 类库为映射表提供了两种通用的实现:HashMa
Hive映射已存在的HBase表
1、首先要确保/usr/lib/hive/lib下HBase的jar包的版本要和实际环境中HBase的版本一致,需要用/usr/lib/hbase/li/目录下得jar包做软连接,如下: ln -s /usr/lib/hbase/lib/hbase-client-1.0.0-cdh5.4.3.jar /usr/lib/hive/lib/hbase-client.jar ln -s /usr
如何在不删除hbase表的前提下删掉其在phoenix中的映射表
DELETE from SYSTEM.CATALOG where TABLE_NAME ='my_test'
141.Oracle数据库SQL开发之 集合——使用映射方法比较嵌套表的内容
141.Oracle数据库SQL开发之 集合——使用映射方法比较嵌套表的内容 欢迎转载,转载请标明出处: 在满足下面3个条件时,两个嵌套表才相等: n  两个嵌套表具有相同的类型 n  两个嵌套表具有相同的行数 n  两个嵌套表的所有元素的值都相同 下面创建一个类型t_address2,包含一个名为get_string的映射函数。 CREATETYPE t_address2 AS
MySql学习笔记--MySql数据库表远程映射
需求背景     现在在做的项目分为7个服务,其中有一个单表服务,对应的数据库有一张表存储的是单表的数据,其他服务用到这张表基本是需要将本服务的表中对应的id转换为对应的name。项目初期没有分库分表,但是项目稳定一版后,架构方面考虑分库分表,这样就涉及到一个服务在开发阶段不能随意连接其他服务的表进行操作,为了解决此问题,我们考虑将单表服务的表远程映射到其他服务的数据库中,这样做,当单表服务的数据...
Mysql使用Federate引擎实现操作本地表映射远程操作表
考虑这样一个场景,存在多台agent系统(每台均拥有自己的数据库)各自做完操作后,将会触发各自数据库的存储过程进行复杂运算,各自完成后均需要向远程某Master机器的数据库的表中擦入一条信息,以通知操作完成。初步设想有两个方案来实现。 在agent系统里面通过java代码调用存储过程,直到存储过程执行完成后,再将执结束信息写入到Master系统的数据库中。通过为每一个agent系统中的数
SQL语句之查找一个表在另一个表上的所有映射(如学生在选课表上的所有映射,即查询选修所有课程的学生姓名)
我们来看一个例子(学生选课表也类似)。 几张表如下: branch(branch name, branch city, assets) customer (customer name, customer street, customer city) loan (loan number, branch name, amount) borrower (customer name, l
c++ map映射表
map&amp;lt;int,int&amp;gt; myMap;    创建一个map后是有初始值的,初始值为0;if(myMap.find(42)!=myMap.end())   //即使myMap里没有42,但这样访问了一次以后,会自动插入一个键42到myMap,值为0要想删掉该键值,就要使用 myMap.erase(42)...
mysql数据库表映射实体生成
文件包含一个工具类,是mysql数据库表生成实体工具类,压缩文件中有相关jar包。目前符合我的日常需要,有缺陷的地方大家一起补充.....欢迎留言,谢谢
oracle 数据库关系映射
关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.关系映射.
Hbase Hive 整合映射
Hbase Hive 整合映射 可使用HQL查询数据 步骤 1,创建Hbase表 2,映射Hive表 步骤一 说明:cf 列簇名,只put了少量测试列 create ‘cofeed_info’,{NAME => ‘cf’, REPLICATION_SCOPE => 1} put ‘cofeed_info’, ‘100001’, ‘cf:id’, ‘101’ put
asp.net mvc 关系数据库表之间的映射
asp.net mvc 关系数据库表之间的映射 EntityFrameWork
java中映射表
HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,其中 HashMap 是 Map 接口的常用实现类,HashSet 是 Set 接口的常用实现类。虽然 HashMap 和 HashSet 实现的接口规范不同,但它们底层的 Hash 存储机制完全一样,甚至 HashSet 本身就采用 HashMap 来实现的。 通过 HashMap、
ETL----从源数据到数据仓库的逻辑数据映射
逻辑数据映射的组成  逻辑数据映射(见下图 )通常用一个表或者电子表格格式来表示,它包括以下特定的组成部分:    目标表名称:数据仓库中出现的物理表名称;目标列名称:数据仓库表中的列名称;    表类型:表示这个表是事实表,维表或者子维表(支节)    SCD(缓慢变化维)类型:对维表,这个部分表示是类型1,类型2或者类型3的缓慢变化维。这个指标对维表中的不同的列可以是不同的。
Phoenix(七)映射HBase数据表
本篇主要介绍如何手动将HBase中的数据表映射到Phoenix。
数据表与简单java转换/数据表与简单java类映射(一对多)
数据表与简单java类映射(一对多)在学习oracle的时候使用过了两张数据表:emp、dept表emp表:empno(员工编号)、ename(员工名)、job、sal(薪金)、comm(佣金)、mgr(上级编号)、deptno(部门编号),hiredate(受雇日期); dept表:deptno(部门编号)、dname(部门名称)、loc(地点).    | - 一个部门有多少个雇员,并且可以输...
Hibernate学习笔记 多表映射
前面说了Hibernate的单表映射,由于是实体类和数据表之间一对一的映射,所以比较简单。现在就来说说多表映射,这需要涉及到多个实体类和数据表之间的关系。因此稍微复杂一点。建立实体类我建立了两个实体类,一个作者类,一个文章类,其他方法都忽略了,就留下了注解。作者类如下:@Entity public class Author { @Id @GeneratedValue(strategy
Python字符串操作集锦之字符串映射表
14、字符串的映射(mapping) 字符串的映射中,包含两个函数maketrans()和translate(),并且通常是这两个函数配合使用 。这两函数都是string中的模块,所以使用前需要导入string包。string.maketrans(from, to) 返回一个256个字符组成的映射表,其中from中的字符被一一对应地转换成to,所以from和to必须是等长的,返回一个映射表。
映射表操作中的常用数组
1.代码 #define calc_clr_min_seted(m) (m&(m-1)) /*置0最小位的1*/ #define calc_set_min_clred(m) (m|(m+1)) /*置1最小位的0*/ const unsigned char cn8s_nearest_seted_in_tbl[256]={/*二进制第一个1所在的位置*/
数据仓库数据清洗之码值映射
一、映射表F_CM_CODE_MAPPING 1. 源系统码值与目标码值映射关系表结构 不建议将源表码值和目标码值分两个表进行关联,设计建议参考F_CM_CODE_MAPPING 这个有问题,需要增加目标描述字段。   2. 源系统码值与目标码值映射关系表生成          2.1 源系统多个码值对应一个目标码值 or 源系统的码值不在码表中保存而在注释中——手工维护映
在映射表中使用enum枚举
最近,公司安排我去参与重构一个ODN项目,其中有一条要求是把现有的仅支持单一公司Box的代码提升为支持多厂家,经过讨论组合指令采用了策略,进行了抽取优化,但是对单一指令却无法抽取,因为各个厂家的数据体不同,相同指令要求的参数也不同,这给我们带来了很大的苦恼。我经过仔细分析业务流程,发现不论哪一个厂家的指令,最简单的情况是命令直接是固定的,最复杂的情况是,本次的命令需要上面好几个命令的结果,这既是多厂
理解mysql_mybatis字段映射表
JDBC Type           Java Type   CHAR                String   VARCHAR             String   LONGVARCHAR         String   NUMERIC             java.math.BigDecimal   DECIMAL             java.math.Big
SSH——hibernate 利用注解实现实体关联映射详解
一、JPA: JPA全称Java Persistence API.JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中实现数据持久化。同时,它还是JCP 组织发布的 Java EE 标准之一,因此任何声称符合 JPA 标准的框架都遵循同样的架构。而Hibernate 从3.2开始,就开始兼容JPA,也就是说,除了通过配置xml实现实体关
Java数据结构基础——集合和映射表
1. 引言 2. 集合 2.1 HashSet 2.2 LinkedHashSet 2.3 TreeSet 3. 比较集合和线性表的性能 4. 映射表 4.1 HashMap 4.2 LinkedHashMap 4.3 TreeMap 5. 总结 1. 引言 集合(set)是一个用于存储和处理无重复元素的高效数据结构。映射表(map)类似于目录,提供了使用键值快速查...
数据库关联映射建表图示(一对多、多对多)
数据库关联映射建表图示(一对多、多对多) ~总结一下数据库的 一对多、多对一、一对一、多对多 关系 以及对应的建表方式~ 关联映射:一对多/多对一 存在最普遍的映射关系,简单来讲就如球员与球队的关系; 一对多:从球队角度来说一个球队拥有多个球员 即为一对多 多对一:从球员角度来说多个球员属于一个球队 即为多对一 数据表间一对多关系如下图:
Hibernate表关系映射之一对多映射
一、基本概述 在表中的一对多,是使用外键关联,通过一张表的一个键另一个表的外键来建立一多关系;而在类中表示为一个类中有一个集合属性包含对方类的很多对象,而在另一个类中,只包含前述类的一个对象,从而实现一对多关系的建立! 而在Hibernate中采用的是Set类型集合,使用和来实现。 对于一对多的映射关系可以分为两种情况:单向映射和双向映射。 单向映射:只能从一方访问到另一方,无法反向访问。
基于第三方Json数据的hive映射表
最近在做第三方数据源的数据的hive表映射,要么得写MR做清洗数据,然后映射Hive表 ,现在使用GitHub上的JsonSerde解析Json数据,映射为Hive表         GitHub源码地址:https://github.com/KunBetter/JsonSerDe           文档地址:https://github.com/rcongiu/Hive-JSON-Se
持久化API(JPA)系列(七)实体关系映射(ORM)之单表映射@IdClass
通过以前的文章,我们了解到@Table、@Column、@Id实现了单表的映射,并且书剑有一个@Id指定的唯一字段。有时我们的数据表也许是有多个主键联合组成的,因此对于单表映射的主键,还可以进行如下两种联合主键映射。 联合主键:使用@IdClass指定外部主键 联合主键:使用@EmbeddedId嵌入外部主键
MyBatis操作数据库——单表映射操作
建立一张表subjects,包含基本信息 subjects.sql 新建 Java project,导入jar包。 配置日志文件,jdbc.properties文件 编写mysql_config.xml 主配置文件。(jdbc连接) 创建subjectMapper.xml文件,并 创建sql查询 <select id="findById" parameterType="java.lang.I
Flask-SQLAlchemy创建模型与表的映射
from flask import Flask from flask_sqlalchemy import SQLAlchemyapp = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///./test.db' db = SQLAlchemy(app)class User(db.Model): id = db.
hibernate实体类与数据表映射的两种方式
1、传统方法是通过XX.hbm.xml映射文件      注意:1)JPA jar包在hibernate3.6之后被放入hibernate-core包中。               2) 2、java5.0以后可以通过注解方式取代XX.hbm.xml映射文件      注意1)需要在Hibernate配置文件中注册该实体类:            2)实体类的属性声明顺序和数
Hibernate表映射关系
1.一对多关系表间关系:身份证表与用户表1.表结构:在“多”的一方即用户表设置外键CREATE TABLE `card` ( `card_number` int(11) DEFAULT NULL, `card_time` datetime DEFAULT NULL, `user_id` int(11) NOT NULL, PRIMARY KEY (`user_id`), CONS
gbk与unicode的映射表
按照Java代码的说明可以找到如下文字:    Code Page 936 (CP936) is the most popular implementation of GBK.    A mapping to Unicode is provided by Microsoft:      http://www.microsoft.com/typography/unicode/936.txt下面的
hibernate 映射文件 当表名或字段名与数据库关键字冲突 该如何解决?
映射文件如下:[html] view plain copy <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
多表关系映射
1、一对一(会用即可) 主表:没有外键 有主键 从表:拥有外键的是从表 先操作从表,再去操作主表 one-to-one ,many-to-one 只是表达多个表之间的关系。 外键:目的是多表连接 主键:目的是唯一标识数据 示例: 一个人对应一个身份证 ,一夫一妻制, 一个萝卜一个坑。。。。 一对一的关系用程序如何描述: 示例:一夫一妻制 Husband.java publi
javascript键值映射
在javascript中,我们经常会用到一些类似java的map结构的数据,现在模拟如下: var orderStateArray = { 'A2A' : '待系统审核', 'A2B' : '等待付款', 'A2C' : '已付款待审核', 'A2D' : '待拆单', 'A2H' : '系统审核异常', 'A2J' : 'COD超额待审核', 'A2
TS科普18 节目映射表PMT
节目映射表提供节目编号与组成它们的节目元之间的映射。此类映射的一个特例称之为“节目定义”。节目映射表是传输流的所有节目定义的全面集成。此表必须以包的形式传输,包的PID 值由编码器选择。若希望,可以使用多个PID 值。该表包含在一个或多个具有以下句法的分段中。它可以被分割占用多个分段。在每个分段中,分段编号字段必须设置为‘0’。分段由program_number 字段标识。
JPA表映射-关联
关于一些jpa和hibernate的一些常见问题:     // ① jpa顾名思义就是Java PersPersistence Api 【Java持久化接口】旨在规范,简化Java对象的的持久化工作 使用jpa持久化对象,并不依赖与一个ORM【Object Relation Mapping】对象关系映射     // 如果抛jpa直接使用hibernate的注解来定义model,会出现问题:
phoenix的配置,及表的简单映射
解压phoenix的对应版本后,将对应的需要的jar包拷贝到相应的位置--将phoenix安装目录下的phoenix-version-client.jar拷贝到hbase的lib目录下--将phoenix安装目录下的lib子目录中的phoenix-core-version.jar拷贝到hbase的lib目录下--将hbase/conf目录下hbase-site文件放到phoenix安装的bin目录...
《Hibernate学习笔记二》:表与实体类的映射方法
Hibernate学习笔记二:表名与实体类名不一致/表中的列名与实体属性名不一致的映射方法在使用Hibernate 中,我们最好尽量使得实体类的名字与表的名字 、实体类的属性名与表的列名尽量相同,这样可以省去很多的麻烦 。但是,在我们的实际项目中,可能会遇到实体类的名字与表的名字不一致 的情况 。当遇到这样情况,我们应该怎么办呢??如果我们使用的是Annotation ,则比较好办。看实际例子,
SSH:Hibernate框架(七种关联关系映射及配置详解)
概念          基本映射是对一个实体进行映射,关联映射就是处理多个实体之间的关系,将关联关系映射到数据库中,所谓的关联关系在对象模型中有一个或多个引用。   分类                                关联关系分为上述七种,但是由于相互之间有各种关系,可以简化,例如:多对一与一对多映射,只是侧重的角度不对而已。
相关热词 c# 时间比天数 c# oracle查询 c# 主动推送 事件 c# java 属性 c# 控制台 窗体 c# 静态类存值 c#矢量作图 c#窗体调用外部程式 c# enum是否合法 c# 如何卸载引用
立即提问