0 0

问个关于jdbc的问题5

描述如下:
有一个教室表,一个学生表,和一个椅子表,教室和学生是一对多的关系,教室和椅子也是一对多的关系

现数据库中有多个教室,要查出带有10个椅子的教室和学生的列表,得到的是一个List<Classroom>其中每个classroom里边还有一个List<Student>。



问题补充:
sy197661944 写道
假设
椅子表:
<chairTable>
chairId : 椅子的ID,主键
classId : 教室的ID,外键
---------------------------
教室表:
<classTable>
classId : 教室的ID,主键
--------------------------
学生表:
<studentTable>
studentId: 学生的ID,主键
classId : 教室的ID,外键
---------------------------

sql:

select classId from classTable clt join
(
select count(1) as c , classId from chairTable group classId
)  cht
on clt.classId = cht.classId
where cht.c = 10


这样就查出了,椅子为10把的教室,关联的学生的list对象取得是靠持久层代码做到的,
比如hibernate,大概是这样滴..........


就是要脱离hibernate实现hibernate这个功能。。

问题补充:
sy197661944 写道
引用

就是要脱离hibernate实现hibernate这个功能。。


那就自己写呗,
classBean.java
String classId;
List<StudentBean> ;

根据上面的SQL可以拿到List<ClassId>(即有10把椅子的教室的list),然后遍历一下,每个classid都去查一下

queryForList("select studentId from studentTable where classId = ?");
得到某个教室的学生的list了吧,把这个list到那个classBean里,多个classBean,不就是你要的List<ClassBean>了?

这样不行的,我想用一个sql 来实现,遍历会连接很多次数据库
这个问题我已经解决了,不过还是要谢谢你啊
DAO 
2011年10月19日 10:16

5个答案 按时间排序 按投票排序

0 0

引用

我想用一个sql 来实现?


那就是把符合条件的student所有记录取出来,放到一个list里,然后再去拆分list,创造List<classBean> ?

有别的办法么?告诉下.

2011年10月19日 18:44
0 0

引用

就是要脱离hibernate实现hibernate这个功能。。


那就自己写呗,
classBean.java
String classId;
List<StudentBean> ;

根据上面的SQL可以拿到List<ClassId>(即有10把椅子的教室的list),然后遍历一下,每个classid都去查一下

queryForList("select studentId from studentTable where classId = ?");
得到某个教室的学生的list了吧,把这个list到那个classBean里,多个classBean,不就是你要的List<ClassBean>了?

2011年10月19日 14:01
0 0

假设
椅子表:
<chairTable>
chairId : 椅子的ID,主键
classId : 教室的ID,外键
---------------------------
教室表:
<classTable>
classId : 教室的ID,主键
--------------------------
学生表:
<studentTable>
studentId: 学生的ID,主键
classId : 教室的ID,外键
---------------------------

sql:

select classId from classTable clt join
(
select count(1) as c , classId from chairTable group classId
)  cht
on clt.classId = cht.classId
where cht.c = 10


这样就查出了,椅子为10把的教室,关联的学生的list对象取得是靠持久层代码做到的,
比如hibernate,大概是这样滴..........

2011年10月19日 12:23
0 0

椅子和学生也是多对一?

2011年10月19日 11:48
0 0

问题在哪里?

2011年10月19日 11:32

