企业网站的设计与开发

2024-05-02

企业网站的设计与开发(精选十篇)

企业网站的设计与开发 篇1

关键词:ASP技术,企业网站,开发,设计

1 引言

当今社会, 仍有不少的公司企业还是在使用传统的办公模式, 纸张的使用量并没有在他们的工作中减少, 工作效率上还是比较低下。信息时代的来临拓宽了大家进行自我提升的途径, 同时也对网站功能提出了更高的要求。

2 设计技术及开发环境

2.1 设计技术

ASP (Active Server Pages) , 是一套微软开发的服务器端脚本环境, ASP内含于IIS 3.0和4.0以及更高的版本之中, 通过ASP可以结合HTML网页、ASP指令和Active X元件建立动态、交互且高效的WEB服务器应用程序。所有的程序都将在服务器端执行, 包括所有嵌在普通HTML中的脚本程序。Java Script是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言, 常用来给HTML网页添加动态功能, 响应用户的各种操作。

2.2 开发环境

数据库软件SQL 2005:SQL Server 2005引入了SQL Server Management Studio, 这是一个新型的统一的管理工具组。这个工具组将包括一些新的功能, 以开发、配置SQL Server数据库, 发现并修理其中的故障, 同时这个工具组还对从前的功能进行了一些改进。IIS是Internet Information Server的缩写, 它是微软公司主推的服务器, IIS 3.0版本以后引入了ASP, 可以很容易的张贴动态内容和开发基于Web的应用程序。对于诸如VBScript, JScript开发软件, 或者由Visual Basic, Java, Visual C++开发系统, 以及现有的CGI和Win CGI脚本开发的应用程序, IIS都提供强大的本地支持。

3.1 新用户注册管理

新用户可以通过此界面进行添加与注册, 用户输入相应的信息个人添加信息之后就会提示注册成功, 但是此注册只能注册为普通用户, 若想成为管理员, 需要有管理员进行权限设置。

限制用户登录代码如下, 通过session值判断是否是登录用户:

3.2 供应商

供应商管理:分页显示所有的供应商。结果以一个列表显示出来。点击相应的记录进行编辑和删除操作。新建供应商:新建一个供应商记录。按照要求录入信息。供应商查询:按照用户的录入条件查询供应商信息。查询结果是一个列表显示。点击相应的记录进行操作。

联系人管理:分页显示所有的供应联系人。结果以一个列表显示出来。点击相应的记录进行编辑和删除操作。新建联系人:新建一个供应联系人记录。按照要求录入信息。联系人查询:按照用户的录入条件查询供应联系人信息。查询结果是一个列表显示。点击相应的记录进行操作。

客户统计分析:按照当前用户录入条件统计符合条件的客户信息。结果以分页列表显示。点击相应的记录进行编辑和删除操作。客户服务统计:按照当前用户录入条件统计符合条件的客户服务信息。结果以分页列表显示。点击相应的记录进行编辑和删除操作。销售统计:按照当前用户录入的信息统计销售情况。结果以一个分页列表显示所有的销售记录, 点击相应的记录进行编辑和删除操作。

4 职工信息管理模块流程图

基于篇幅问题, 本文仅对职工信息管理模块进行分析, 其他模块与本模块原理类似, 在此不做赘述。

系统用户通过登陆验证进入系统主页面, 通过选择“职工信息管理”菜单进入相应页面, 流程图如下所示:

5 总结

文中主要设计的系统是以信息管理、发布为核心的企业网站开发系统, 该系统除了必须满足当前的应用要求外, 在系统的设计过程中, 还专门分析了其应用的通用技术。开发的网站系统不仅能满足当前客户日益增长的需求, 还能具有较长的生命周期, 可以节约客户在信息化建设上的投资。具有一定经济价值。

参考文献

[1]麻风梅.基于ASP.NET的交互式动态企业网站设计分析[J].现代商贸工业, 2009, 19:280-281.

房地产开发企业的流程优化与设计 篇2

摘要:本文通过对流程管理中“流程再造”与“流程优化”的比较,并分析现阶段国内房地产开发企业的流程管理现状,提出需要在房地产开发企业进行流程优化与设计而非流程改造。介绍了流程识别及诊断的方法和工具,并通过具体案例进行了详细论述。

1.流程再造与流程优化

上世纪90年代,美国管理学家哈默和钱皮提出了流程再造、流程变革之类的思想,试图通过流程再造,产生激烈的、跨越式的变革,为企业带来几十倍、几百倍的业绩增长,一些企业如IBM、HP、AT&T、P&G等大公司在这方面做了尝试,并取得了巨大的成功。但是,对所有已实践这一思想的企业来说,总体成功率并不尽如人意。大家逐渐意识到,绝大多数企业不可能通过流程再造产生一种巨大的飞跃和变革。对于大多数企业来说,要取得革命性的成果不仅面临很大的风险,而且还需要强大成熟的IT技术体系的配合与支撑,同时人的因素对再造的过程和结果也产生着非常重要的影响。所以,流程再造思想逐渐回归理性,出现了改良派,产生了流程优化的思想。与流程再造不同,流程优化强调持续改进,一点一点地逐渐积累“量变”,最终同样会产生“质变”。2.流程管理在房地产开发行业中的价值及现状

在房地产开发企业中,结果经常是“摸着石头过河”得出的。这可以理解—准备时间短,需求不断变化并且资源又匮乏。但令人惊讶的是,尽管过程颇为混乱,但结果却经常还是被达到了……

但这是什么样的一种结果呢?这是以最经济的方式获得的最好的结果么?到底牺牲了多少潜在利益,我们最后才说“实现交付,问题解决或项目结束”?要解决房地产开发企业管理中“不惜一切代价去做”这个问题,我们需要反省一下,想一想流程管理在房地产开发企业管理中的价值。

2.1 流程的定义及分类

“流程”能被简单地定义成:为达到某种特定的、可用的管理目标而需要的一系列步骤和动作。企业运行于流程中,从企业内部的工作流程到企业外部的市场交易流程。企业的工作流程可以分为经营流程、管理流程和业务流程。经营流程、管理流程和业务流程之间的关系是:经营流程决定业务流程的方向,管理流程是经营流程和业务流程的支撑。三者的逻辑关系如图1所示:

图1 其中:

· 企业经营流程的内容为:价值、目标、产品定位、资源配置计划、基本流程确定及考评政策和原则。

· 企业管理流程内容包括:人力资源管理流程、技术及设施管理流程、质量管理流程、财务管理流程及考评管理流程等。

·企业业务流程包括:市场营销流程、设计开发流程、生产工作流程、质量管理流程、销售管理流程、储运管理流程、财务管理流程、服务管理流程等。

企业价值、目标、资源配置与工作流程的关系是:企业价值、目标决定流程的方向,企业资源即组织资源(人、价值、思维、能力、结构)和技术资源(材料、设备、信息)是工作流程运行的支撑力量。2.2 房地产开发企业流程框架 房地产开发企业的运营和服务的管理就是典型由流程来驱动的。根据以上对流程的分类,也可以对房地产开发企业的流程作如下划分:

图2 其中,质量管理和财务管理跨越企业的管理工作和业务工作的范围,例如财务管理流程中的工资管理、固定资产管理等属于管理工作内容,而应收帐管理、应付帐管理属于业务工作内容。2.3 流程的价值

在企业管理过程中,“按流程管理”提供了几个关键的提高效率和性能的优势: · 流程提供了行动指南,避免了每次动作前都要重新考虑步骤所浪费的精力;

· 流程允许集中时间和资源在目标和结果上,而不是为了实现目标而进行的每一个操作步骤上;

· 流程提供给员工一种参考,允许方便地使临时员工迅速融入项目和操作流程中; · 流程通过提高生产率和锁定目标来降低生产成本。2.4 房地产开发企业流程管理现状 通过对国内几家较具代表性的房地产开发企业的调研了解到,目前国内房地产开发企业的流程管理现状是:

· 大多数房地产开发企业未形成系统的业务流程体系; · 各项活动的职责权限不清晰,接口不畅; · 流程繁琐,流转周期长,流转效率低; · 已有流程的监控体系有待完善; · 没有引入量化的关键业绩指标控制。

根据以上现状,现阶段国内大部分房地产开发企业需要的是进行流程优化与设计,而不适用于进行流程再造。

3.企业流程的识别与诊断

在企业流程优化设计过程中,首先要对企业流程的现状进行了解。以前大多数企业都是以职能的方式进行管理,没有流程的观念,其实流程就存在于企业的内部,只是运作效率如何却未作专门的分析。企业流程优化设计就是要树立流程观念,以流程的方式进行效率管理。因此,识别和描述企业现有流程,并进行分析诊断,找出需要改进的流程就成为重中之重。

3.1 做好信息收集工作

企业在识别原有流程时,首先要收集大量的关于原有流程的信息。只要收集到准确和详细的信息,流程优化和设计的实施者才能够充分认识企业原有流程,了解原有流程的现状,发现原有流程中存在的问题,从而为今后工作的展开奠定良好的基础。

3.2 识别与描述企业流程

大多数实施流程改进与设计的企业,在改进实施前,都是以职能的形式进行管理,企业在进行流程改进与设计前首先要识别企业中现有的流程,并且以一定的方式描述出来,以利于发现流程中存在的问题,进而设计新的流程或改进原有流程,以达到大幅度提高企业效率的目的。

识别与描述企业流程的步骤包括: · 逆向识别。逆向识别是企业流程的最一般方法,一般步骤为:首先确认我们关心的流程的结果是什么,并找出与该结果直接相关的时间及人员,即找出流程的终点,然后再根据输入与输出的相应关系,逆向寻找和识别相应的流程。

· 确定流程边界。大多数流程的始点与终点都没有准确的界定,流程改进及设计必须明确流程的边界,以明确任务范围,从而目的明确的展开工作。

· 流程命名。企业流程的命名应当充分体现流程的动态,最好能够反映流程先后状态的变化。· 使用流程图描述企业流程。一般使用流程图将流程的各个活动的关系表述出来,不同的流程之间的关系也要表示出来。

企业流程的识别描述是企业流程改进设计过程中的一个重要环节,这一步工作的质量直接影响企业流程的诊断效果。

根据上述步骤,可以通过SIPOC图的方法对房地产开发企业的现有业务流程进行识别与描述,如图3所示,即使通过上述步骤最终绘制出的某房地产开发企业的《施工方案管理流程图》。

图3 备注:关于SIPOC的相关信息,可参考六西格玛管理的资料。

3.3 选择关键流程

通常情况下,一个企业内的流程有成百上千,这些流程大致可分为两种类型:一类是围绕这职能线形组织运转的子流程,从单个部门内进行投入,并在这个部门形成产出;一类是跨职能流程,这类流程横跨多个职能部门,没有一个人对整个流程负全责。我们所要选择的关键流程应当是第二类跨职能流程。选择关键流程的一般步骤为:

·让每一位流程改进小组的成员列出一份自己所参与业务流程的清单; ·剔除其中重复的项目; ·将关键流程分解为子流程。

3.4 选择需要改进的关键流程

每家企业都有很多关键流程,但并不是所有关键流程都存在问题,况且企业的资源有限,企业应当优先选择存在重大问题的关键流程进行改进。

绩效表现与重要性矩阵(如图4所示)是一个既简单又非常实用的工具,在帮助发现最需要改进的流程方面具有十分重要的作用。

班级网站设计与开发 篇3

【关键词】班级网站 PHP Dreamweaver

1引言

本次班级网站作品制作主要应用了Dreamweaver对网页进行排版、Photoshop做网站背景和相册、CSS规划网页色彩、网页配色方案软件等。还包含设计的关键技巧:内容页面设计布局、php代码、HTML设计、Apache服务器测试、mysql数据库连接等。本网站的设计主题为班级网站,其主要目的是方便班级成员了解班级信息,关注班级动态。本网站主要包括网站前台、网站后台管理系统和数据库三大部分。

2前台

前台由四大模块构成,分别为班级相册、班级留言、班级信息和班级bbs论坛。用户登陆网站前台为index.php页面,即可直接对本网站进行浏览,index.php主要为大家展示的内容有,班级公告、班级相册显示、班级简介、班级信息、班级留言等功能。在该页面中,用户也可根据导航栏连接到子页面进行浏览。

管理员可通过登录index.php后在welcome.php页面中后台登陆窗口进行登陆。对整个网站信息进行操作。

数据库在一个网站系统中占有非常重要的地位,数据库结构设计的好坏将直接影响到网站的执行效率,对实现的效果产生影响。数据库设计是对一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。合理的数据库结构设计可以提高数据储存效率,保证数据的完整性和一致性,本网站采用的是mysql数据库。数据库分为两种角色:普通用

户和管理员用户,角色的功能需求如下:

普通用户

浏览班级动态

浏览校内班级新闻

实时留言

发表BBS论坛

浏览班级相册

查看班级通讯录

管理员用户

修改班级成员信息

删除班级成员信息

发布班级消息

审核留言内容

审核bbs论坛内容

角色的功能模块如下:

3 后台

系统由Dreamweaver CS5开发,用PHP语言写成。客户端目前测试运行环境为Windows环境,服务器端运行环境为Windows 7安装有apache2.2.8版本的Web服务器,即Windows 7 + Apache2.2.8 + Mysql5.0.51 + Php5.2.6(Wamp集成环境开发)。

本网站的设计需要在数据库中建立八个表admin表、member表、bbs_ref表、bbs-main表、content表、news表、newstype表、picture表。

admin表用来存储管理员的用户名和密码,如果管理员到登录界面输入的用户名和密码与guanli2表中的一样,便可登陆并进行后台管理。member表用来、存储班级成员或者游客的姓名,性别、年龄、住址、电话、专业等信息。content表主要用来存储留言人员的姓名、留言内容、主题等。news表,主要用来存放班级信息的标题、时间、内容等。picture表,主要用于存储网页内所用到的图片;bbs_ref表是用来存放在论坛中回复人的信息和内容的,而bbs-main表是用来存储发表论坛主题的人的信息和内容的。

