企业级应用系统开发.docx

上传人:b****6 文档编号:3314009 上传时间:2022-11-21 格式:DOCX 页数:19 大小:895.79KB
下载 相关 举报
企业级应用系统开发.docx_第1页
第1页 / 共19页
企业级应用系统开发.docx_第2页
第2页 / 共19页
企业级应用系统开发.docx_第3页
第3页 / 共19页
企业级应用系统开发.docx_第4页
第4页 / 共19页
企业级应用系统开发.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

企业级应用系统开发.docx

《企业级应用系统开发.docx》由会员分享,可在线阅读,更多相关《企业级应用系统开发.docx(19页珍藏版)》请在冰豆网上搜索。

企业级应用系统开发.docx

企业级应用系统开发

 

《企业级应用系统开发平台》

课程设计报告

 

信息管理系

2015年6月

目录

一、项目设计背景及意义2

二、需求分析3

三、项目设计思路3

3.1软件介绍3

3.2技术分析4

3.3功能阐述5

3.4功能结构6

3.5文件组织结构7

四、数据库设计8

4.1数据库设计8

4.2连接数据库10

五、用户模块设计10

5.1用户模块概述10

5.2注册模块功能实现11

5.3登录模块实现过程12

六、功能模块设计14

6.1背景音乐模块14

6.2天气显示模块15

6.3日期显示模块16

6.4日历模块16

6.5系统时间显示模块17

6.6日记的增删改查模块18

6.7退出模块22

6.8自定义模块23

七、系统实现23

7.1模型图23

7.2实现图24

六、课设心得25

一、项目设计背景及意义

在Internet飞速发展的今天,互联网成为人们快速获取,发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要作用。

Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet中按照一定的检索方式将所需要的信息从网站上下载下来。

因此网站建设在Internet应用上的地位显而易见,它已成为政府、企事业单位信息化建设中重要组成部分,从而备受人们的重视。

而在Internet上进行软件、系统、网站等的设计开发,逐渐成为了社会发展的必然趋势。

而我们通过调研发现,现今人们的生活逐渐快节奏化,外在的需求以能够逐渐的实现,而内心的需求却越来越不能实现。

在以前,人们可以通过写日记来记叙生活,剖析内心,而现在社会的发展,手写的日记已经不能满足人们生活和精神的需求,而我们设计的这个网站将Internet和日记结合起来,人们只需要在网上进行日记的书写,修改就能完成内心的需求,零成本,快节奏,更加方便快捷。

二、需求分析

什么是日记?

最普通的定义就是用来记录其内容的载体,作为一种文体,属于记叙文性质的应用文。

日记的内容,来源于我们对生活的观察,因此,可以记事,可以写人,可以状物,可以写景,也可以记述活动,凡是自己在一天中做过的,或看到的,或听到的,或想到的,都可以是日记的内容。

日记也指每天记事的本子或每天所遇到的和所做的事情的记录。

随着社会的发展,科技的发达,快节奏的生活,使得人们在日常生活中越来越多外在的需求都逐渐能够通过网络的以实现。

然而却没有一款软件或者网站能够让人们能够诉述内心的需求,记录生活的琐事。

而我们所设计的这个网站专门针对这一需求设计,使人们能够在internet上记录自己生活的点点滴滴

三、项目设计思路

3.1软件介绍

WampServer是一款由法国人开发的ApacheWeb服务器、PHP解释器以及MySQL数据库的整合软件包。

免去了开发人员将时间花费在繁琐的配置环境过程,从而腾出更多精力去做开发。

在windows下Apache+PHP+Mysql集成环境,拥有简单的图形和菜单安装和配置环境。

PHP扩展、Apache模块,开启/关闭鼠标点点就搞定,再也不用亲自去修改配置文件了,WAMP它会去做。

再也不用到处询问php的安装问题了,wampserver一切都搞定了。

这个软件是完全免费的,可以在其官方网站下载到最新的版本。

本文中使用的版本是WampServer2.0f(发布日期2008年12月16日),其中包括Apache2.2.11,PHP5.2.8,MySQL5.1.30。

ZendStudio是ZendTechnologies开发的PHP语言集成开发环境(IntegratedDevelopmentEnvironment IDE)。

也支持HTML和js标签,但只对PHP语言提供调试支持。

是专业开发人员在使用PHP整个开发周期中唯一的集成开发环境 (IDE),它包括了PHP所有必须的开发部件。

通过一整套编辑、调试、分析、优化和数据库工具,ZendStudio加速开发周期,并简化复杂的应用方案。

