欢迎来到天天文库
浏览记录
ID:47105203
大小:56.50 KB
页数:7页
时间:2019-08-04
《hibernate集合映射》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、hibernate 集合映射Java中集合类Set、List和Map的区别Java中的集合包括三大类,它们是Set、List和Map,它们都处于java.util包中,Set、List和Map都是接口,它们有各自的实现类。Set的实现类主要有HashSet和TreeSet,List的实现类主要有ArrayList,Map的实现类主要有HashMap和TreeMap。那么它们有什么区别呢?Set中的对象不按特定方式排序,并且没有重复对象。但它的有些实现类能对集合中的对象按特定方式排序,例如Tree
2、Set类,它可以按照默认排序,也可以通过实现java.util.Comparator接口来自定义排序方式。List中的对象按照索引位置排序,可以有重复对象,允许按照对象在集合中的索引位置检索对象,如通过list.get(i)方式来获得List集合中的元素。Map中的每一个元素包含一个键对象和值对象,它们成对出现。键对象不能重复,值对象可以重复。Set中不能有重复对象,那么它是如何判断要加入到集合中的对象是否重复呢?当要加入一个对象到Set集合中时,会先调用该对象的hashcode()
3、方法,根据hashcode来确定该对象应该放在哪个内存地址上。如果计算出的内存地址中已经放入了对象,那说明这两个对象相同,就不会将这个对象加入到集合中。如果计算出的内存地址中没有放入对象,则调用该对象的equals()方法,把它与集合中每一个对象进行比较,看这两个对象是否相同。如果相同,则不加入这个对象到Set集合中。如果不同则加入该对象。packagecom.jonsion.hibernate;importjava.util.List;importjava.util.Map;importjav
4、a.util.Set;publicclassCollectionMapping{privateintid;privateStringname;privateSetsetValue;privateString[]stringValue;privateListlistValue;privateMapmapValue;publicintgetId(){returnid;}publicvoidsetId(intid){this.id=id;}publicStringgetName(){returnnam
5、e;}publicvoidsetName(Stringname){this.name=name;}publicSetgetSetValue(){returnsetValue;}publicvoidsetSetValue(SetsetValue){this.setValue=setValue;}publicString[]getStringValue(){returnstringValue;}publicvoidsetStringValue(String[]stringValue){this.st
6、ringValue=stringValue;}publicListgetListValue(){returnlistValue;}publicvoidsetListValue(ListlistValue){this.listValue=listValue;}publicMapgetMapValue(){returnmapValue;}publicvoidsetMapValue(MapmapValue){this.mapValue=mapValue;}}t_CollectionMappingidn
7、ame1xxxt_set_valuesset_idset_value1a1bt_list_valuelist_idlist_valuelist_index1c01d1t_array_valuearray_idarray_valuearray_index1e01f1t_map_valuemap_idmap_keymap_value1k1v11k2v2
8、nateMappingDTD3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
此文档下载收益归作者所有