按照要求建好数据库后,需要建立网站页面和后台服务器的连接,页面名称为CONN.PHP,以后当需要对数据库进行访问时,只需要用<?php require_once('../Connections/mymember.php');?>命令就可以直接调用该程序,连接数据库,提高程序的可读性,同时也提高程序的便捷性。

作为一个班级信息管理网站,首先它是一个班级信息交流的平台,后台管理系统包括新闻信息、留言信息、数据库的管理,管理对前面两项的管理,应当包括编辑、修改、删除,而对此类操作均是直接操作数据库信息。在系统数据管理这个模块,主要实现了数据备份和数据恢复。

后台管理功能只有管理用户才有权限使用,所以在进入这些页面之前,需要判断用户是否是管理用户。admin_logi.php的功能是判断当前用户是否是管理用户,如果不是,则给出提示没有登录权限等一系列信息。如果是,则不执行任何操作,直接进入包含它的网页Admin.php中,在只有管理用户可以进入的网页。后台页面中包含成员信息的增删改查、新闻信息的添加、审核评论信息、管理BBS论坛、发布班级宣告、上传班级相册以及查询信息功能。

4、总结

在系统的开发过程中,充分使用了面向对象的编程方式与PHP结合,完成的实现了系统的需求。对于繁杂而且庞大的数据处理有明显的优势,这就为系统的使用提供了稳定性和安全性。

【参考文献】

[1]丁士锋.网页制作与网站建设实战大全[M].北京:清华大学出版社.2013.

[2]潘凯华,刘中华. PHP从入门到精通(第2版)[M].北京:清华大学出版社.2010.

浅谈网站的设计与开发 篇4

在网络发展得如此迅速的情况下, 大都高校的教师都已经采用课件的形式教学, 改变了传统的教学方式, 例如用Power Point或其他的教学软件来丰富课堂, 这样大大的提高了课堂教学的效率, 也使课堂气氛得到了活跃, 这样的教学方式既方便老师, 也使学生以最大的学校效率去学习。尽管这些措施在课堂内带来了很大的方便与好处, 但对课下却没什么帮助。课下的复习对于学习来说也是非常关键的, 因而在网络发展得如此发达的形势下, 对课下学习进行改革是势在必行。

建立教学网站是教学信息化, 网络化的最佳途径, 也是当前教学辅助手段的大势所趋。若解决了如今教学网站中既能满足群体教学, 又能解决个性交互需要, 此举的对于教育事业, 对于国家来说, 其意义将是非常巨大的。

从教学模式来看, 建设出好的教学网站能让教学充分体现“以学生为主, 教师为辅”的现代教学模式, 彻底改变了传统教学中“以课堂教学为中心, 以书本为中心, 以教师为中心”的“三中心”教学模式。

从学生的学习来看, 建设出好的教学网站将是学生课堂学习强有力的补充, 利用网站, 教师发布课程学习资料、布置作业、进行网上答疑, 学生和老师之间、学生和学生之间可使用电子邮件、BBS、讨论讨论等进行在线或非在线信息交流, 学生之间亦可以相互讨论。

从学生和老师的交流来看, 建设出好的教学网站将为学生和老师在情感交流方面架起情感的桥梁。利用现代的信息技术手段, 建设好的教学网站, 推进国家的教育事业, 此任务是教育以及国家对于网络建设工作着来说是迫不及待的。

2 教学网站发展的概况

近年来, 国家大力推行高校教育改革, 现代教育技术、现代教育手段的应用与推广已是变革中的重中之重。现代教育技术作为国家推行素质教育的重要手段, 具体在计算机使用方面, 已体现全面要求大学生必须通过等级考试, 初步掌握计算机的使用, 而网络又是现代教育技术应用的核心。在这样形势下, 很多教学网站开始涌现, 给传统教学带来了一次强力冲击, 新的一轮教学改革已经展开。教学网站作为一个学习的平台, 具有信息量大、交换便捷、易于互动等优点, 它的应用多少与好坏直接展示了教育提升的水平和档次。但现如今的教学网站并没能充分利用这一点。

教学网站的建设对于教育事业方面的需要还远远不能满足, 我国的教育机构的庞大以及网络的发展是教学网站建设程度不能满足需要的主要原因。而且教学网站到如今, 国内还没有一个好的评价体系。

很多教学网站都是的用文章发布系统加留言板建设而成, 有的可能会加上个论坛来加深交流。文章发布系统一般作为课件发布用, 供学生下载课件用, 而留言板作为答疑工具来用, 当学生有疑问时可以发帖向老师提问。论坛的作用和留言板差不多。这种网站在一定程度上满足了教学网站的要求, 但这远远不够。

但这一切都必须建立在学生和老师的计算机水平的基础上, 这样操作都需要他们对计算机操作很熟悉才行, 这也是教学网站应用推广难的一个原因。

3 教学网站建设现状

教学网站以个人教学网站居多, 且很多都只是以信息发布系统建立起来的课件发布系统而已, 还远远不符合教学的要求。在很多高校都是教务处建立的, 这些教学网站在功能上就有些偏了, 不是很符合教学的要求。教学网站的建设现状整体来说还很差, 无论是从规模还是质量上都还不能承担教学中的课下学习环节的补充。

4 教学网站发展中出现的问题及原因

教学内容在教学网站上的组织形式没能让它们发挥他们应有的作用。例如, 在课件上不应该只是课件下载而已, 而是一个知识库, 根据知识点组织起来的知识库, 这个知识库也不是简单数字化的数据库, 而是已经把各个知识点关联起来的知识库。

教学网站在交互设计上陷入了瓶颈。在交互设计上, 国内很多教学网站都只是停留在留言板答疑的水平上, 并没有把Web2.0的理念融进去。

出现这些问题的原因:

其中一个原因是, 中国在教育教学网站上缺乏一种评价策略。目前, 我国相关的研究也只局限于介绍评价方法、评价实施过程以及如何量化调查结果等。至于具体的评价要素、评价指标体系可以说还是空白, 而这些在国外已经开始建设这一评价体系。即使在美国等远程教育发展较完善的国家, 通行的认证原则也是一些定性的指导思想, 进行有效性评价指标体系的研究就是为了促进教学网站不断改进质量, 为公众提供满意的教育服务。

5 教学网站的发展趋势

企业网站的设计与开发 篇5

中央广播电视大学计算机与科学技术专业

学生姓名:黄志刚

学 号:14360012501

专 业:计算机与科学技术

班 级:

指导教师:李慧

2016年04月

目录

目录

I V VII VIII 1 1 1 2 2 2 3 3 3 4 5 6 6 7 摘要

前言

文献综述

第1章 绪论

第1节 第2节 背景

研究的目的与意义

第2章 设计简介及设计方案

第1节 第2节 第3节 设计原则 运行架构 设计方案

第3章 相关技术介绍

第1节 第2节 第3节 MVC简介

Spring 的起源和背景 Hibernate 概述

第4章 需求分析

第1节 第2节 注册博友 普通用户

I 9 10 10 11 11 12 12 14 15 15 15 15 17 18 20 第5章 系统架构设计

第1节 第2节 系统架构说明: Hibernate层

5.2.1 设计持久化对象(PO)5.2.2 实现DAO 层 5.2.3 DAO组件的定义 5.2.4 实现DAO组件 5.2.5 部署DAO 层

第3节 第4节 实现Service 层 MVC 层实现

5.4.1 1.Model 部分 5.4.2 View 部分

5.4.3 3.Controller部分 5.4.4 采用Ajax加深用户体验

设计结果及对设计结果的分析

全文总结

致谢21

目录

目录

I V VII 摘要

前言

II

VIII 1 1 1 2 2 2 3 3 3 4 5 6 6 7 9 9 10 10 11 11 12 文献综述

第1章 绪论

第1节 第2节 背景

研究的目的与意义

第2章 设计简介及设计方案

第1节 第2节 第3节 设计原则 运行架构 设计方案

第3章 相关技术介绍

第1节 第2节 第3节 MVC简介

Spring 的起源和背景 Hibernate 概述

第4章 需求分析

第1节 第2节 注册博友 普通用户

第5章 系统架构设计

第1节 第2节 系统架构说明: Hibernate层

5.2.1 设计持久化对象(PO)5.2.2 实现DAO 层 5.2.3 DAO组件的定义 5.2.4 实现DAO组件

III 14 15 15 15 15 17 18 20 5.2.5 部署DAO 层

第3节 第4节 实现Service 层 MVC 层实现

5.4.1 1.Model 部分 5.4.2 View 部分

5.4.3 3.Controller部分 5.4.4 采用Ajax加深用户体验

设计结果及对设计结果的分析

全文总结

致谢21

IV

摘要

越来越多的网络用户希望能够在网络平台上更多地展现自己的个性,更方便地与他人互动交流,拥有一个自己独立的空间,随着Web2.0时代的到来,一个新的概念出现了——博客。

首先介绍了博客网站设计的意义和背景,主流博客网站的主要功能。重点介绍了基于J2EE架构的博客网站设计方案,实现的主要功能。

其次,重点讲述了博客网站的业务逻辑层和持久层的设计与开发过程中所涉及的技术及开源框架。系统如何以Spring 框架为核心,向下整合Hibernate进行持久层访问,向上整合Struts 按清晰的MVC 模式控制,怎样划分应用的层次。简述了页面的请求的分发及流程。

最后对BLOG网站开发中所碰到的一些问题,并针对这些问题提出一些解决方案,最后对系统性能作出一些简要评估,阐述了一些个人想法。

关键词: 博客,J2EE, Spring,Struts,Hibernate

Abstract More and more network users hope to unfold there characteristics in the network platform and interact with people more conveniently.From the begining of Web 2.0, a new concept of blog emerged.Firstly, we introduce the meaning and background of designing of blog site, and then introduce the main function of the blog site briefly.We also introduce the designing scheme of blog site which is based on the architecture of J2EE.The main function carried out in our blog project is presented.Secondly, we introduce the designing of logic and permanent layer of the blog site.The technic and structure refered in the process of developing are presented.We also depict how to be around with frame of Spring, how to work with Hibernate to visit permanent layer below, how to work with Struts to control the clear MVC model up and how to divide layers of application.We also give the brief introduce of distribution and flow of pages’request.Finally, we discuss some problems about the blog realization and show schemes of solving problems.Brief evaluation on the performance of system is given.We give a comment on problems occurring in our work.V

Keywords: blog, J2EE, Spring, Struts, Hibernate

VI

前言

本文介绍了基于轻量级J2EE开发博客网站。同时利用Spring、Struts、Hibernate、Ajax等框架整合开发。本文主要分为七章。

第一章主要介绍了进行博客网站的背景及意义。第二章对博客网站设计方案做了简要介绍。第三章介绍了博客网站的需求分析。

第四章详细介绍了系统的架构设计,并详细讲述了通过Spring 框架,向下整合Hibernate 进行持久层访问,利用DAO模式隔离业务逻辑层与具体持久层,向上整合Struts按清晰的MVC模式构建系统。

第五章简单讲述了系统设计时遇到的问题及解决方案,另外对系统的性能作了一个简要的评论及设计结果和设计结果分析。

第六章对全文所使用的方法、结果以及目的和意义做了全面的总结,展望java技术在Web上的一些应用。

本文的完成得到了戴祖旭博士的帮助和指导,在此向他表示衷心的感谢。

VII

文献综述

Hibernate相关文献介绍

文献错误!未找到引用源。围绕着ORM,讲述了对象映射配置,对象关系映射、集合映射、对象的操作和查询。及详细如何利用Hibernate 构建DAO层,怎样根据PO的关系。面向对象操作数据库,怎么配置数据库映射文件。Java基础文献概述

文献错误!未找到引用源。讲述了java基础知识,如控制流程、初始化和清理、接口和内部类等。并讲述如何利用对象提供服务,并通过接口隐藏具体实现。J2EE相关文献概述

文献错误!未找到引用源。论述了在J2EE平台中在各层经常遇到的问题,该文献详细讲解如何解决J2EE平台所遇到的问题。

文献错误!未找到引用源。将述了如何构建轻量级的J2EE企业应用程序,并讲解MVC在Web中应用,怎么将请求控制并转发,Struts标签。

文献错误!未找到引用源。详细讲述了Spring 的控制反转、AOP编程思想。及其怎么利用Spring整合Hibernate,利用Spring提供IOC容器管理DAO组件,利用事务管理SessionFactory。

文献错误!未找到引用源。以8 个小型J2EE项目讲述怎么利用Struts、Hibernate、Spring等框架构建J2EE Web应用。并且也详细讲述各个框架的在项目中应用。文献错误!未找到引用源。这本书是有3个具有15以上的开发经验的企业java架构师或首席架构师所著。本书讲述了J2EE的3层所涉及的核心模式。通过通用模式可以更快构建稳定的J2EE应用。

文献错误!未找到引用源。这本书详细讲述了架构设计的方法。架构设计应该包括那些方面。

怎么应用架构模式。Ajax技术文献概述

文献错误!未找到引用源。讲述了JavaScript、CSS、DOM、XML的在Ajax上一些应用。如何利用这四个技术实现html片段的替换。并结合一些实例讲述如何利用Ajax 实现友好用户体验。Eclipse文献概述

文献错误!未找到引用源。讲述了如何利用Eclipse开发java应用程序。该文献主要讲如何构建java开发环境,如何安装Eclipse插件。并利用Eclipse自动生成一些代码。Jsp文献概述

文献错误!未找到引用源。围绕着实例讲述Jsp的各种技术。比如Servlet,JavaBean 在Jsp中的应用。本文中的图片播放器和音频播放器是基于这书上实例改进的。

VIII

第1章 绪论