具备功能强大的专业编辑工具和调试工具,支持PHP语法加亮显示,支持语法自动填充功能,支持书签功能,支持语法自动缩排和代码复制功能,内置一个强大的PHP代码调试工具,支持本地和远程两种调试模式,支持多种高级调试功能。

3.2技术分析

Thinkphp是一个性能卓越并且功能丰富的轻量级的开源PHP框架,是未了简化企业级应用开发和敏捷WEB应用开发而诞生的。

Thinkphp框架有以下特性:

(1)简单易用的MVC模式:

模型(M):

模型的定义用Model类来完成。

Model类位于项目目录下面的LibModel目录下。

控制器(C):

应用控制器(核心控制器)和Action控制器都承担了控制器的角色,区别在于Action控制器完成业务过程,而应用控制器(App类)负责调度控制。

Action控制器位于项目目录下面的LibAction目录。

视图(V):

模板的实现和框架无关的,做到100%分离,可以独立预览和制作。

模板目录位于项目目录下面的Tpl目录。

(2)编译机制:

ThinkTemplate是一个使用了XML标签库技术的编译性模板引擎,支持两种类型的模板标签,使用了动态编译和缓存技术,而且支持自定义标签库。

(3)模型自动验证和处理:

系统内置了数据对象的自动验证功能,而大多数情况下面,数据对象是由表单提交的$_POST数据创建。

需要使用系统的自动验证功能,只需要在Model类里面定义$_validate属性,是由多个验证因子组成的数组,支持验证因子格式:

验证字段,验证规则,错误提示,验证条件,附加规则,验证时间。

CSS是能够真正做到网页表现与内容分离的一种样式设计语言。

相对于传统HTML的表现而言,CSS能够对网页中的对象的位置排版进行像素级的精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力,并能够进行初步交互设计,是目前基于文本展示最优秀的表现设计语言。

CSS能够根据不同使用者的理解能力,简化或者优化写法,针对各类人群,有较强的易读性。

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。

它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

3.3功能阐述

个人日记本为用户提供了8个主要模块,包括“背景音乐”、“天气查询”、“日历显示”、“日期显示”、“系统时间显示”“我的日记”、“个人自定义”、“关闭界面”。

“背景音乐”主要是通过音乐的播放、暂停、快进、调节音量大小等来实现这一模块的功能化。

“头像上传”通过选择项目文件夹中的图片进行上传和修改。

“天气查询”通过添加iframe标签,链接到天气查询官网,实现天气的查询和显示。

其中包括天气查询地域切换、选择,观看今明两天的天气情况。

“日历显示”通过自定义描绘日记框架,然后通过实例化,来实现日历显示模块。

“日期显示”通过自定义日期实现的方法,来显示当前的年月日。

“系统时间显示”在中日期模块通过id="nowTime"给予该模块一个id值,再通过方法和语言控制调用系统时间并显示。

“我的日记”是我的个人日记中的主要模块,包括日记添加,查看、修改和删除。

“个人自定义”通过在界面的最下部分定义一个footer模块,加入座右铭,美化整个日记界面。

“关闭界面”在模块中添加推出模块,可以实现一键关闭个人日记本网页,简单快捷。

3.4功能结构

个人日记本功能结构如图所示:

3.5文件组织结构

在进行个人日记开发之前,要对系统整个文件夹组织架构进行规划。

对系统中使用的文件进行合理的分类,分别放置于不同的文件夹下,通过对文件夹组织架构的规划,可以确保系统文件夹目录明确,条理清晰,同样也便于系统的更新和维护。

本项目的文件夹组织架构规划如图所示:

四、数据库设计

4.1数据库设计

本课程通过wamepserver软件打开phpmyadmin,在其中添加一个数据库,命名为thinkphp,进行创建,然后新建三个数据表分别为think_data、think_user、think_phpto。

(1)Think_data数据表

在think_data里面添加2个字段,分别为id、data来构建登录用户信息的数据表。

(2)Think_user数据表

Think_user作为我的日记的数据表,里面有6个字段,分别为vid、username、password、regdate、gender、birthday,可以实现对添加的事件的保存。

(3)Think_Photo数据表

Think_Photo数据表作为图片信息的数据表,其中有3个字段名,分别为id、image、create_time,来实现对图片上传和保存的数据表。

4.2连接数据库

由于个人日记的大部分页面都需要与数据库建立连接,如果每页都编写相同的数据库连接代码,会导致代码冗余,同时也不利于对程序后期的更新和维护。

