【发布时间】:2011-11-23 16:33:29
【问题描述】:
一般我想知道SQL select在底层是如何实现的,看起来是这样的
他们使用的算法接近于 O(1)..... 在 Java 中你只能通过使用来实现这一点
hashmaps,我想知道他们是怎么做到的
示例:
如果我有一组学生,一组班级,为了选择任何一个学生属于哪个班级
或任何班级拥有哪组学生,我会设计一个关系数据库,其中 3 个表:
学生表、班级表、关系表
应该代表良好的多对多关系
但是,如果我不想使用 SQL、JDBC,请创建和设计表
我怎样才能在纯java中实现这个
我想要类似的东西
List<Student> getStudentsByClass(String className)
或
List<Class> getClassesByStudent(String StudentName)
理想情况下,我将有一个 hashMap,使用唯一的 studentID 作为键,实际的 studentObject 作为值 另一个 hasMap 使用 classID 作为键,classObject 作为值
然后一个关系 ArrayList 包含所有关系对象,在关系对象内你有 2 个文件,classID 和 studentID
问题是我不想每次搜索时都循环遍历关系 ArrayList
我知道对象上有一个比较方法,我可以覆盖它,只帮助你对对象进行排序 它对选择没有多大帮助不是吗?
有一个链接,我什么都明白,但不是选择位,请任何人给点提示!
http://www.javaworld.com/javaworld/jw-11-2004/jw-1122-select.html?page=3
【问题讨论】:
标签: java database design-patterns database-design