第1节 背景

商业网站设计的主要目的一般是通过网站的推广,实现更多网络用户的关注,从而吸引更多的企业用户投入更多的宣传经费到网站上。

长期的战略目标,商业网站不仅是公共产品信息和服务的推广,它还是将买家与卖家、厂商和合作伙伴紧密结合的平台,借助这些商业网站可以消除企业与客户之间时间与空间带来的障碍。

Blog博客网站致力于为广大博客提供优质博客页面服务的商业网站。每个博客都希望借助自己的博客页面宣传自己,而博客数量越多,网站的点击率越高就越能够吸引广大的企业客户选择该商业网站作为媒介,将自己的产品展现给客户。可以说,对这些博客网站而言:为博客提供良好的服务就意味着为网站带来更多的商业客户。因此,在具体设计实现该博客网站时,主要考虑了主流博客网站的几个主要功能。

1.博客的注册、登录验证功能

2.网络用户通过关键字搜索博文功能 3.最热门博客页面推荐浏览

4.文章详细内容及相关评论显示 5.博客页面访问量统计

6.博客个人文章管理维护功能

7.博客个人文章分类管理维护功能 8.博客个人友情链接维护功能

9.博客个人基本信息管理维护功能 10.博客图片上传及个人相册管理

11.网络用户写留言,博主查看留言。第2节 研究的目的与意义

Blog记载了日常发生的事情和自己的兴趣爱好,把自己的思想和知识和他人分享、交流,同时又通过“六度空间”结识了更多志趣相投的朋友;而越来越多专业知识的 Blog 的出现,让我们看到了 Blog 更多所蕴涵的巨大的信息价值:不同的 Blog 选择不同的内容,收集和整理成为很多人关注的专业 Blog ——目前越来越多的人获取信息的来源是一些固定的 Blog。随着博客人数的增加,Blog 作为一种新的生活方式、新的工作方式、新的学习方式已经被越来越多的人所接受,并且在改变传统的网络和社会结构:网络信息不再是虚假不可验证的,交流和沟通更有明确的选择和方向性,单一的思想和群体的智慧结合变的更加有效,个人出版变成人人都可以实现的梦想—— Blog 正在影响和改变着我们的生活。

第2章 设计简介及设计方案

在整个blog进行开发之前,要确定出整个项目的整体架构,包括系统的选型、运行环境的确定及系统结构设计。下面对这进行详细介绍。第1节 设计原则

在进行软件系统开发的最初环节,一般都需要进行系统的选型,即根据系统功能的实际需求,选择合适的开发工具及软件架构。

blog对系统的可靠性、稳定性有比较高的要求。本系统设计时,比较主流的B/S设计有基于JSP、ASP、PHP、CGI及J2EE等模式。相比较而言PHP的功能相对简单,不适合做大程序;而CGI效率相对较低,所以也不考虑。由于J2EE的开源的框架中提供了MVC模式实现框架Struts、对象关系模型中的Hibernate 的框架及拥有事务管理和依赖注入的Spring。利用现存框架可以更快开发系统。所以选择Java技术作为blog 的开发工具。第2节 运行架构

为了增加系统的吞吐量,提高并发处理客户请求数量,系统采用了IBM服务器作为主机。在数据库处理方面,不需要在数据层借助存储过程及数据库服务器端函数封装过多的业务逻辑,因此数据库系统采用相对精巧的MySQL错误!未找到引用源。

该在线博客系统服务器端如果需要布置到其他主机上,则该主机必备条件如下:

1.服务器端操作系统:独立于操作系统的跨平台系统,客户端MicroSoft Windows 2000及以上;

2.数据库:MySQL 5.0.27版本; 3.Web服务器:Tomcat 5.5及以上版本,配合MVC设计模式及 Hibernate开发架构; 4.客户端运行环境:能运行IE 5以上或Netscape 5以上浏览器的操作系统,配合

使用Ajax技术;

5.客户端运行工具:目前的系统采用浏览器作为客户端,为了支持Ajax开发框架,应该选择使用IE 5以上版本浏览器。

本网站以NT为Web平台,JSP+Ajax+Servlet+JavaBean+Hibernate为网站实现技术,建立基于MySQL数据库系统的核心动态网页,实现博客网站前台及博客个人维护管理等功能模块。第3节 设计方案

为了在更短的时间内实现博客网站,我们采用J2EE架构。集成开发环境我采用对于插件即插即用的Eclipse,JSP运行环境我们采用Tomcat应用服务器,数据库管理系统我们采用的是MYSQL,博客网站主要实现注册用户可以在 服务器上开辟自己的空间,也可以发布消息,上传文件,回复消息,从服务器发送客户端的数据应用XML来封装.本系统采用的是经典的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。并利用Spring、Hibernate、Spring等轻量级框架实现三层结构的设计。即采用的是贫血模式,业务逻辑对象正面封装了全部的业务逻辑方法,Web 层仅与业务逻辑组件交互即可,无须访问底层的DAO 对象。Spring 的声明式事务管理将负责业务逻辑对象方法的事务性。在贫血模式下,其分层非常清晰。Domain Object 并不具备领域对象的业务逻辑功能,仅仅是ORM 框架持久化所需的POJO,仅是数据载体。贫血模型容易理解,开发便捷,但严重背离了面向对象的设计思想,所有的Domain Object 并不是完整的Java 对象。

第3章 相关技术介绍

第1节 MVC简介

MVC 是Model、View、Controller 三个词的缩写,三个词分别代表应用的三个组成部分:模型、视图与控制器。三个部分以最少的稿合,协同工作,从而提高应用的可扩展性及可维护性。起初,MVC 模式是针对相同的数据需要不同显示的应用而设计的,其整体的效果如图1 所示:

图1 MVC结构

在经典的MVC 模式中,事件由控制器处理,控制器根据事件的类型改变模型或视图,反之亦然。具体地说,模型维护一个视图列表,这些视图为获得模型变化通知,通常采用观察者模式登记给模型。当模型发生改变时,模型向所有登记过的视图发送通知:接下来,视图从对应的模型中获得信息,然后更新自己。概括起来,MVC 有如下特点。.多个视图可以对应一个模型。按MVC 设计模式,一个模型对应多个视图,可以减少代码的复制及代码的维护量,一旦模型发生改变,也易于维护。

1.模型返回的数据与显示逻辑分离。模型数据可以应用任何的显示技术,例如使用JSP 页面、Velocity 模板或者直接产生Excel 文档等。

2.应用被分隔为三层,降低了各层之间的稿合,提供了应用的可扩展性。

3.控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起,完成不同的请求。因此,控制层可以说是包含了用户请求权限的概念。

4.MVC 更符合软件工程化管理的精神。不同的层各司其职,每一层的组件具有相同的特征,有利于通过工程化和工具化产生管理程序代码。第2节 Spring 的起源和背景

2002 年wrox 出版了《Expert one on one J2EE design and development》 一书。该书的作者是Rod Johnson。在书中,Johnson 对传统的J2EE 架构提出深层次的思考和质疑。并提出J2EE 的实用主义思想。2003 年,J2EE 领域出现一个新的框架: Spring,该框架同样出自Johnson 之手。事实上,Spring 框架是«Expert one on one J2EE design and development» 一书中思想的全面体现和完善,Spring 对实用主义J2EE 思想进一步改造和扩充,使其发展成更开放、清晰、全面及高效的开发框架。一经推出,就得到众多开发者的拥戴。传统J2EE 应用的开发效率低,应用服务器厂商对各种技术的支持并没有真正统一,导致J2EE 的应用并没有真正实现Write Once 及Run Anywhere 的承诺。Spring 作为开源的中间件,独立于各种应用服务器,甚至无须应用服务器的支持,也能提供应用服务器的功能,如声明式事务等。Spring 致力于J2EE 应用的各层的解决方案,而不是仅仅专注于某一层的方案。可以说Spring 是企业应用开发的“一站式”选择,并贯穿表现层、业务层及持久层。然而,Spring 并不想取代那些已有的框架,而与它们无缝地整合。总结起来,Spring 有如下优点: 1.低侵入式设计,代码污染极低。

2.独立于各种应用服务器,可以真正实现Write Once, Run Anywhere 的承诺。3.Spring 的DI 机制降低了业务对象替换的复杂性。

4.Spring 并不完全依赖于Spring,开发者可自由选用Spring 框架的部分或全部。

第3节 Hibernate 概述

Hibernate 是目前最流行的ORM 框架,其采用非常优雅的方式将SQL 操作完全包装成对象化的操作。其作者Gavin King 在持久层设计上极富经验,采用非常少的代码实现了整个框架,同时完全开放源代码,即使偶尔遇到无法理解的情况,也可以参照源代码来理解其在持久层上灵巧而智能的设计。目前Hibernate 在国内的开发人员相当多,Hibernate 的文档也非常丰富,这些都为学习Hiberante 铺平了道路,因而Hibernate 的学习相对简单一些。下面通过对比来了解Hibernate 和传统JDBC 操作数据库持久层之间的差异。

第4章 需求分析

Blog网站主要是实现注册用户登录、管理相关信息、博文及相关评论、查看留言、友情链接、及图片的上传和图像的播放而为上网用户提供按博文主题搜索,查看注册用户的博文及提出相关评论,并为注册用户写留言,游览注册用户的相册、注册等功能的系统。下面就以两种不同的用户来分析博客网站的需求。第1节 注册博友

首先必须在博客首页中登录填写用户名和密码,这样才能执行一些相关操作,不然就是普通用户只能查看一些信息,而不能发表博文。可以在管理页面上添加博文的分类,可以上传图片和游览自己的相册,在上传过程中可以将一张图片定义为自己的签名,在个人管理页面中注册用户还可以修改自己的个人信息。博文管理,友情链接管理及博文分类管理,用例图2。

图2 博客管理页面的用例图

在博客主界面中发表博文时可以选择博文类型,这样可以更好管理自己的博文。并查看和删除网友对自己的博文的一些评论、查看和删除网友留下的一些留言,提供与其他网友交流的空间。更好交流,在信息时代人们通过个人空间沟通也用来但不能在自己的博客主页面中提交评论和留言。这样在本系统中就可以为博友提供更多的个人色彩。在管理页面中添加和删除友情连接。这样博友可以在自己空间中快速定位自己的关心的网站。这样还可以让网友看到自己的一些信息。友情链接及网页访问量统计显示:在博客的个人页面中还提供了推荐给普通网络用户的相关友情链接,此外,对个人页面的访问量也在随时进行统计,并在个人页面中进行直观的显示。博客主页面的用例图如图3所示:

图3 博客主页面的用例图

第2节 普通用户

在博客注册页面注册成为博客的注册用户,才可以拥有自己独立的空间,进入某一博客页面查看相关文章信息时,可以随时对自己所感兴趣的文章发表评论,同时也可以查看到其他人针对该博文的评论。普通用户在阅读博文时可以在最后留下自己的一些评论。他也可以留下更多的信息。这样他可以写留言。这样他留下的信息就更快地被博友所看到。普通用户进入博友的用例图如图4所示:

图4上网博友在博客主页面的用例图

普通网友可以搜索自己关心的一些数据。并且在搜索结果中提供在结果范围内再次搜索。这样就可以将范围缩小。首页向注册用户提供登陆模块,注册用户在博客网站首页跟上网网友一样可以查看博客和博文推荐。上网网友可以注册成为博客用户,拥有自己独立的空

间。这一模块的用例图如图5所示:

图5 博客首页的用例图

第5章 系统架构设计

本系统采用严格的J2 EE 应用结构,主要有如下几个分层。

1.表现层:由JSP 页面组成。2.MVC 层:使用Struts框架。

3.业务逻辑层:主要由Spring loC 容器管理的业务逻辑组件组成。

4.DAO 层:由7 个DAO 组件组成,实现类必须继承Spring提供的HibernateDaoSupport。

5.Hibernate 持久层:由7 个PO 组成,并在Hibernate Session 管理下,完成数据库访问。

6.数据库服务层:使用MySQL 数据库存储持久化数据。系统的具体分层如图5 所示。

图6 系统结构图

在图6 黑色大方框内的MVC 控制层、Service 层及DAO 组件层的组件,都由Spring IOC 容器负责生成,并管理组件的实例(实例必须是单身模式的,本系统中的bean基本上是单身的)。

第1节 系统架构说明:

本系统不仅严格按MVC 模式设计,还按J2 EE 分层设计,将中间层严格分成业务逻辑层、DAO 层及数据持久层等。MVC 层的控制器绝对禁止持久层访问,甚至不参与业务逻辑的实现。表现层采用传统JSP 技术。

本系统采用的是典型的J2EE 三层结构,分为表现层、中间层(业务逻辑层)和数据服务

层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。Jsp广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。中间层采用的是流行的Spring+Hibernate,为了将控制层与业务逻辑层分离,又细分为以下几种。

Web 层,就是MVC 模式里面的C,负责逻辑层和表现层的交互。调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC采用Struts框架。

Service 层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO 层为基础,通过对DAO 组件的正面模式包装,完成系统所要求的业务逻辑。

DAO 层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。

PO,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库,该系统采用Hibernate 作为ORM 框架。Spring 的作用贯穿了整个中间层,将Web 层、Service 层、DAO 层及PO 无缝整合,其数据服务层用来存放数据。

第2节 Hibernate层

通过使用Hibernate 持久层,可以避免使用传统的JDBC 操作数据库,对JDBC近一步包装,从而更好地使用面向对象的方式来操作数据库。保证了整个软件开发过程以面向对象的方式进行,即面向对象分析、设计及编程,透过Hibernte 对PO对象持久化操作,不管插入还是查询都是通过PO。5.2.1 设计持久化对象(PO)面向对象分析,是指根据系统需求提取应用中的对象,将这些对象抽象成类,再抽取出需要持久化保存的类,这些需要持久化保存的类就是持久化对象(PO)。该系统并没有预先设计数据库,而是完全从面向对象分析开始,设计了7 个持久化类。本系统一共设计了如下7 个PO。

