3)应用框架层
应用程序框架层是我们从事Android开发的基础,这一层主要提供了构建应用程序时可能用到的各种API,很多核心应用程序也是通过这一层来实现其核心功能的[4],开发者也可以通过使用这些API来构建自己的应用程序,也可以通过继承而实现个性化的拓展。
4)应用层
Android平台不仅仅是操作系统,也包含了许多应用程序,比如系统自带的联系人、短信等程序,这些应用程序都是 用Java语言编写的[5],所有安装在手机上的应用程序都属于这一层。
图2。1 Android基本框架
2。1。3 Android四大组件
1)Activity
Activity是Android程序与用户交互的窗口,一般称之为“活动”。从视觉效果上来看,一个Activity通常就是一个单独的屏幕,它可以显示一些控件并监听这些控件的事件[6]。从内部逻辑来看,Activity为了保持各个界面的状态,不仅要做一些持久化的事情,还要对一些跳转逻辑和生命周期进行妥善管理。
2)Service
Service是不和用户交互应用组件,它和Activity在概念上相对来说是比较接近的,都是封装一个完整的功能逻辑,在一段不定的时间运行在后台,接受上层指令,完成相关事务的模块。Service与其他的组件一样运行在主线程中,但是如果需要在service中进行耗时操作则要在子线程中实现。
3)Broadcast Receiver
Broadcast Receiver 用于异步接收广播Intent,由于没有提供可视化界面来显示广播信息,所以它可以将接受的消息经过一些简单的处理后将其转换成一条Notification,可以使用Notification来实现可视化的界面。Broadcast Receiver 分为正常广播(Normal broadcasts)和有序广播Ordered broadcasts)。
4)Content Provider
Content Provider主要用于对外共享数据,提供第三方应用数据的访问方案。可以派生ContentProvider类,把应用中的数据共享给其他应用,像数据库一样进行选择排序,向外提供统一的接口模型,其他应用可以通过ContentProvider对指定应用中的数据进行操作,简化了上层应用,为整合数据提供了更快捷的方案。
2。2 J2EE
2。2。1 J2EE技术
J2EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构[7]。J2EE技术的基础就是核心Java平台或Java2平台的标准版,J2EE不仅巩固了标准版中的许多优点[8],例如"编写一次、随处运行"的特性、方便存取数据库的JDBC API、CORBA技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对 EJB(Enterprise Java Beans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构[9]。
2。2。1 SSM框架
由于J2EE结构复杂多层,因此一些大型的J2EE项目需要运用框架来控制软件的质量[10]。目前主流的框架技术有:基于MVC模式的Struts框架、对象关系映射框架Hibernate/MyBatis、基于AOP和IoC模式的Spring框架等[11]。
1)Struts2
Struts2是一个在WebWork基础上实现的MVC框架,主要分为模型(Model)、视图(Viewer)和控制器(Controller)三部分,负责控制表现逻辑层与业务逻辑层的交互,调用业务逻辑层,并将数据返回给表现层作组织表现,实现了表现逻辑与业务逻辑的解耦[12],提高了系统的可维护性、重用性和可扩展性。论文网