集合用于弥补数组的缺点(定长),用于存储多个数据,并可以以变长的方式进行读写访问
Java中的集合有2大类:
Collection 接口 用于存储层次结构的数据类型
List 接口 列表 可以存储重复的数据并按照写入的顺序连续存储
ArrayList 动态数组,底层通过Object[]来实现存储的
LinkedList 链表集合,底层以链表结构描述数据
Set 接口 不能存储重复的数据,写入的数据是无序排列
Map 接口 用于存储键值结构的数据类型,键用于唯一标识每一个值的
ArrayList在构建实例时,底层将默认创建一个长度为10的Object数组: new Object[10]
当集合中的元素超过最大长度时,集合会重新创建一个新的数组,长度为当前数组长度的1.5倍,通过算法将原数组的值复制到新的数组中
ArrayList的特点:查询有着优异的性能,但是在执行新增存在性能上的下降,执行删除性能较差
LinkedList的特点:执行增删性能优异,但是在执行查询的时候性能较差,越靠近链表首位的元素查询响应时间就越短
DAO Database Access Object 数据访问对象
将数据对象常用的访问方法(增删改查)封装在指定的对象中,该对象就称为DAO对象
DAO对象是数据层构建的基础,由业务层对象进行调用
DAO中定义的数据访问方法和业务无关
DAO设计模式主要分为三层:
显示层:主要使用JSP/Servlet进行页面效果的显示
业务层:(Business Object,数据对象)会将多个原子性的DAO操作进行组合,组合成一个完整的业务逻辑。
数据层:(DAO,Data Access Object,数据库访问对象)提供多个原子性的DAO操作,例如:增、删、改、查,都是原子性操作
假设有DAO_A 和 DAO_B,在两个DAO对象中分别new了Database实例对象
如果DAO_A更改了用户数据,那么在DAO_B可以访问到修改后的用户数据吗?
本文介绍了Java集合用于弥补数组定长缺点,有Collection和Map两大类,如List的ArrayList、LinkedList,Set等,还说明了其特点。同时阐述了DAO设计模式,将数据访问方法封装在DAO对象,分为显示层、业务层和数据层,并提出DAO对象数据访问的疑问。
5万+

被折叠的 条评论
为什么被折叠?