1.Blog: 对应博客网友的一些基本信息,必如id、username、password、sex、picturename、name、address、uid、subject。还包括一些集合,博友的博文(Articles)、图片(Pictures)、留言(Messages),这样在系统中我们可以随时通过getXxx()访问博客的一些属性就不用编写sql语句来访问博友的些属性,2.Picture: 对应博友的图片,包含name、blog,filename,这样我们可以将图片 的路径名保存到数据库中,在根据路径名访问博友上传的图片,就不用用到数据库中的Blob类型,将图片数据格式转来转去,不过这样服务器直接存储客户的图片。

3.Messages: 对应网友留下的留言,属性有id、username、Blog、注册用户可以查看别人写的留言,但不能在自己的空间内留言。

4.FeedBack: 对应回复,包括id、article、username、content。他对于一篇博文,是网友阅读博文后对博文的评论。该评论无论是谁都可以看到。

5.Sort: 对应博文分类属性有Id、Blog、name、Articles,注册用户可以在自己的空间定义一些分类,这样可以更好管理自己的博文,一个分类对应一个Blog,一个分类可能有很多分类。

6.Article: 博客系统的核心 对应有 title,Id、blog、content、sort,一个博文属于一种分类,可以有很多回复,7.Links: 对应有情连接,包括id、url、name、blog博友通过添加有情连接可以在自己的空间中提供快速的自己关心的网站。

客观世界中的对象不是孤立存在的,以上7 个PO 也不是孤立存在的,它们之间存在复杂的关联关系。分析关联关系也是面向对象分析的必要步骤,这7 个PO 的关系如下。Blog除了FeedBack外,与另外5个都是1-N的关系,在blog类里对应有个集合。比如messages,是SetArticle 和FeedBack之间存在I-N 的关系,每篇博文可以被很多人评论。Article和sort 之间存在N-1 的关系,即每篇博文只能属于一种分类中,并且只属于一个博友,在Hibernate框架中它提供了以xml文件形式出现的映射文件,完成从PO到数据库表映射后,即完成面向对象的程序设计语言与关系数据库的映射。以面向对象的方式操作关系数据库。5.2.2 实现DAO 层

在Hibernate 持久层之上,可使用DAO 组件再次封装数据库操作。通过DAO 层,可以让业务逻辑层与具体持久层技术分离,一旦需要更换持久层技术时,业务逻辑层组件不需要任何改变。因此,使用DAO 组件,即意味着引入DAO 模式,使每个DAO 组件包含了数据库的访问逻辑:每个DAO 组件可对一个数据库表完成基本的CRUD 等操作。DAO 模式的实现至少需要如下三个部分。1.DAO 工厂类。2.DAO 接口。

3.DAO 接口的实现类。DAO 模式是一种更符合软件工程的开发方式,使用DAO 模式有如下理由。

1)DAO 模式抽象出数据访问方式,业务逻辑组件无须理会底层的数据库 访问,而只专注于业务逻辑的实现。

2)DAO 将数据访问集中在独立的一层,所有的数据访问都由DAO 对象完成,这层独立的DAO 分离了数据访问的实现与其他业务逻辑,使得系统更具可维护性。

3)DAO 还有助于提升系统的可移植性。独立的DAO 层使得系统能在不同的数据库之间轻易切换,底层的数据库实现对于业务逻辑组件是透明的。数据库移植时仅仅影响DAO 层,不同数据库的切换不会影响业务逻辑组件,因此提高了系统的可复用性。

对于不同的持久层技术,Spring 的DAO 提供一个DAO 模板,将通用的操作放在模板里完成,而对于特定的操作,则通过回调接口完成。Spring 为Hibernate 提供的DAO 支持类是: HibernateDaoSupport,5.2.3 DAO组件的定义

DAO 组件提供了各持久化对象的基本的CRUD 操作。而在DAO 接口里则对DAO组件包含的各种CRUD 方法提供了声明,但有一些IDE 工具也可以生成基本的CRUD方法。使用DAO 接口的原因是:避免业务逻辑组件与特定的DAO组件藕合。由于DAO 组件中的方法不是开始

就设计出来的,其中的很多方法可能会随着业务逻辑的需求而增加,但以下几个方法是通用 的。

• get: 根据主键加载持久化实例。

• saveor update: 保存或更新持久化实例。• remove: 删除持久化实例。

上面涉及了7个PO,这样我们必须设计7个对应的PODao 7个Dao必须继承BaseDao 这个BaseDao 有对接口的一些基本的CURD操作。7个Dao 如下。LinksDao,BlogDao、FeedBackDao、ArticleDao、MessageDao、SortDao、PictureDao。这7个Dao 分别封装对自己的持久化对象的一些操作。5.2.4 实现DAO组件

借助于Spring的DAO支持,可以很方便地实现DAO类。Spring 为Hibernate 的整合提供了很好的支持,Spring 的DAO 支持类是:HiberanteDaoSupport,该类只需要传入一个SessionFactory 引用,即可得到一个HibernateTemplate 实例,该实例功能非常强大,数据库的大部分操作也很容易实现。所有的DAO 类都继承HibernateDaoSupport,并实现相应的DAO 接口。而业务逻辑对象则面向接口编程,无须关心DAO 的实现细节。通过这种方式,可以让应用在不同的持久化技术之间切换。LinksDaoHiberante,BlogDaoHiberante、FeedBackDaoHiberante、ArticleDaoHiberante、MessageDaoHiberante、SortDaoHiberante、PictureDaoHiberante分别是LinksDao,BlogDao、FeedBackDao、ArticleDao、MessageDao、SortDao、PictureDao的实现类,并继承HibernateDaoSupport,并通过Spring IoC容器向7个Dao 实现类注入SessionFactroy,在7个Dao 的实现类就可以通过HibernateTemplate对PO持久化操作。并借助于Spring 提供的两个工具类: HibernateDaoSupport和HibernateTemplate,可以很容易地实现DAO 组件。这种简单的实现较之传统的JDBC 持久化访问,简直不可同日而语。比如我现在要得到所有Blog对象我只需一句 return getHibernateTemplate().find(“from Blog”);则返回一个Blog对象的列表。5.2.5 部署DAO 层

HibernateDaoSupport类只需要一个SessionFactory 属性,即可完成数据库访问。SessionFactroy创建Session,而数据库的CRUD操作都是有Session 完成,并将查询结果保存在一级缓存中,每次用户提交一次会话,可能需要Session完成一些数据库的操作而实际的数据库访问由模板类HibernateTemplate完成,该模板类提供了大量便捷的方法,简化了数据库的访问。5.2.5.1 DAO 组件运行的基础

应用的DAO 组件以Hibernate和Spring 为基础,由Spring 容器负责生成并管理DAO组件。Spring 容器负责为DAO 组件注入其运行所需要的基础SessionFactory。Spring 为整合Hibernate 提供了大量工具类,通过LocalSessionFactoryBean 类,可以将Hibernate 的SessionFactory 纳入其IoC 容器内。使用LocalSessionFactoryBean 配置

SessionFactory之前,必须为其提供对应的数据源,配置代码如下: 在datasource中配置它的数据库驱动driverClass,URL,username、password、inPoolSize、maxPoolSize 不管我们采用那种数据库我就可以在修改dataSource 的一些属性而不改动程序,将程序和数据库的耦合降到最低。5.2.5.2 配置DAD 组件

在将dataSource注入到上面简述的7个Dao中,就可以用HibernateTemplate提供的大量便捷的方法。进一步简化了持久层讨问,其模板的操作大大降低Hibernate 的重复操作;Spring 提供的DAO 支持简化了DAO 开发;SessionFactory 的依赖注入简化了Session 的控制等;这些都极大地提高J2EE应用的开发效率。声明式事务的管理分离了业务逻辑和事务逻辑,将应用从特定的事务逻辑中解料,使应用可以方便地在不同的事务策略之间切换。在所有的ORM 框架中,Sping 对Hibernate 的支持最好。Spring 提供很多IoC 特性的支持,方便地处理大部分典型的Hibernate 整合问题,如SessionFactory 的注入到7个PODao中、HibernateTemplate 的简化操作及DAO 支持等,然后在7个PODao实现类继承HibernateDaoSupport,这样的话,Dao实现类就可以通过HibernateTemplment以面向对象的方式操作数据库。另外,Spring 还提供了统一的异常体系及声明式事务管理等。一旦Hibernate 处于Spring 的管理下,Hibernate 所需要的基础资源,都由Spring 提供注入。Hibernate创建SessionFactory 必需的DataSource,执行持久化必需的Session 及持久层访问必需的事务控制等,这些原本必须通过代码控制的逻辑,都将由Spring 接管:DataSource, SessionFactory, TransactionManager 等,都将作为Spring 容器中的beano 将这些bean 放在配置文件中管理,可以提供很好的解耦。Spring 提供了DAO 支持,可以大大简化DAO 组件的开发。IOC 容器的使用,提供了DAO 组件与业务逻辑组件之间的松糯合。所有的DAO实现Bean 组件,都由容器负责注入到业务逻辑组件中,其业务组件无须关心DAO 组件的实现。面向接口编程及DAO 模式的使用,提高了系统组件之间的解稿,降低了系统重构的成本。通过Spring 整合Hibernate,使持久层的访问更加容易,使用Spring 管理Hibernate持久层有如下优势。

1.有效的Session管理: Spring提供了有效、简单和安全的Hibernate Session处理。2.IoC 容器提高了DAO 组件与业务逻辑层之间的解糯。3.DAO 模式的使用,降低了系统重构的代价。

4.方便的事务管理: Hibernate 的事务管理处理会限制Hibernate 的表现,而 5.Spring的声明式事务管理力度是方法级。

6.通用的资源管理: Spring 的ApplicationContext 能管理SessionFactory,使得 配置值很容易被管理和修改,无须使用Hibernate 的配置文件。

7.异常包装:Spring 能够包装Hibernate 异常,把它们从checked exception 变为 runtimeException;开发者可选择在恰当的层处理数据中不可恢复的异常,从而避免烦琐的catch/throw 及异常声明。配置DAD 组件所有继承HibernateDaoSupport 的DAO 实现类,必须为其提供SessionFactory 的引用。由于所有DAO 组件都需要注入SessionFactory 引用,因此可以使用bean 继承简化DAO 组件的配置。本应用同样将所有的DAO 组件配置在单独的配置文件中daoContext.xml中例如:由于7个Dao 都必须利用IoC容器注入

SessionFactory。我们先配一个dao模板,然后7个Dao就继承该模板这样就可以简化daoContext.xml文件

以blogDAO为例,blogDAO 的以daoTemplate 为父Bean,属性class是Dao的实现类。

parent=“daoTemplate”/> 其余6个PODAO的配置相似。从上面的配置文件可以看出Spring Ioc容器在Tomcat启动时就可以向Dao 注入SessionFactory 第3节 实现Service 层

Service 组件采用正面模式封装多个DAO 组件,DAO 对象与Service 组件之间的关Service 组件需要实现的业务方法主要取决于业务的需要,通常需要在业务组件中包含对应的方法。

业务层组件的实现业务层组件与具体的数据库访问技术分离,使所有的数据库访问依赖于DAO 组件,定义一个FacadeManagerImpl来包装7个Dao这样就可以把逻辑层和Dao分开,达到松散耦合的效果。事务管理将推迟到Service 组件而不是DAO 组件,因为只有对业务逻辑方法添加事务才有实际的意义,对于单个DAO 方法(基本的CRUD 方法)增加事务操作是没有太大实际意义的。关于事务属性的配置,本系统使用Spring 提供的TransactionProxyFactoryBean配置事务代理。这样不必为每个目标对象配置代理bean;避免了目标对象被直接调用。部暑业务层组件单独配置系统的业务逻辑层,可避免因配置文件过大引起配置文件难以阅读。将配置文件按层和模块分开配置,可以提高Spring 配置文件的可读性和可理解性。在applicationContext.xml 配置文件中配置数据源、事务管理器、业务逻辑组件和事务管理器等bean。配置文件如下:

PROPAGATION_REQUIRED

利用SpringFrameWork的TransactionProxyFactoryBean管理业务组件的事务,对应业务的方法名调用不同的事务管理,所以在业务逻辑组件的方法取名时一定要规范化。txProxyTemplate Bean是个业务组件事务管理的一个代理的父Bean,业务组件代理继承txProxyTemplate,并注入对应目标业务组件FacadeManagerImpl的在业务控制器根据请求

调用的是一个业务逻辑事务管理的代理,这个代理把请求分发给目标业务逻辑组件去处理,业务逻辑组件根据请求调用相应得Dao去执行。这样通过FacadeManagerImpl隔离业务逻辑控制器与Dao耦合。业务不需要知道是那个Dao执行的,也不需要Dao的 实现类。我们通过 Spring向FacadeManagerImpl注入7个Dao组件,业务逻辑组件是 面向DAO 接口编程,可让业务逻辑组件从DAO 组件的实现中分离。因此业务逻辑组件只关心业务逻辑的实现,无须关心数据访问逻辑的实现。第4节 MVC 层实现

MVC 架构的核心思想是:将程序分成相对独立,而又能协同工作的三个部分。通过使用MVC 架构,可以降低模块之间的耦合,提高应用的可扩展性。另外,MVC 的每个组件只关心组件内的逻辑,不应与其他组件的逻辑混合。

本文的MVC采用Struts框架。因为Struts 是最健壮,应用最广的MVC 框架。系统使用Struts 框架可以提高系统的可控制性,保证了系统的稳定性及可用性。5.4.1 1.Model 部分