相关推荐

    基于JDBC的学生信息管理系统

    在JDBC操作中,可能会遇到如网络问题、SQL语法错误或数据库无响应等情况,通过try-catch-finally结构捕获并处理这些异常,保证系统的稳定运行。 8. **数据库设计**: 学生信息管理系统的数据库设计可能包括学生表...

    JAVA的JDBC详解,面试必问

    通过实例代码,让你认识JDBC,简单实用,面试必问 * Statement是一个接口,它表示语句对象。 * executeQuery():只能执行查询语句(DQL),返回ResultSet对象,即结果集对象。 * executeUpdate():执行DML语句...

    JDBC访问各种数据库的完整步骤

    把常用的一些数据库与JDBC连接的方式归纳到一起。方便大家使用。文档中提到的常用的一些数据库包括(Oracle8/8i/9iO、SQL Server2000/2005、DB2、Informix、Sybase、MySQL、PostgreSQL、)

    kafka-connect-jdbc:Kafka Connect连接器,用于兼容JDBC的数据库

    Kafka Connect JDBC连接器 kafka-connect-jdbc是一个用于与任何兼容JDBC的数据库之间...常问问题在此处参考有关Kafka Connect JDBC的常见问题-https: 贡献源代码: : 问题追踪器: : 执照该项目已获得Apache 2许可。

    fuzhouligong-jdbc-kongzhitai-wangshanggoushu

    【标题】"fuzhouligong-jdbc-kongzhitai-wangshanggoushu" 暗示了这是一个关于福州理工学院数据库连接(JDBC)控制台在线管理平台的项目。在这个平台上,用户可以远程通过网络进行数据库的相关操作。 【描述】虽然...

    Java笔试面试资料,Java基础,servlet,jdbc,ssh框架,数据库。以及综合面试题,部分学长总结的面试题和经验。

    数据库的基础知识点,常被问到的问题。JavaEE的知识点,包括servlet,jdbc,js,ssh框架的基础,原理。 收集总结了许多学长面试不同公司时面到的实际面试题。以及分享了回答问题的经验。 自己在去年10月份校招时,...

    ruzhouligong-jdbc-kongzhitai-wangshanggoushu

    kongzhitai-wangshanggoushu”和描述“ruzhouligong_jdbc_kongzhitai_wangshanggoushu”似乎涉及了如 ZhouLiGong(可能是一个数据库管理工具或框架)与 JDBC(Java Database Connectivity)的结合,以及一个关于...

    用JDBC访问ORACLE数据库 关于commit 增快效率 大数据 等的整理

    1、问:用JDBC访问ORACLE数据库,做DELETE操作,能用JAVA多线程实现吗? ORACLE服务器要怎么配?(以下答案来自网络,仅供参考)  答: Oracle有自己的锁机制。算你开100条线,它还是一条一条删除。不能同时删除多...

    JAVA笔试面试资料JDBC HTTP、JSP、Servlet、Struts面试题汇总资料.zip

    225道Java面试题 学会了Java面试随你问.docx Ant和Maven的作用是什么?两者之间功能、特点有哪些区别?.docx Java初级程序员面试必备的基础知识总结.docx Java基础、Java集合、多线程、JDBC、HTTP、JSP、Servlet、...

    三大框架常问问题

    ### 三大框架常问问题详解 #### 一、Hibernate 原理及使用原因 **原理:** 1. **读取并解析配置文件**:在应用程序启动时,Hibernate会读取`hibernate.cfg.xml`配置文件,该文件定义了Hibernate连接数据库所需的...

    java面试时候经常会问的一些问题.doc

    Java 面试中常见的问题可以分为多个方面,包括 Java 基础知识、Web 开发、框架应用、数据库交互等。以下是对给定文件中提到的问题的解析和知识点总结。 Java 基础知识 1. 如何把一段逗号分割的字符串转换成一个...

    面试SSH常问问题及java面试的一些常问问题

    根据给定文件的信息,我们可以总结出以下几个主要的知识点: ### 1. Struts2 的拦截器(Interceptor)机制 在Struts2框架中,拦截器是处理请求的关键组件之一,可以用于实现诸如权限控制、日志记录等功能。下面...

    Java期末实验程序设计-运用Java swing、socket网络编程、JDBC等实现的Java简易聊天软件+实验报告+ppt

    不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的大作业,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! 1、该资源内项目代码都经过测试运行成功,功能ok的...

    vfp160问全套电子资料

    【标题】"VFP160问全套电子资料"是一个针对初学者的Visual FoxPro(VFP)学习资源集合,涵盖了160个常见的问题及其解答。Visual FoxPro是微软公司开发的一款数据库管理系统,它在早期的数据库开发领域中占有重要地位...

    J2EE常见应用性能问题

    - **定位**:监测JDBC调用,检查具体SQL语句。 - **建议**:从SQL语句入手,使用数据库监控工具进一步分析,必要时优化SQL语句或调整数据库结构。 #### 四、总结 通过上述分析,我们可以看出,J2EE应用性能问题...

    Oracle常用傻瓜问题1000问

    以下是一些关于Oracle常用问题及基础知识的详细说明: 1. **Oracle基础工具简介**: Oracle提供了一系列基础管理工具,如SQL*Plus、企业管理器(EM)、数据泵(Data Pump)、SQL Developer等。SQL*Plus是最基础的...

    Java程序员面试宝典视频课程之JDBC(十七)

    Java程序员在面试中,JDBC(Java Database Connectivity)是一个经常被问到的重要知识点。JDBC是Java语言中用来规范客户端程序如何访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。对于Java...

    西电计科数据库大作业-实验室预约管理系统,基于Java+jdbc连接数据库+源代码+报告

    西电计科数据库大作业-实验室预约管理系统,基于Java+jdbc连接数据库+源代码+报告 - 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均...

    Java/J2EE面试400问 英文版

    本书《Java/J2EE面试400问 英文版》是一本针对Java和Java Enterprise Edition(J2EE)面试问题的英文资料集,由K.Arulkumaran和A.Sivayini编写。该书旨在帮助初、中级Java程序员准备面试,涵盖了Java/J2EE的核心概念...

Global site tag (gtag.js) - Google Analytics