所以考虑将用于数据库进行代码连接的代码放入一个单独的文件config.php中,以后在需要与数据库进行连接的页面中,用PHP提供的页面包含语句包含该文件即可。

这样不仅可以提高程序代码的重用率,而且可以为日后程序的维护带来很大的方便。

五、用户模块设计

5.1用户模块概述

用户要对个人日记本进行操作,首先应该进行注册,注册成功后,可有效的对用户信息进行采集,并将合法的用户信息保存到指定的数据表中。

用户注册成功之后将跳转到登录界面,在登录界面输入已注册的用户名和密码方可登录。

5.2注册模块功能实现

在注册模块中,必不可少的就是要对用户输入的信息进行判断,首先判断用户填写的注册信息中哪些是必须填写的,哪些是可以不填写的,然后进一步判断输入的信息是否合理化等,其次我们还通过对二次确认密码,来保证密码的准确性,性别的选择让用户的信息更加全面。

其次我们还设置了重写按钮,对于内容填写错误的用户,只需要一键即可进行内容的重新填制。

操作原理如下:

在form表单中调用了submit()方法,通过该事件调用指定的JavaScript脚本,执行sub2()自定义函数,实现对表单中提交数据的验证。

在整个界面中通过“action='__ROOT__/index.php/Register/DoRegister'”,链接到RegisterAction类中,通过自定义Doregister()方法,对用户注册实例化,实现注册功能。

其次在JavaScript脚本中,实现对表单提交数据进行判断,判断输入的内容是否为空,判断内容格式是否正确,如果正确则继续执行,否则将弹出对话提示框,并将鼠标的焦点指定到出错的位置。

其次我们在注册界面中有对性别选择的按钮。

主要代码:

界面实现:

5.3登录模块实现过程

建立用户登录表单,提交用户登录的用户名和密码,登录页面的关键代码

操作原理如下:

在form表单中调用了onClick="sub1()"方法,通过该事件调用指定的JavaScript脚本,执行function sub1()自定义函数中window.location.href="__ROOT__/index.php/Register/register"; 响应注册信息,通过action='__ROOT__/index.php/Login/DoLogin跳转到LoginActio类。

通过自定义DoLogin判断用户是否存在,如果存在允许登录,如果失败提示Error page!

 Please check your username and password信息。