模型独立于数据的显示,博客中所涉及的Model 都是ActionForm和JavaBean组成。模型返回的数据与显示逻辑分离。应用被分隔为三层,降低了各层之间的耦合,提高了应用的可扩展性。其中ActionForm用于封装用户请求参数,所有的用户请求参数由系统自动封装成ActionForm 对象:该对象被ActionServlet转发给Action;然后Action 根据ActionForm里的请求参数处理用户请求。比如本系统中的Registfrom封装了注册用户的所有信息,但页面触发了.do结尾 的 Http请求。这Struts的核心控制器ActionServlet将填充RegistForm 即调用RegistForm的setXxx。然后RegistAction就可以向业务逻辑组件提交添加RegistForm到博客。这样就完成用户的注册。而JavaBean 则封装了底层的业务逻辑,包括数据库访问等。比如本文中FacadeManagerImpl,通过业务外观向表现层封装数据的处理部分,而ActionForm 封装了请求参数以一个值对象(VO)的形似穿透J2EE的各层。

5.4.2 View 部分

Struts 的View 部分采用JSP 实现。整个应用由客户端请求驱动,当客户端请求被ActionServlet 拦截时,ActionServlet根据请求决定是否需要调用Model 处理用户请求,当用户请求处理完成后,其处理结果通过JSP 呈现给用户。通过Jsp将业务逻辑组件返回的值对象格式化,用户和系统通过View交互的。5.4.3 3.Controller部分

Struts 的Controller由系统核心控制器及业务逻辑控制器。

系统核心控制拦截特定形式的请求,再根据请求调用相应得业务逻辑控制器处理请求,在web.xml中如下定义:

action

com.blog.webapp.util.MyActionServlet

config

/WEB-INF/struts-config.xml

action

*.do 从上面的配置文件可以看出MyActionServlet是MVC的核心控制器,一般采用Struts 的ActionServlet就可以拦截以.do结尾的请求。这里我采用自己定义一个继承ActionServlet 的控制器,在处理请求时先将request的采用的编码设为统一的UTF-8,再将请求转发。ActionServlet是继承HttpServlet类,因此可以配置成一个标准的Servlet。该控制器负责拦截所有Http请求,然后根据用户请求决定是否需要调用业务逻辑控制器,如果需要调用业务逻辑控制器,则将请求转发给Action 处理,否则直接转向请求的JSP 页面。业务逻辑控制器负责处理用户请求,但业务逻辑控制器本身并不具有处理能力,而是调用Model 来完成处理。业务逻辑控制器对应图3.4中的Action 部分。业务控制层是整个系统的核心部分,它与要实现的业务功能紧密联系,其中的各个功能模块各自实现不同的业务功能。该层在接受到来自表现层的请求和相应得数据后。通过对业务数据层的调用来实现具体的业务逻辑。Struts 与Spring 的整合

整合Struts 与Spring 只有一个要求,让Struts 将拦截到客户端的请求转发给Spring容器中的bean。也就是说Struts的业务逻辑控制器可以将从核心控制器转发过来的请求教给spring IOC容器管理业务逻辑组件处理。本系统使用DelegatingRequestProcessor 的整合策略,使用DelegatingRequestProcessor的整合策略可避免创建过多的本系统采用DelegatingActionProxy,提前将请求转发到Spring 容器内的bean。为了在应用启动时由Struts 负责创建Spring 容器,应在struts-config.xml 文件中增加如下配置:

className=“org.springframework.web.struts.ContextLoaderPlugIn”> 通常上面的配置,可让Spring 容器随系统启动时完成初始化。注意在上面的配置中,Spring 的配置文件有一个aciton-servlet.xml,该配置文件中全部是Action。使用DelegatingRequestProcessor 的整合策略时,无须确定action 的实现类。因为DelegatingRequestProcessor直接将请求转发到Spring 容器内控制器配置为了Struts 与Spring 的整合,Struts 的Action 需要在两个地方配置。

1.在struts-config且xm1文件中配置对应的Action。

2.在Spring 容器中配置实际的Action,在本文中需要与数据层交流Action必须

继承BaseAction,而BaseAction 具有一个facadeManger的属性,本文的请求不直接处理请求,而是交给业务逻辑组件处理。本文通过向Action注入相应得业务逻辑组件facadeManger,Acton 将请求交给它处理。我们在action-servlet.xml 里配置一个

这样的Bean 然后每个Action将继承actionTemplate,这样Action就可以把请求交给facadeManager 处理。而facadeManager是个业务逻辑事务处理的一个代理。这样通过Spring 将facadeManager注入到业务逻辑控制器中,Action 就可以将请求分发给Spring Ioc容器中目标业务逻辑处理。这样完成Spring 向上整合Struts。5.4.4 采用Ajax加深用户体验

为了加深用户体验,本系统在处理请求时还应用到Ajax 技术。页面提交一个非.do结尾的请求,及触发了一个文档模型(DOM)事件。Ajax处理请求如下: 1.DOM事件处理者收到事件发生的消息进行处理,即在JavaScript定义的一个函数处理。2.处理者开始创建一个XMLHttpRequest对象,并根据触发的事件对XMLHttpRequest 对象设置目标URL、http 方法(GET或POST),在本系统中URL是一个以.do结尾的请求。主要是请求交给业务逻辑组件处理,再注册服务器的回调函数。3.向服务器分派异步的Http请求。

4.异步的Http请求发出后,游览器不必等待服务器的响应,用户还可以与页面交互。5.Struts 的核心控制拦截http请求,根据请求分派Action去处理请求。

6.Action交给业务逻辑组件处理。Action 接受到业务逻辑组件处理后的结果(一般是VO或VO数组),再将返回的结果序列化成XML作为服务器的响应内容。核心控制器再将响应内容返回给游览器。

7.调用XMLHttpRequest注册的回调函数。

8.回调函数解析响应内容XML文档,在这里我们利用DOM将XML换成html格式数据流。利用DOM改变交互页面的html节点。达到用户的需求。

设计结果及对设计结果的分析

本系统是一个小组(3个人)合力设计的。我负责底层即Hibernate Dao层逻辑层,MVC层,PO 和DAO 的设计。故我们采用值对象(VO)作为我们的数据交流载体。我负责VO的处理,而胡爱梅负责数据的显示即利用Jsp格式化从我设计业务逻辑层返回的数据。陈成负责搜索引擎的设计,他主要用到我设计的PO和外观组件(Dao封装体)去查询实体。在设计的过程中沟通是非常重要的。为了更好地向胡爱梅同学提供更好的服务。在设计逻辑组件返回的数据时我利用VO或XML来封装。利用DOM将XML格式转化为html的一格节点或者将VO填充到Jsp的内置对象比如Session。在JavaScript中替换她在Jsp页面定义的Html 节点。她转发的请求参数统一利用ActionForm来封装。而Struts 的核心控制器会帮我们填充。只要Action中将ActionForm换成我在Hibernate层定义的持久化对象PO就行了。再把PO交给facadeManger处理。这样只要胡爱梅同学知道我设计的PO的结构并将PO填充的Session的那个属性,她就可以将PO显示在页面上。而我只要知道她需要完成那些功能,即知道请求格式(请求的URL,ActionForm)和需要返回何种数据就行了。我便可以设计Action应该如何处理业务逻辑,再考虑将数据格式化成何种XML结构。并举例如何解析XML数据,或者将PO(List

)填充到Session的属性告诉她。为了更容易操控数据库,及格式化查询结果。我采用Hibernate 的DAO模式,利用Hibernate 查询的结果本来就是一个对象或对象列表,这就更方便我数据系列化成xml文件了。

本系统基本上可以实现前面需求分析中所要求实现的功能。另外添加了mp3播放和像word软件一样的编辑器。

由于第一次利用Java开发程序,第一次开发web应用程序。第一次利用Spring、Hibernate、Struts、Ajax等技术或框架编写程序,第一次利用MyEclipse 编写java应用程序、第一次利用MySql作为数据库系统。种种第一次,使的我在设计本系统困难重重。下面详细讲述我在开发过程中所遇到的问题和我的解决方案。1.到处出现乱码。为次我必须统一我的编码方式。

我统一采用UTF-8作为我的编码方式。并且在ActionServlet将请求转发的时候先将request的编码统一设为UTF-8,这样还是不能将Actionform 的乱码解决。ActionForm的编码是ISO-8859-1 为此我可以采用String类提供的构造函数解决。比如ActionFom的String属性str,我通过new String(ActionForm.getStr().getByte(“ISO-8859-1”),”UTF-8”)可以将ActionForm转为UTF-8。开始装MySql 时就要设定 数据库建表时表所用到的编码。同样设为UTF-8,开始我有些Form是采用Struts的DynaActionForm,这样可以少写个ActionForm类。但DynaActionForm的编码不确定。最后我只能将DynaActionForm改为ActionForm的类。对于Struts 不能拦截的请求我们统一采用Actionform一样的方式。

利用Validator验证失败能返回到指定的页面上去。

input=“/registadmin.jsp ” validate=“true”>

这是struts-config.xml 的一个registAction 的配置文件。RegistForm 经过

Struts 失败验证后Struts 不会将请求交给registAction处理直接转到input定义下的/registadmin.jsp页面上。而事实并不能转发,而是转到一个空白页面,由于验证成功可以转发,所以,其他一切都没错,只能是Action 的配置有错。将input=“/registadmin.jsp ” 改为input=“input”,定义input为一个forward 这样可以解决问题。在input属性直接配置他jsp页面是从书上将的。从这可以得出只有实验才体验框架的工作原理。2.图片上传

图片上传需要解决两个问题,1图片以什么形式出现在MySql中?以Blob,还是图片的一个路径名。博主将 图片上传到服务器,将图片的路径名保存到

MySql数据库中。我采用Struts提供的FileForm 作为上传图片ActionForm的文件属性,在Action处理时通过FileForm.getfile()得到该文件2,怎么产生路径名?为了不使图片的名称一样我采用以时间和用户名两个参数随机产生一个字符串作为图片的路径名。激将上传图片统一保存到一个特定的文件夹内。最后在表单中必须有 enctype=“multipart/form-data”这样可以让Jsp知道表单含有大量数据要上传。3.博文字数 多时不能就博文提交。

必须把写博文的表单中method设为post而不是get,因为get只是在提交请求 时带些参数而已。

4.一个对象不能同时在两个Session中,由于我开始没有将查询作为一个事务处理。后来将曾经查询过的对象作一些修改。由于对象的修改是在一个事务管理中。查询和修改不在一个事务管理中,则修改时事务管理重新开启一个Session。将对象保存到数据库中,这时一个对象同时在两个Session中,JDBC是不支持的。要修改对象,以前需要查询操作,由于利用了Spring 的事务管理,这就必须将两次操作放到一个事务中。

5.在blog主页面的所有Jsp页面刷新后的mp3重新播放

由于在mp3播放的页面中是采用在页面中嵌入 loop=“true” autostart=“true”> src是一个mp3的播放列表。页面刷新后jsp的servlet重新运行。mp3重新播放,由于对播放器的API还不了解,现在还解决。mp3的播放资源只是嵌入到导航页面(left.jsp)。只要导航页面重新刷新后mp3就重新播放。系统的性能评价

由于本系统的jsp容器是Tomcat,系统设计也采用轻量级的Hibernate,而不是EJB所以在群集,负载均衡、安全性、事务、系统管理都不很理想。数据库的连接池也不能很大,因为tomcat 不便管理。在本系统的数据库中只采用了一级缓存Session 没有启动二级缓存SessionFactory,由于大量重复数据的查询,性能可能有所降低。对于页面的分页处理,一般有两种,一种是物理分页,利用Sql语句向数据库查询指定那个页面所需要的数据,对于种方式由于数据库的差异,数据库提供的offset也不同,对于明确数据库的项目来说,物理分页在性能上讲显然比逻辑分页要来的好。第二种是逻辑分页,通过sql语句查询所有数据,再利用for语句读取用户所需要的数据,查询数据全部提交给客户端,还是将当前页面的数据相应客户端,是不好选择,因为如果全部相应,则用户可能只关心一部分,浪费了大量带宽,将当前数据提交给客户端则客户可能还关心其他数据,便再次相应服务器,要求得到其他数据,数据都在服务器的缓存中,加重服务器的压力,我选择的是将数据全部相应客户端。

全文总结

本文从博客网站的所需要实现的功能模块开始分析,决定使用Java开发博客网站。并利用JDK,Tomcat,MyEclipse,MySQL等软件来搭建开发环境,我的主要任务利用Java技术的Spring、Hibernate、Struts等开源框架设计J2EE三层结构的中业务逻辑层和数据服务层,blog网站以Spring 框架为核心,向下整合Hibernate 进行持久层访问;向上整合Struts 按清晰的MVC 模式控制。这样可以更快开发松散耦合的blog 网站。

由于没接触过Java,还有一些软件还没用过,如MyEclipse,因此完成此次毕业并不容易。通过摸索、翻阅并购买了大量相关参考资料,让我java 技术有了一定的了解。比较圆满地完成了本次毕业设计的任务,达到了此次毕业设计的目的和要求。

通过这次毕业设计学会利用java构建Web 网站,在毕业设计中接触过不少开源框架。开源框架的强大让我觉得还有很多技术需要去学习,这也让我明白,要不断地学习新知识才会利于自己各方面的发展。还让我体会到在项目小组里没有比沟通更重要

致谢

在论文结束之际,首先要感谢我的指导老师戴祖旭教授,在我的论文设计以及实现过程中均给了我大量的帮助和指导,他严谨的敬业精神和治学态度给我留下了深刻的印象。从他身上,我学到了许多能使我受益终身的东西,再次对戴老师表示衷心的感谢。

感谢理学院领导以及老师给我们创造的良好的学习环境和诸多帮助。

校园生活类网站设计与开发 篇6

关键词 校园生活网站;网页设计;页面元素

中图分类号:TP393 文献标识码:B

文章编号:1671-489X(2016)06-0157-02

