目 录
本科生毕业设计论文 1
1 前言 1
2 相关技术介绍 3
2.1 Android系统介绍 3
2.1.1 开放性 3
2.1.2厂商支持 3
2.2 Java语言 3
2.3 Afinal框架 4
2.4 MVC框架 4
2.5 Mysql数据库 6
2.6 开发工具 7
3 可行性分析 8
3.1 经济可行性 8
3.2 技术可行性 8
3.3 操作可行性 9
4 需求分析 10
4.1 业务流分析 13
4.2 数据流分析 15
4.3 数据字典 16
4.5 数据库逻辑结构设计 19
5 App的具体实现 22
5.1预期结果 22
5.2 系统的实现 22
5.2.1 服务端管理员登陆 22
5.2.2 注册用户管理 23
5.2.3 招聘信息管理 24
5.2.4 求职信息管理 25
5.2.5 手机端注册用户登录 25
5.2.6 企业用户主界面 27
5.2.7 招聘信息 28
5.2.8 求职信息 29
5.2.9 我的招聘 29
5.2.10 个人用户主界面 31
5.2.11 我的求职 32
5.2.12 我的收藏 33
6 结 论 34
致 谢 35
参 考 文 献 36
4 需求分析
进入90年代以来,计算机系统的发展出现两个显著的特点:计算机系统由封闭系统走向开放系统;计算机系统由集中式系统向分布式系统过渡。客户机 /服务器 (Client/ Server)模式和 Intrant(Brower/ server)就是这两种趋势的代表。
(1) Client/Server模式及其特点
计算机技术的飞速发展使得计算机系统功能越来越强,体积越来越小,价格也越来越便宜。与此同时,网络技术也日臻完善,特别是局域网的广泛应用,使用户能跨越空间的限制,实现资源共享。这些因素都促进计算机系统向分布式系统过渡,客户机/服务器模式正好满足这种需要。
客户机/服务器技术的基本原理就是把数据处理与应用程序分开,分别交给数据库(server)和工作站(client)执行。数据库服务器上的数据仅需一次性存贮后可以被很多不同的应用软件存取。数据库服务器处理的仅仅是数据请求,并将所请求的数据(而非整个文件)传送给应用程序。因此,对数据库服务器来说,它的功能主要是:维护数据的完整性和安全性,错误恢复以及改善用户并发存取和修改数据。而客户机就集中在用户和应用程序之间的交互性作业。与其它类型的系统比较,Client/Server方式主要有以下一些特点:
①具有更高的效率。
它通过一种有效的任务分割,使服务器和工作站各司其职,极大地提高了整个计算机系统的性能,同样的设备,运用不同的组合方式,就会得到完全不同的效果。同时,由于大部分数据处理工作都转给了数据库服务器,网络上传输的主要是数据请求和少量的特定数据,因此网络拥挤状况也得到很大的改善。
②具有更灵活的扩展性。
这种方式为用户的设备更新提供了便利的途径。因为系统的功能被一分为二,从理论上讲,当基本的软、硬件设备更新时,如果不改变服务器的配置,就不会对前端产生任何影响。对用户的应用开发和培训方面的投资也进行了最大程度的保护。
③工作站具有更大的独立性。
用户不必局限于一种类型的系统和平台。在一个以SQL Server为基础的客户机/服务器系统中,其工作站可以是IBM兼容的PC机,Machintosh,Unix工作站或它们的任意组合。此外,它们可以运行若干种操作系统中的任意一种,如MS-DOS或PC- DOS,Microsoft windows,IBMOS/2或 Apple System7。这种工作站的独立性的必然结果是应用程序的独立性,因为各种工作站并不都需要去使用相同的数据库管理系统应用软件,用户可以继续使用他所熟悉的软件去访问数据库。
④数据具有更高的安全性。
因为所有的数据处理工作都交给了数据库管理系统,它可以提供保护数据的任何服务,诸如加密文件的存储,访问数据库时的实时磁带备份,磁盘镜象等等。它还可以提供某种类型的事务处理,去保持对数据库修改的跟踪和纠正服务器崩溃情况下所出的问题。客户机/服务器技术的出现对信息技术具有巨大的影响,它促进了分布式系统的发展,为异构系统间的互连和互操作提供了良好的途径,又更好地满足联机事务处理系统的需要。目前因特网上的网站大多采用这种方式未组建计算机系统。
但是,在C/S结构中应用系统被一分为二,前台客户机用于完成用户的交互任务,后台服务器负责数据处理。C/S结构是基于局域网环境的,具有较强的数据操纵和事务处理能力,对数据的安全性和完整性要求较高。但存在封闭性强,兼容性差,扩展性差,升级及维护性差的缺陷。
(2)Brower/Server模式及其特点
近年来,互联网迅猛发展,基于图形化的网络测览器的开发,更加推动了环球信息网的发展。随着 Internet用户数的迅速增加,TCP/IP协议已被各计算机与网络厂商以及广大用户普遍接受。同时各单位内部局域网普遍应用,它们都想与 Internet连接以获得更多的资源来满足其经营和发展的需要。从Client/ Server到Brower/Server已成为一种必然的趋势。Brower/Server的基本思想是在内部网络上采用Internet的TCP/IP作为通讯协议,并以Internet的 Web模型作为标准平台,通过简单的浏览界面,方便地提供电子邮件,文件传输,电子公告和新闻数据查询等服务,还可以通过防火墙或代理服务器等方式与Intrnet连接以实现企业内部网上的用户对Internet进行浏览查询,同时对外提供信息服务。主要由三部分组成:浏览器,WWW服务器和后台参数据库服务器。浏览器是一个标准的客户端应用软件,为各种操作系统提供统一的操作界面;WWW服务器既可作测览服务器,也可用作应用服务器:作为浏览服务器时,用来存储HTML文件,并通过HTTP协议在浏览器和服务器之间的连接,供用户浏览;作为应用服务器时,它存储可执行的应用程序,并嵌套HTML文件,由用户在客户机上启动,在服务器上执行,并通过标准的通用网关接口程序(CGI)或各厂商提供的专用API访问后台数据库运行结果,再通过浏览器输出,后台数据库则用来存取数据信息。这种方式具有如下的基本特征:
①以目标为中心,实现各类信息的包容与广泛的信息共享。因为它突破传统结构的限制,人们可以轻易地以共同的兴趣,共同的利益,共同的范围,共同的工作目标为中心组织信息交流,实现广泛的信息共享。信息的提供者和使用者融为一体。
②技术的开放性它所基于的标准是开放的,非专用的,是经过标准化组织制定的。以Web为核心的技术构成了与平台无关的统一而简单的交流方式。
③较低的管理成本客户机/服务器模式中,开发人员必须处理多种平台,每个平台上有不同的软件和文件,必须在每一台客户机上进行维护和升级,需要较高的成本。Web应用具有较低维护费用,允许在中心服务器上安装应用程序,需要时可将它下载到客户机,管理费用低。另外由于这种技术简明易用,培训费用也很低。
④自我服务。
每个人都在这种信息系统上各取所需,无需他人帮助说明或解释,能够实现客户化的自我服务。
在B/S结构中以WEB为中心,基于TCP协议和HTTP协议,改变了传统C/S结构下的客户机/服务器的二层结构,形成客户机/应用服务器/数据服务器的三层结构。客户端通过浏览器发出WEB的HTTP请求,有WEB服务器接受客户请求,通过接口访问后台数据库服务器,数据库服务器处理查询请求,并将结果返回WEB服务器,最后由WEB服务器将结果转化为HTML文档及各种脚本传回客户端浏览器。B/S结构大大减轻了客户端的负担。由于基于TCP/IP协议和HTTP协议,很好的解决了跨平台问题,系统的开放性,通用性强,扩展性强,易于维护。但当HTML文档量大,将导致数据的传输效率降低。同时HTML文档难以加密,安全性较差。
(3)本系统的开发模式及其特点
管理信息系统的结构经历了主机结构,文件服务器结构,C/S结构,B/S结构。随着计算机技术,网络技术,数据库技术的发展,基于internet的信息系统已成为发展趋势。本系统拟采用基于校园网的C/S和B/S混合结构。
由于C/S结构和B/S结构各自的优越性,为了充分利用两者的优点,并克服各自的缺点,可采用C/S和B/S混合结构。数据处理部门可直接访问数据库服务器,和数据库服务器建立直接通信,构成C/S结构。一般用户通过局域网连接到WEB服务器,间接访问数据库服务器,构成了B/S结构。这种结构将C/S和B/S结构融为一体,即发挥了C/S结构事务处理能力强,安全性,有效性的特点,又能充分利用B/S结构分布时,易扩充,开放式。通用性的特点,两者的融合具有更大的优势。
网络技术的发展和国际互联网在全球的开通,改变了人类的生活、工作和学习方式,它甚至可以改变我们的思维方式,并能为我们带来知识、信息、各种机会和欢乐。毕业生面临就业,现在已逐渐开始在网络上投简历,找工作,所以设想设计一个学校,学生,企事业单位可以双向选择并沟通的平台,以给毕业生更多的就业机会。
4.1 业务流分析
就业网站工作流程为:系统启动并进入系统首页界面,在页面用户登录栏进行登录。所有用户都可以浏览系统主页面。通过权限判断,学生只能浏览岗位信息、招聘工信息、新闻动态、系统公告等信息,以及进行留言。管理员可以进行系统后台的所有操作,包括管理上述信息及系统管理员帐号管理、数据备份及数据恢复。
本系统的业务流程图如图2-1所示:
本系统是利用现代化的计算机网络技术将传统就业信息宣传方式整合,按照实践过程设计完成的。同时完善服务,初步设计一个在线宣传政务事务信息的平台以利于学生进行相关的事务操作。为了使系统在各项管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下系统开发目标:
(1)操作简单、界面友好:完全控件式的页面布局,使得信息的录入工作更简便。
(2)即时可见:对信息的处理(包括添加、修改、删除)将立即在对应的版块显示出来,达到"即时发布、即时见效"的功能。
(3)功能完善:不仅包括常见系统的信息管理的各个方面:信息录入、浏览、删除、修改、查询等各个方面,完整地实现了系统对即时信息的管理要求。而且,还能进行上传下载相关资源的管理。
(4)方便移植:系统应具有实用性、可靠性和适用性,同时注意到先进性。针对不同的用户,只需要稍作修改就可以开发出适合自己特点的高校就业信息宣传网站。系统界面中所需的数据都存放于数据文件中,只要对该文件做部分修改,就能在系统界面上实现及时更新的效果,减少了更改系统源代码的复杂性。
(5)动态管理:对系统数据库实行动态操作,能实现对数据库信息的动态查询、动态更新修改和动态录入数据。
4.2 数据流分析
数据流程分析主要包括对信息的流动、传递、处理、存储等的分析。数据流程分析的目的就是要发现和解决数据流通中的问题。现有的数据流程分析多是通过分层的数据流程图(data flow diagram,简称DFD)来实现的。其具体的做法是:按业务流程图理出的业务流程顺序,将相应调查过程中所掌握的数据处理过程,绘制成一套完整的数据流程图。
就业网站的数据流程:对本系统操作的数据源有学生和管理员两种用户,管理员有权限对数据库中的数据进行添加。不同权限的用户可以对这些库信息进行添加、修改和删除处理。所有用户均可以进行信息查询。通过对本系统的需求分析,系统的基本功能已经确定。
以下是注册用户登录Action中的核心代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
final EditText loginTxt = (EditText) findViewById(R.id.editText1);
final EditText passwordTxt = (EditText) findViewById(R.id.editText2);
// 登录按钮
Button button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
usertype = "企业用户";
if (radio1.isChecked()) {
usertype = "个人用户";
}
Thread loginThread = new Thread(new LoginThread());
loginThread.start();
}
});
// 注册按钮
Button regBtn = (Button) findViewById(R.id.login_regbtn);
regBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(LoginActivity.this,
RegActivity.class);
// 启动Activity
startActivity(intent);
}
});
}