通过$this->success('Success Login!

',U('Index/index'));

跳转到主界面,到此,登录注册功能已完成。

主要代码:

界面实现:

六、功能模块设计

6.1背景音乐模块

通过在header部分添加embed标签,实现背景音乐的播放,通过controller="console/smallconsole/playbutton/pausebutton/stopbutton/volumelever" 实现音乐的播放、暂停、快进、音量的调节。

音乐播放主要是通过src="/Mydiary/Public/Music/Beyond - 光辉岁月.mp3"这句话实现对项目music文件夹中的音乐播放。

具体代码实现:

src="/Mydiary/Public/Music/Beyond - 光辉岁月.mp3"  width=500 height=100%   type=audio/mpeg loop="false" autostart="false" hidden="false">

 

界面实现:

6.2天气显示模块

通过添加iframe标签,链接到天气查询官网

具体代码实现:

frameborder="0" allowtransparency="true" 

src="

界面实现:

6.3日期显示模块

在index.Html中日期模块通过id="Time"给予该模块一个id值,再通过head里面的javascript自定义日期实现的方法,最后通过document.getElementById("Time").innerHTML=year+"  年"+(month+1)+" 月"+date+" 日";

显示当前的年月日。

具体代码实现:

function time(){

var now= new Date();

  var year=now.getFullYear();

  var month=now.getMonth();

  var date=now.getDate();

 document.getElementById("Time").innerHTML=year+"  年"+(month+1)+" 月"+date+" 日";

界面实现:

6.4日历模块

首先在项目目录下定义一个calender.Class.php,添加一个自定义类

Calender,在里面对日历进行定义属性和方法;然后再通过一个自定义的demo.php描绘出日历的框架,对日历进行描绘。

         

 $cal = new Calendar($params);

                $cal->display();

           

对Calender类进行实例化,实现日历显示功能。

最后在index.html中的日历模块,通过iframe标签链接到刚才自定义的日历显示界面。

具体代码实现:

frameborder="0" allowtransparency="true" 

src="http:

//localhost/Mydiary/demo.php">

为了适应日历模块的长宽比例,在进入demo.php进行长宽比例的定义,最终实现日历显示。

界面实现:

6.5系统时间显示模块

在index.Html中日期模块通过id="nowTime"给予该模块一个id值,再通过head里面的javascript时间显示的get_time()和add_zero(temp)方法,最后通过document.getElementById("nowTime").innerHTML=hour+":

"+minute+":

"+second;调用系统时间并显示。

具体代码实现:

function get_time() {

var date=new Date();

var hour="",minute="",second="";

hour=add_zero(date.getHours());

 minute=add_zero(date.getMinutes());

 second=add_zero(date.getSeconds());

 document.getElementById("nowTime").innerHTML=hour+":

"+minute+":

"+second;

}

界面实现:

6.6日记的增删改查模块

在我的日记中要能够实现对数据或事件的增删改查功能。

(1)增加数据

首先,我们在项目的Tpl/Form目录下面创建一个add.html模板文件,内容为:

然后,我们还需要在项目的Action目录下面创建一个FormAction.class.php文件,暂时只需要定义FormAction类,不需要添加任何操作方法,代码如下:

class FormAction extends Action{

}

为了处理表单提交数据,我们需要在FormAction类中添加insert操作方法,如下:

(2)读取数据

当我们成功写入数据后,就可以进行数据读取操作了。

这里我们来通过find方法获取一个单一数据,代码如下:

(3)更新数据

在成功写入并读取数据之后,我们就可以对数据进行编辑操作了,首先我们添加一个编辑表单的模板文件edit.html,如下:

编辑模板不同于新增表单,需要对模板进行变量赋值,所以,我们这次需要在FormAction类添加两个操作方法:

(4)删除数据

删除数据很简单,只需要调用delete方法,例如:

$Form = M('Form');

$Form->delete(5);

界面实现:

6.7退出模块

首先在退出模块添加按钮onclick="shut()"实现按钮的监听,在head里面自定义shut()方法,通过window.opener=null;  

    window.open('','_self');  

    window.close();

实现退出当前界面。

代码实现:

 

--  --> 

界面实现:

6.8自定义模块

在界面的最下部分定义一个footer模块,加入座右铭,美化整个日记界面。

center;" >

 

               

美好的一天,从记好第一个句话开始

 

           

美好的一天,以记住最后一句结束

                  

界面实现:

 

七、系统实现

7.1模型图

 

头像上传

 

个人日记

天气

日期

事件1

事件2

事件3

事件4

事件5

 

-

 

修改

日历

图片

时间

+添加事件

退出

7.2实现图

六、课设心得

在设计和开发系统中,我们根据系统需求考查了各类开发语言和技术。

通过比较和参考,我们最终选定了以Thinkphp为框架、MySQl为数据库的系统架构。

其中通过选用国产开源框架Thinkphp让系统减少了大量重复编码,以实现高效良好的组织结构。

在开发和技术的过程中,我们还采用了大量的开发工具,如ZendStudio、DreamWeaver、Wampserver等,大大加快了系统的技术和开发。

其中服务器采用Wampserver,是一款提供Apache、PHP和MYSQL集成环境的软件,非常便利的将运行环境搭建和配置起来。

我们要做的是人日记本的功能实现,开始时我们并没有急着着手写程序。

而是我们大家一起商量这个需求分析、功能结构,详细设计。

当这些都准备好之后,我们进行了模块的分工。

徐杰主要负责框架的搭建、日历、时间、日期、图片上传模块,而我主要负责是注册、登录界面以及日记的增删改查模块以及报告的撰写。

当我们每个人把自己的分工做好后,最后会由徐杰把这些全部组合搭建起来,这样就组成了一个完整的系统。

在整个开发过程中,我们严格遵守软件工程的开发规范,做好了其中的各个过程:

需求分析、功能阐述、功能结构、数据库设计、模块设计、功能实现。

工程化的开发过程,令我们整个系统的实现变得循序渐进,得以控制开发进度和保证开发质量。

在撰写报告的过程中,我们查阅了大量相关的文献和资料,深入了解和学习了个人日记领域的最新技术和知识。

这是一个自我学习和提高的过程。

通过查阅相关资料,培养了我们对于提出问题、分析问题和解决问题的能力。

在整个系统的开发过程中,我们也遇到了很多问题和困难。

如不知道如何将天气进行链接,对于附件的上传也一直出现问题,但通最后过查阅资料和自我学习以及小组讨论的过程,这些问题和困难都一步一步地被解决掉,这是一个自我学习和提升的过程。

在老师的悉心指导和同学们的热情帮助下,我们小组收益良多。

本系统也将继续完善现有功能,并在此基础之上,将针对特定应用领域继续做深入开发。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1