1 前言

随着计算机互联网技术的不断普及和发展,人们可以更方便快捷地浏览各种各样的网站,从中获得自己需要的信息。在计算机网络不断应用于教育的今天,校园生活网站的设计以校园生活为题材,提供丰富的信息资源,不仅面向广大在校师生,也面向社会。它利用网页的形式,展现出学校师生的学习生活环境和娱乐活动等,有利于宣扬学校的文化精神。随着校园生活网站建设的重要性越来越突出,对它的设计与开发不容忽视。制作出令人赏心悦目、方便获取信息的校园生活网站,已成为一种追求。

2 校园生活网站设计与开发步骤

网站定位 首先要对建设的网站进行精确定位,需要明确网站建设的目的和面向的对象,增强其实用性。在明确校园生活网站建设的方向后,进行整体构思与规划,定位出校园生活网站的特色和风格,如青春类。

素材搜集 围绕校园生活,收集与网站主题相关素材资料。以校园生活中的娱乐生活为例,在确定主要内容后,还需搜集诸如校外旅行的景点、社团活动的相关事宜、图片以及音视频等大量资料,并对资料进行整理,合理分类,便于后期合理安排制作。

页面制作 首先,确定好网站的整体色调,由于展现的是校园生活,所以可采用绿色、暖黄色和红色等可以烘托青春气息的色彩。其次,设计简洁大方的界面,不拘泥于传统的校园网站,勇于打破呆板的风格进行创新。第三,在Logo的设计中,可以将简笔画的图像与变化了的文字相结合,既宣扬活力,又能突出学校生活的特色;导航条要让人一目了然,概括定义好主要关键词;内容板块的设计是最为自由的,可以根据校园生活的素材,设计出图文并茂的页面,给人耳目一新的感觉;版权信息也必不可少。第四,合理规划好各个板块,将其组合成最优的整体页面,能让人一目了然又富有创意,以吸引更多的浏览者,提高网站关注度。

完成发布 校园生活网页制作完成后,需要在浏览器中进行测试,看其能否正确显示,观察效果,如果没有问题,则可以上传发布于Internet上,并定期进行维护更新。

3 校园生活网站设计与开发的建议

不难发现,往往在网站设计与开发的实践操作中,还存在许多大大小小的问题。本小组在设计制作宝鸡文理学院校园生活网站过程中出现一系列问题。如:色彩选用不当,各种颜色混在一起,过于花哨,像一块调色板;字体过小或过大,设计过于自由,有的文字颜色搭配不合理,略显粗俗;使用的图片模糊且随性,没有指向性和内涵,缺乏美感;加入大量动画和视频,没有节制,导致网页加载速度慢;未能将版面合理布局,图片、文字只是一味地堆积在一起,缺乏创意;等等。针对出现的问题,总结提出几点关于制作校园生活类网站的建议,目标在于制作出人们喜闻乐见的优秀网站。

搭配积极、热情的色彩 用户打开一个网站,最先感受到的并不是丰富的内容,而是它的色彩。不同的色彩有着不同的象征含义和情感态度,一般来说,红色象征着火和力量,热情、奔放;橙色象征着幸福,欢快、生机;明亮的黄色高贵光明;大自然般的绿色和谐有活力;平静的蓝色,灵性的紫色;等等。但同时它们也有消极的一面,比如:红色表示愤怒,黄色代表警告,紫色带来压抑。校园生活网页中色彩的应用也应遵循色彩的规律,选择较为活泼的基调,如热情活力的红色或生机勃勃的嫩绿色,其他色彩起点缀、衬托、补充的作用,而不能喧宾夺主,使人眼花缭乱。可以利用白色纯净简单的优点,它的加入运用,可以显露网站的整洁,增加可读性。总之,在一个网页中不要运用三种以上的色彩,注意色彩的搭配要合理,要给人一种和谐愉快的视觉享受。

利用彰显个性与主题的文字 网站建设过程中,在文字的设计使用时要注意不要使用过大的字体,这样页面所包含的内容将会减少,除非要突出某一重点或应用于标题;也不能太小,会使可读性变差;要适中。可以根据内容所需,运用不同的字体来彰显个性与主题,充分体现某种情感。如粗体字强健有力,有大气磅礴之势;细体字高雅细致,有柔美之感。校园生活网站页面的设计中也可以运用文字的图形化,对字体进行艺术化的设计,能更富有创意地表达设计思想,打破网页的平淡与单调。要注意文字颜色的使用,要合理使用不同颜色的文字,不要太多,否则整个页面看起来像是一块调色板,凌乱无章。还有运用段落与段落间空行及首行缩排等方式来辅以阅读;不宜使用过多闪烁的文字;等等。

选择积极向上、有含义的图像 一个好的网页离不开好的视觉效果、好的视觉元素——图像的运用,既可以赋予页面灵气,又能通过与文字、音频的相互结合来吸引人们的注意力,以及帮助其更好地理解文字内容。校园生活网站的图片应是积极向上、活泼的;避免使用太过灰白的图片,容易引起压抑感;在图像的运用中,可采用自己拍摄的素材图片,但要注意其清晰度,主体应清晰可见;图片的含义要简单明了;图片中包含的文字应容易辨认;也不宜使用过多过大的图片,可应用png图像格式,图像不容易失真,存贮形式丰富,又能把图像文件压缩到极限,利于网络传输且显示速度快。对于已获取的图形或图像,可以利用Adobe Photoshop、光影魔术手等软件进行处理,使之更符合网页编辑的需要,制作出具有特色和吸引力的网站页面。

加入有效的音视频 仅仅有文字和图片组成的静态页面中,缺乏相应的视听觉感受,难以引起浏览者的兴趣。添加需要的音视频来表现内容,更富有表现力,能给浏览者带来惊喜,提高点击量,更具有吸引力。MP3格式的音频音质好,文件体积较小,可以作长时间播放的背景音乐,也适合用作解说和效果声,便于在网上传播。数字视频能客观记录现实,表现事物细节,突破时空限制,从而拓宽人的视野。可以根据需要,利用数字视频后期制作与处理软件(如会声会影)对视频进行剪切或组接。加入自己录制或下载的有关视频,比如心理健康访谈类节目等,能产生文字、图像等无法代替的视听觉效果。

适当运用动画资源 动画利用人类视觉暂留的特性,快速播放一系列动作连贯的静态图像产生视觉上的动态效果,善于表现抽象事物。利用Flash设计出有表现力的动画,彰显网站主题。它采用矢量技术,生成的文件容量小,适合网络传输。但也要注意善用此类辅助型网页内容,过多地、没有针对性地使用会加重网页的负担,影响加载速度,容易使网页浏览者心生厌烦,减少浏览量。要注意该用则用,不可滥用。

4 结论

要想制作出成功的诸如校园生活类网站,不仅要注意以上所提到的问题,还需要建设者提高自身技术,在制作过程中认真仔细、不可马虎,发现问题时能及时有效地解决;增强审美能力,能合理搭配内容;具有创新意识,敢于打破传统网页布局;将理论知识与实践操作相联系,勤于动手,在实践中检验真理;等等。总之,建设者需要不断学习和思考,不断进步,从而设计制作出人们喜爱的网站。

参考文献

[1]宋志新.浅谈网站建设和网页制作的方法[J].电子技术与软件工程,2013(24):22-22.

[2]周容.网页页面技术剖析[J].四川职业技术学院学报,2003(1):72-74.

[3]赵霞,赵国强.网页制作的问题与方法探析[J].科技风,2009(16):1.

响应式网站的设计与开发 篇7

关键词:响应式网站,CSS,高校实验中心网站,UNKIT

1 响应式网站的设计技术

1.1 什么是响应式Web

近些年以来,由于移动端的流量在不断地扩大,手机、平板等移动端设备的层出不穷,为了更好的满足用户对浏览互联网的需求,提出了响应式技术这一概念。第一,一个响应式的网站无论在手机、平板还是PC端台式机、笔记本上,有且只有唯一的一个URL接口。第二,响应式的Web设计依赖于媒体查询来推动非固定布局,实现灵活设计,即通过查询到设备的各种属性值如设备类型、分辨率、屏幕物理尺寸及色彩等来决定求同存异的布局。第三,全站都使用响应式设计(只需使用一个代码库)去适应所有适备,力求实现多平台,多终端服务的一致性。

1.2 响应式web的关键特性

1)流式布局以百分比单位为主,与传统的固定布局以像素单位为主不同。

2)媒体查询是CSS的语法规则,它能够基于查询定义的参数来控制样式。它根据不同设备提供不同的CSS,渲染不同界面以配合用户的设备环境。

3)断点指的是响应式设计的目标是避免出现为每一个可能的终端设备都制作设计一个网页。为了避免这种现象的发生,我们可以通过划出一些边界来调整页面的布局用以适应变化的内容如设定分辨率“断点”。

1.3 广义的响应式开发的流程

根据Ethan Marcotte[1]广义而言,广义而言,响应式开发是以参考分辨率开始的(原本的网格、界面或字体只为指定分辨率而设),然后加入媒体查询,以配合不同环境。假设以“移动优先”作为原则就把样式表建基于“移动优先”而非桌面版界面。因此设计的界面首先配合小屏,然后才用媒体查询,随分辨率增加逐渐提升。

1.4 响应式设计的好处

响应式设计使用一个代码库就可以解决市面上的所有浏览器和设备的兼容问题。它的好处表现在通过“灵活性”来解决“不确定性”策略来实现。根据Rob Larsen[2]有以下好处:

1)简化服务器。如果能进行合理的响应式设计,小心地使用图片,并且处理好性能问题,就算是要应对你的所有用户和具体设备的问题,你的服务器端也只需要提供一套并且最小化的逻辑。

2)更容易维护。使用响应式设计,你只需要维护一套前段的代码库。

3)只提供一个入口给搜索引擎。单一的网站及单一的URL列表会让你更容易做网站工作。

4)能够支持未知设备。在设计的时候,响应式设计已经忽略了特定的设备和操作系统,这使得响应式设计的网站可以具有自动适配现有的或者未来的设备的能力。

1.5 响应式的缺点

有些设计师不认同这种方法,认为不同设备应使用不同标记,如果用了响应式设计,所有浏览器和设备都会收到同一个HTML文件。

另外,也有可能限制了应用的复杂性。一个应用是有可能同时实现高可用性和响应式设计这两个目标的,而且你的用户在手机上可能会有与桌面站点上不同的需求,能够意识到这个问题很重要。就有关金融方面网站而言,移动端的用户最大的需求就是可以查看并操作那些比较重要的内容,关注一些重大事件,无论是具体交易事件的反馈,还是了解一些重大的市场动态。在桌面站点,用户的需求可能更广一些,需要提供全站系统访问的支持,可能还需要提供对一些其他复杂系统的能力。再者在金融服务的应用上,大量的信息都显示在一个小屏幕里面是很不合理的。这忽略了整个系统的复杂性,因为金融交易者们甚至有可能需要三个宽屏显示器来展示多个数据源以便帮助他们做决策。除非你将数据做一些更适合小屏幕查看的特殊处理,并将粒度切分的更小,否则很难有一个有效的数据交互方式。试图在同一套代码库中硬塞很多需求,并期望仅仅单独通过媒体查询或同时依靠媒体查询与Java Script来做一些简单的显示控制的话,在复杂的应用里面将很难服务好你的用户,尤其是在性能方面的问题。

2 常见的开源CSS前端框架

2.1 关于CSS

2.1.1 CSS定义

CSS是一种样式技术,也有人称之为层叠样式。

2.1.2 CSS的特点

根据张晓景[3],CSS布局比传统的表格布局更简单、更自由地控制页面版式及样式。使用CSS定义样式的好处是利用它不仅可以控制传统的格式属性,如字体、尺寸、对齐,还可以设置诸如位置、特殊效果鼠标滑过之类的HTML属性。

2.2 github上五种人气CSS前端框架简介

当今时代众多CSS的前端框架纷涌而至,但真正的优秀的却屈指可数。

这里讨论的最好的五个框架都是基于其在github上的人气展示,每个框架都有自己优缺点和特定的应用领域,这允许你根据特定项目的需求选择合适的框架。比如,如果你的项目比较简单,你就不需要复杂的框架,此外,许多选项是模块化的,这允许你仅使用你需要的组件,或者混合使用不同框架的组件。

2.2.1 Bootstrap

Bootstrap在当今流行的各种框架中是无可争议的老大。鉴于其每天仍在增长的巨大人气,可以肯定,这个美妙的工具绝对不会让你失望,它也不会在你成功建立网站前就离你而去。

2.2.2 UIKit by YOOtheme

UIkit是一个简洁的框架,它易于使用,易于定制组件。虽然它不像其它竞争对手一样受欢迎,但它提供了相同的功能和质量。

2.2.3 Foundation by ZURB

Foundation是这几个框架中第二大的,在像ZURB一样实力雄厚的公司支持下,这个框架确实很强大,是的,就是Foundation。毕竟,Foundation已经在很多大型网站上投入使用,包括Facebook,Mozilla,Ebay,Yahoo!和国家地理等等。

2.2.4 Semantic UI

Semantic UI经过多年的努力,致力于能够以更语义化的方式构建网站。它使用自然语言的原则,使代码更可读,更容易理解。

2.2.5 Pure by Yahoo!

Pure是一个轻量级的、模块化的框架,以纯CSS编写,它包括很多组件,你可以根据需要联合或独立使用它们。

总之,一个好的框架是需要结合最新的网络技术不断升级的,特别是关于移动方面的技术。如果一个特定的框架不满足您的需要,您可以从两个或两个以上的项目来混合组件,采用混搭方式。例如,你可以从一个框架得到较小的CSS样式基础从另一个框架得到一个优秀的栅格系统,再从第三个框架获得更复杂的组件。

在响应式网站设计开发中可将这些良好的框架作为模板简化应有的媒体查询,流体布局,断点等技术的操作,使开发变成了模块重组,省去了繁琐的代码编程。

3 本校实验中心响应式网站的设计

我们基于UIKit这个响应式的框架,来实现我们的实验中心网站的改进。

UIKit提供了超过30个模块化并可扩展的组件,它们可以组合使用。根据用途及功能,我们把组件分了为不同的类型。

1)默认:这些组件通常用来实现HTML元素的跨浏览器标准化功能,并添加了一些非常基础的样式。

2)布局:充分运用我们完全响应式的流体网格系统和面板,常见的布局组成部分如博客文章和评论以及其他一些实用的效果类型。

3)导航:UIKit提供了不同形式的导航组件,如导航栏和侧导航。使用面包屑或通过一个分页来翻阅文章。

4)元素:基本的HTML元素样式,如表格和表单。这些组件使用自有的类。它们不会因想到任何默认的元素样式。

5)常用:在这里你可以找到一些经常在内容中使用的组件,比如按钮,徽章,这种,动画和其他很多的组件。

6)Java Script:这些组件主要依赖于Java Script的淡出显示与隐藏内容,比如下拉菜单,模态对话框,抽屉和提示组件等。

为了避免与其他CSS框架冲突,所有的UIKit类均以uk-作为前缀进行命名。组件分为组件本身、子对象和调节器,其类名通常沿用组件名。

我们使用vs2012作为工具,来进行网站的设计。

首先我们制作site1.master页面作为整个网站的模板页。顶端我们设置实验中心的网站logo,接下来下方我们设置一个导航模块中的导航栏,图片logo以及导航栏都是响应式的,可以随着分辨率的缩小,而成比例缩小,当尺寸小于768px的时候,导航栏变为一个具有按钮的长条,点击按钮,左侧的抽屉式Off-canvas类就会展示出一个竖条的导航栏。接下来,我们设置class=uk-flex来对内容区域进行布局。

我们将整个内容部分,大致分为四行,每行我们设置三个模块,首先是实验室简介模块,简介的详细链接,我们用的是模态对话框,它是由一个遮罩层,一个对话框和一个关闭按钮组成。通过点击详细按钮或<A>标签链接,打开一个遮罩层,显示具体内容。第一层中间是一个轮播的幻灯片,用来播放实验室环境图片等,我们还用到了swicher切换器等。首页基本上制作完毕,经测试,当分辨率小于768px时,整个内容部分的模块都会按顺序从上到下进行排列,显示在完整的屏幕窗口里。

除了技术上考虑我们还关注了学生用户的体验需求,实现其浏览网页的方便性和审美性。

4 结论

真正的响应式设计是基于灵活界面(但仍然可包括定宽控制)。其主要工作就是要让网页适配当下种类繁多的设备,使页面在不同设备上仍然看上去友好并且可用。使用响应式网页设计技术开发的新版网站让人有令人印象深刻的体验,使得网站可以在不同分辨率下进行自我调整,使布局在不同尺寸的屏幕上能够自如变换(如在窄屏上导航栏友好折叠起来、字体大小自适应等)。真正的实现了一套代码对多种设备的兼容。目前,已有许多国内高校的门户网站使用了响应式的网页设计技术,如复旦大学、清华大学、华东师范大学等,将来,响应式的网页设计技术也必将会成为高校门户网站的关键的技术。

参考文献

[1]Ethan Marcotte.响应式Web设计[M].北京:人民邮电出版社,2016.

[2]Rob Larsen.Web应变之道[M].北京:电子工业出版社,2016.

中小微企业营销型网站的设计与开发 篇8

自2012年以来,国家采取了一系列措施支持中小微企业的发展,由此,中小微企业引来了又一个发展的春天,引发了全国范围内史无前例的创新、创业热潮。中小微企业犹如雨后春笋般,随着企业数量的不断增加,企业品牌也不断涌现。据统计,中小微企业约占我国企业总量的97.3%,是构成我国实体经济的重要组成部分,是给力我国经济发展的“轻骑兵”,它们在推动国内经济增长、实现科技创新、增加就业机会、促进社会和谐稳定等方面具有举足轻重的地位。

中小微企业在蓬勃发展的同时,也面临着经营压力大、品牌建设困难等问题,从某种程度上看,中小微企业的发展困境就是我国经济转型的困境,因此,如何帮助中小微企业解决这一“成长的烦恼”是国家迫切需要解决的课题。近年来,国家和政府已经出台了很多政策和措施对中小微企业从财政、金融、技术等多方面进行扶持。但是,在中小微企业生存与发展的现实中,仅靠国家和政府对中小微企业的扶持是远远不够的,企业本身更应该发挥主观能动性,转变发展方式,提高企业核心竞争力。中小微企业生存所需除去资本这种硬力量之外,还需有更多的软性力量,如技术、人才、管理、品牌建设等。

2 中小微企业品牌建设

中小微企业因为底子薄、规模小,竞争力弱,在没有资金实力、没有固定的通路、没有自己的品牌的状态下,再加上国际市场的剧烈变化,很难在竞争激烈的市场中安稳立足,已经沦为传统市场竞争中的弱者。那么,如何在这种困境中转变自身命运,增强竞争力、建立企业品牌呢?网络营销不失为解开这个困局的一把金钥匙。

现今的社会已进入互联网时代,信息化的发展带动了其它产业的发展,各行各业都将与它进行更深入的融合和渗透。越来越多的红木家具企业已开始从对互联网的认知阶段进入到认同和行动阶段,但大多数红木家具行业中的中小微企业尚未使互联网为企业的品牌宣传和企业的产品营销起到应有的作用。如何指导红木家具企业建立符合企业自身特点的营销型企业,正是本课题研究的重点。

3 营销型网站概念

中小微企业在传统市场上相对于大型企业而言,普遍存在的人才短缺、信息不畅、资金不足、管理不善等问题导致了其市场机会少、交易成本高、客户关系差、合作伙伴少,而网络经济则使传统的经济活动发生了根本改变,它弱化了企业规模的劣势,为中小企业同大企业在一个起跑线上竞争创造了有利条件。换言之,在互联网上,中小企业与大企业处在同一高度的平台上。所以对于中小型企业来说,在这个平台上增加自身的竞争力对提高自身的竞争优势有很大的帮助,也能在整个的大市场中获得优势。

因此,营销型网站就成了中小企业发展中不可缺少的一驾马车。那么,什么是营销型网站呢?营销型网站是指以现代网络营销理念为核心,基于企业营销目标进行站点规划,具有良好搜索引擎表现和用户体验、完备的效果评估体系,能够有效利用多种手段获得商业机会,提高产品销售业绩和品牌知名度的企业网站。它打破了企业对于网站建设的传统认识。简而言之,营销型网站至少应该具有良好的客户体验、功能完备并安全、具有极具销售力和公信力的内容、和搜索引擎内部优化特征的网站。它应该具备清晰的结构流程、极具冲击力的视觉表现、极具销售力的商品展示、极具公信力和深度价值的内容、符合搜索引擎优化规律、具有健全的销售客服环节和安全便捷的硬件支撑这七大要素。

4 红木家具企业网站建设现状

红木家具行业中部分中小微企业已经建立了企业网站,但它们多数以精美的图片和富有创意的Flash实现,仅用于展示企业形象、宣传企业产品,这样设计开发的网站尽管具有良好的操作性和美观性,但由于忽视网站的内容和功能,忽视搜索引擎推广的作用,导致网站没人知道无人访问,没能给企业带来实实在在的利益,这样的网站建设尚处于网络营销的初级阶段。

5 营销型网站的设计与开发

5.1 总体定位

营销型网站绝对不是把url地址静态化或者纯静态页面处理,在营销型网站的设计之初需先进行网站的总体定位,理清以下问题:主要解决网站究竟要达到什么目的?靠什么赚钱?网站的目标受众是谁,他们有什么特征?网站的核心优势是什么?只有先明确目的、方向、策略、风格,然后围绕策略规划网站,我们才能赢得客户,赢得商战!

北京吉祥阁红木家具有限公司的网站建设目的是扩大知名度,让全国各地的客户都能够通过网络大致了解本公司的产品,帮助客户确立初步选购意向。公司管理人员一方面通过线下沟通的方式,在客户无法亲临现场的情况下,让客户通过网络浏览客户,另一方面,公司管理人员也要通过网站挖掘访问过本公司的潜在客户,并利用线下方式进行开发联系。公司的客户群是具有高端购买力的人群,因其品味的特殊性,故本网站的要求至少要做到结构清晰明了,界面美观,操作方便,产品图像精致、清晰,后台客户管理方便等特点。

5.2 结构规划

网站的总体定位完成后,需进行网站的结构规划。在这一步骤上,设计者应重点考虑逻辑关系,确保最终的网站是符合用户的逻辑思维并能够引导用户完成所需操作。即用户会关注什么?我们想让用户了解什么,用户登陆网站后你期望他们的操作顺序是什么?如何培养用户联系客服或者拿起电话的意识。

考虑到有意向购买高档红木家具的客户最关心产品的款式和质量,北京吉祥阁红木家具有限公司的网站规划时要求有合理的网站栏目结构,即网站目录存在于任一网页中(可采用框架结构),使用户在任一网页中都可方便地切换到自己感兴趣的其他网页中,使其获取信息更便捷。

5.3 视觉布局

在开始动手设计网站之前,还需要确定网站的基本色和辅助色,然后根据网站结构图画出首页DEMO框架图和所有内页DEMO框架。本网站可采用大气的蓝色或护眼的草绿色,网站首页中采用动态的方式展示出本公司展厅的格局的内容,让用户在网上即可以感受到实景。

5.4 后台规划

一个网站要运营成功离不开良好地后台设计,后台规划时主要考虑公司管理人员管理网站的便捷性与数据统计的方便性,即要从操作的体验方面来规划,如何更利用于操作人员使用、让他们用起来更舒服更快速,尤其要考虑前后台的匹配。本网站后台主要需对产品参数介绍、图片、访问量、客户IP、IP所在地,客户留言、联系方式等进行管理。

5.5 内容规划

网站结构规划的重点是栏目或目录,而网站的真正灵魂与核心是网站的内容,一个好的网站可以提高产品的销售力。本网站需要设计如下内容:公司介绍相关、公司品牌相关、公司产品相关、公司新闻相关、行业信息相关、客户沟通等内容。此外,还要做好网站的搜索优化,其一是搜索引擎优化的关键字策略规划,其二是网站SEO的相关功能。

6 结束语

美术专题学习网站的设计与开发初探 篇9

随着Internet网络建设的迅速发展, 特别是校园网络的广泛建立, 开发建设基于Internet的多媒体学习资源具有重大意义。美术专题学习网站是在因特网的环境下, 围绕某一专题进行较为广泛深入研究的资源学习型网站, 美术专题学习网站在中小学教学的应用, 充分体现了美术学科与信息技术课程整合的优势。本文将对美术专题网站建设的意义和设计策略结合育才美术在线专题学习网站对美术专题学习网站的设计开发做一探讨, 并就美术专题学习网站如何有效地实施课堂教育教学结合课程实例作一阐述。

二、美术专题学习网站的定义

美术专题学习网站的本质是一个基于网络资源的专题研究、协作式学习系统, 它通过在网络学习环境中, 向学习者提供大量的美术专题学习资源和协作学习交流工具, 让学习者自己选择和确定研究的课题或项目的设计, 自己收集、分析并选择信息资料, 应用知识去解决实际问题。它强调通过学习者主体性的探索、研究、协作来求得问题解决, 从而让学习者体验和了解科学探索过程, 提高学习者获取美术专题信息、分析美术信息、处理美术信息的实践能力和培养良好的创新意识与艺术能力及信息素养。

三 、美术专题学习网站的设计

美术专题学习网站的设计包括选题、内容设计和系统设计几个步骤。选题是网站设计的关键。主题的选择要体现专题的特点, 可以涉及全日制义务教育美术课程标准, 把美术课划分为“造型·表现”、“设计·应用”、“欣赏·评述”和“综合·探索”四个学习领域。美术专题学习网站不同于网络课程, 课程在内容上有系统性、完整性、教学性, 而专题内容相对具体, 更加针对一项具体的知识内容, 因此在选题时应注意以下原则: (1) 选题上的教育性、科学性原则。专题是为教学服务的, 要符合学习对象的特点, 选题内容有一定的教育意义, 突出学习中的重点, 注意启发, 促进思维, 培养能力。选题内容正确、逻辑严谨, 层次清楚, 扩展资源内容健康、合情合理, 突出专题特征。 (2) 内容上的整合性原则。专题不只是单个知识点, 它是具有相关知识特征的知识点的集合与延伸, 所以选题要在专题范围内自成体系, 各相关知识点要围绕专题设立, 不仅仅局限于书本内容, 允许在该专题涉及的范围内涵盖相关学科, 体现了学科的整合。

四、美术专题学习网站的设计案例

1.美术专题学习网站平台

美术专题学习网站平台的建设可以用《易教专题学习网站生成平台》也可以用《ASP图文系统源码》等源码改制。《美术专题学习网站生成平台》主要适用于在因特网环境下, 对某一专题进行广泛、深入的研究学习, 并借此培养学生创新精神和实践能力, 提高学生的综合素质。以数字化学习为核心的美术学科与信息技术的整合其优势在于:①能方便用户展示学习专题相关的结构化知识, 把课程学习内容相关的文本、图形、图像、动态资料等进行知识结构化重组。②用户可以将与学习专题相关的、扩展性的学习素材资源进行收集管理, 包括学习工具 (金山画王、画笔、Photoshop等) 和相关资源网站的链接。③用户可根据学习专题, 构建网上协商讨论、答疑指导和远程讨论区域。4. 学习者收集与学习相关的思考性问题、形成性练习和总结性考查的评测资料, 让学习者能进行网上自我学习评价。

2.美术专题学习网站的框架设计

美术专题学习网站的制作必须设计一定的框架, 依据网站建设的操作步骤, 划分其知识体系。

在网站的导航栏中按照网站建设的步骤设立了“首页”等多个菜单, 现在具体看看菜单中包含了那些内容。

“首页”里, 来宾可以登录注册, 取得查看网站等操作的权限, 并且在首页内可以对网站的情况大致有个了解, 比如站点的公告、最新的消息发布、网站资源的分类等等。

“课堂寻芳”中包含五个内容:学习目标、方法建议、专题知识 (如童装设计专题中设计了“走进童装、童装的组成、款式构成、色彩构成、图案构成、童装形式美的基本法则”) , 技法探讨 (在童装设计专题中我设置了“童装设计的原则、童装设计的步骤与方法”) 、范作欣赏 (儿童男装、儿童女装、裙子、裤子、运动装等) 。对专题的学习有了目标导学, 学习方法建议, 绘画制作技巧的演示交流, 并对学习的专题内容中的范作有个大致的了解。

“课外探奇”部分是指按有关的资源建设规范分类、整理与本专题相关的资源入库 (例如艺术人文、科学生活等) 以及相关资源网站的链接等。如在童装设计专题中设计了“童装鉴赏、走进名师”。是美术专题学习资源拓展及课程综合的主要渠道。

“实践体验”提供专题学习应用工具, 指为学习者提供能应用专题知识和专题资源进行网络学习的工具。如在童装设计专题中设计了Flash 制作的“涂鸦版”、 “穿衣服小游戏”、“小小T型台”等为学生学习提供了有利的学习空间。学生可以利用“涂鸦版”、“小游戏”等进行趣味游戏性学习和绘制数字化的童装作业。另外还利用网络资源开设了网络“童装店铺”, 学生可以根据爱好选择购买喜爱的童装。

“成果展示”是学生通过美术专题学习后展示自己学习成果的场所。主要有“网络画廊”, 展示学生专题学习后的绘画、工艺作品等。在童装设计一课中就设置了“童装发布会”一栏, 用来发布展示学生的童装作业;还有“心得体会”, 发布学生通过美术专题学习以后的感想和心得。

“评价反馈”是由两个层面组成的:一是指为学习者提供自我学习评测的手段, 通过收集与学习专题相关的思考性问题、形成性联系以及总结性考察的评测资料, 学生可以在线完成自我学习的评价;二是教师在网站首页设计的课堂调查栏目 (有网络课件的交互性;课堂教学的自主性;课堂资源的丰富度;专题学习的兴趣程度等几个内容) , 学生通过专题学习后在网站进行的点击性反馈评价, 是教师通过网络进行课堂教学调查的主要渠道, 是教师改进教学策略的重要依据, 并且也为教师与学生之间的沟通搭建了桥梁。

3.美术专题学习网站的学习与评价

由于该网站在建设初期就侧重于自主性学习, 因此资源的收集整理, 在研究性学习、协作学习上提供的手段相对单一, 并且各个子专题的知识点分布相对分散。下面是以一个网站建立为任务, 给出如何利用该网站学习的模型。

①教学过程与教学资源设置。

按照美术专题学习网站的设计思路, 学生在进行专题网站学习前必须了解美术专题学习网站的结构, 掌握浏览美术专题网站的技能, 教师可以请电脑老师配合, 在电脑课上先学习浏览网页、收集信息、电脑绘画等内容。在学习小专题时, 要首先在课堂寻芳版块中浏览学习目标、学习建议, 对于学习中遇到的问题可以在学习社区里寻求帮助, 也可以直接询问老师, 还可以利用网站提供的资源中心查找自己需要的资料, 也可以通过链接直接访问Internet上的优秀资源网站。

②学习效果的评估。

如何对学生的学习成果进行评价呢?评价的量化标准的建立成为重点。根据新课程评价理念, 我改变了以往许多美术老师传统的作业评价模式 (你们看, 谁的作业最棒?你最喜欢哪一件作品呢?为什么?等等) , 而是学生学习过程及效果。下面是一张美术“学习之星”考评样表, 可以对学生的学习进行过程及效果评估, 仅作参考。

五、结束语

电信企业EIP系统的设计与开发 篇10

本文根据目前的上海电信企业的IT应用现状,结合先进的Portal技术,设计并实现了上海电信EIP系统。该EIP系统实现了门户系统的单点登录、企业内部信息的共享、个性化门户展示、内部应用系统信息集成、企业公共信息的发布管理等功能。

1 相关技术简介

1.1 Portal技术

Portal是基于Web的应用,它以用户为中心,提供了统一的用户登录,实现了信息的集中访问,集成了办公商务一体的工作流环境。利用Portal的技术,可以方便地将电信员工所需要的,来源于各个信息系统的信息资料集成在一个统一的桌面窗口之内。

Portal是Web的页面,它一般是由一个或若干个Portal的页面组织而成。每个Portal的页面一般又由一个或若干个Portlet的窗口来构成——Portlet以窗口的形式出现在Portal的页面里。

Portal的系统由Portal的服务器和支持Servlet的Java信息应用的服务器或Web服务器、数据库服务器、LDAP(Lightweight Directory Access Protocol,轻量目录访问协议,简称LDAP)服务器等组成,此外还可以加上身份认证和访问的控制服务器(Identity Server或Access Manager)等等。

Portal能实现单点登录、资源整合、个性化、协作功能、工作流、信息检索、多样客户端等功能。

1.2 Portlet技术

Portlet是一种Web组件,类似servlets,是专为合成页面里的内容聚集在一起而设计的。通常请求一个Portal页面会引发多个Portlet被调用。每个Portlet都会生成标记段,并与别的Portlet生成的标记段组合在一起嵌入到Portal页面的标记内。打个比喻,如果Portal是一个高楼大厦的话,Portlet就如同每一个房间,用户可以把所有信息分门别类,然后放在不同的Portlet中。

2 EIP系统的分析与设计

2.1 需求分析

针对企业对信息共享程度、完整性、一致性的要求,本项目需要建设的EIP系统,将通过用户统一管理、各业务系统的信息集成及单点登录的实现,建立统一的企业视图,来支持企业经营分析和决策,并满足不同用户、不同角色对个性化信息的要求。具体如下:

1)建立企业统一用户管理,提供企业用户的全视图;

2)提供企业统一的访问入口,实现用户通过EIP门户访问各业务系统的单点登录;

3)提供统一的信息展示界面,通过与现有业务系统(如:办公系统、人力资源系统、财务系统等)的信息集成,实现用户普遍关注的新闻、公告、通知的门户统一展示;

4)提供统一“公务箱”,从办公系统、财务等系统中,将公文审批、请假报销等事务的申请审批流程中的待办任务、在办任务抽取出来,统一在EIP门户系统展示和处理。

2.2 系统设计

2.2.1 总体设计思路

系统采用面向服务(SOA)的设计思路,在应用系统集成及业务功能层面,提供标准的服务接口,供其他系统调用,具体如下:

1)多元化数据接口:系统采用多元化的接口设计,提供几种标准的数据接口,包括XML文件、ODBC、JDBC、Web Services、LEI、Java等,以支持和其它应用的接口,达到和其它系统的数据交互。

2)基于多样化业务的数据流程总线:系统实现面向业务的企业数据流程总线,把企业各业务系统的业务接口、数据接口、流程接口逐步的整合到企业数据流程总线上,降低业务系统服务接口的耦合化,并实现业务接口的开放,在IT系统中形成一个大的业务体资源库,在此基础上,为企业的业务系统调用IT系统的资源提供标准化的数据及流程接口,实现跨应用、部门的业务流程集成和数据交换,从而达到改善IT投资回报的可见性,体现IT投资的价值,实现业务灵活性最大化的目的。

3)个性化设计思想:系统设计处处体现“以人为本”的思想,在系统中实现各功能模块的信息整合、上海电信内部各个应用的界面整合、消息提醒等功能,同时为用户提供界面定制,从而在上海电信企业门户中实现“信息找人”,而不是单纯的“人找信息”。

2.2.2 系统架构

本项目门户平台采用当前业界最领先的企业整合及门户平台解决方案:IBM Web Sphere Portal V6.0及Tivoli Access Manager6.0,其中统一用户管理系统和门户平台信息发布系统的开发采用Java语言及Domino平台进行开发。基本的功能架构如图1所示。

从图中可以看出,本项目主要包括三个部分,一是单点登录模块,主要实现办公系统、财务系统、人事系统等的单点登录;二是用户权限管理模块,建立企业目录,统一管理;三是应用整合,整合现有的应用系统,实现门户与各个专业系统的信息、数据的同步管理。

3 系统功能实现

3.1 单点登录模块实现方案

单点登录(Single Sign-On,简称SSO)技术是目前流行的企业业务整合方案之一,用户只要登录信息系统一次,就能够访问所有相互信任的应用系统。该文主要集成办公系统、财务系统、人事系统等的单点登录。根据系统的类别,单点登录实现的机制分为两类:

1)办公系统:原来办公系统是基于IBM公司的Domino服务平台开发的,因此可以利用IBM公司产品自带的安全机制,使用LT-PA Cookie的方式实现单点登录。这种认证方式通过配置就可以实现。

2)其他业务系统:通过HTTP Header的方式传递用户身份的认证方式实现单点登录。这种认证方式需要各应用系统修改登录模块,判断传递过来的HTTP Header中是否有用户身份信息,如果有身份信息获取用户身份,并进行验证。具体分为如下三个子过程:

子过程一:是用户登录统一安全认证平台的认证。

子过程二:是登录统一安全认证平台成功后,由统一安全认证系统向后台应用系统传递用户认证数据;传递过程中使用系统相互间已定义好的认证传递模式。

子过程三:是应用系统的认证。

一般而言,这些认证过程对用户而言都是不可见的,透明的。

3.2 用户权限管理实现方案

用户与权限管理包括三个部分:用户管理、角色管理与权限控制。

3.2.1 用户管理的实现

用户类(Class User)包括如下接口:

Search接口:查找用户数据并返回结果

Modify接口:更新一个用户项

Create接口:添加新用户项

Delete接口:删除用户项

Assign_Role接口:为用户分配角色

Remove_Role接口:删除用户拥有的角色

Role_List接口:返回用户所具有的所有角色

Has_Right接口:返回用户是否具备访问特定资源的权限

Right_List接口:返回用户所具备的所有权限

3.2.2 角色管理的实现

角色管理可以根据系统的需求动态设置各种角色,本系统初始设置三种角色:员工、管理者以及系统管理员。一个用户可以有相应的一个或多个角色。

角色类(Class Role)包括如下接口:

Search接口:查找角色数据并返回结果

Modify接口:更新一个角色项

Create接口:添加新角色项

Delete接口:删除角色项

Assign_Right接口:为角色分配权限

Remove_Right接口:删除角色拥有的权限

Has_Right接口:返回角色是否具备访问特定资源的权限

Right_List接口:返回角色所具有的所有权限

3.2.3 权限控制的实现

权限控制实现了特定用户角色对于系统中特定资源的访问权限,可以根据企业的用户与系统情况动态设置。

权限类(Class Right)包括如下接口:

Search类接口:查找权限数据并返回结果

Modify类接口:更新一个权限项

Create类接口:添加新权限项

Delete类接口:删除权限项

3.3 应用整合模块实现方案

本项目共采用了四种方式来实现原有应用系统中信息和数据的发布和整合。

1)使用Web裁剪的方式:门户系统在后台单点登录到业务系统,就如同模拟用户登录到业务系统,之后,获取用户关心的页面内容,并且依据预定的规则,把内容进行裁剪,然后返回到门户展示给当前用户,这些都是门户后台做的复杂的工作,而对于当前用户来说,看到的就是这个业务系统自己关心的内容。实现了不需要登录到业务系统,就能够看到所需要的信息的效果。使用这种方式,门户可以把Internet或其他系统的天气预报、火车时刻表等信息展现在门户上,而不需要人工维护。

2)使用XML交换的多数据源方式:把XML作为中间交换文件的格式整合来自各个不同业务系统的信息。主要过程为向业务系统发送获取内容整合XML文件请求,解析XML文件,解析后的数据发送给门户系统。例如:OA、EIP、财务报销系统中待办任务。

3)使用Web Service方式获取数据:在门户后台调用Web Service接口,可以根据用户的设计效果展示接口返回的内容。例如两个不同业务间传递指定格式的相关数据。

4)直接访问数据库:通过JDBC数据源,直接从数据库获取资料,按照预先定义的显示规则,显示用户有权限访问的信息。像新闻、公告、培训信息等的门户信息内容的整合基本上都采用这种方式。

4 结束语

本文开发了电信企业的门户系统,解决了原有系统中系统繁多、业务松散、用户界面不统一等“信息孤岛”问题,提出了基于Portal技术的电信企业信息门户解决方案。该方案提供了一个通用的可扩展的共享程度高的信息平台,可以将现有的上海电信的各个业务子系统无缝地集成到该平台。该系统把用户从名目繁多的各种应用系统中解脱出来,让他们可以更好地将精力集中到业务数据中去,把软件系统管理维护者也释放了出来,让他们可以更好地关注于业务流程本身的优化上,大大提高了工作效率。

参考文献

[1]郑辉.基于LDAP的统一身份认证目录服务系统研究与设计[D].西安:电子科技大学,2008.

[2]Bindings and Profiles for the OASIS Security Assertion Markup Language.(SAML)V1.1[EB/OL].http://www.oasis-open.org.

[3]裘巍.编译器设计之路[M].北京:机械工业出版社,2010.

[4]陈丹丹.Java开发宝典[M].北京:机械工业出版社,2012.

[5]裘慧奇.统一身份认证和单点登录系统分析[J].电脑知识与技术,2008(13).

上一篇:汉语言传播策略下一篇:节日风俗