欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于JAVA的儿童绘画软件的设计与实现.doc

    • 资源ID:29949370       资源大小:685.50KB        全文页数:26页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于JAVA的儿童绘画软件的设计与实现.doc

    基于JAVA的儿童绘画软件的设计与实现摘要随着社会节奏的日益加快,忙于工作的家长没有更多的时间顾及孩子的生活和教育,孩子缺少一种生动、易懂的学习途径。而儿童绘画软件作为一种新型的学习工具,能够有效缓解家长压力,让孩子独立学习。父母或教师若想引导孩子走进美术世界,给幼儿美术教育一个好起点,就必须能充分了解孩子与生俱来的种种本能,为孩子选择好的启蒙工具。随前计算机的普及,画图软件是一个不错的选择。本文主要对儿童绘画软件进行需求分析,设计儿童绘画软件的功能模块,包括基本的色彩、图元编辑、图形文件处理等。在需求分析的基础上,各个模块进行了详细设计实现,最后对整个绘画软件进行运行及测试。该系统采用 Myeclipse,JAVA,Jframe,Jflash作为开发工具。 关键词:JAVA;Jframe;儿童工具;绘画软件摘要IAbstractII1绪论11.1课题背景和意义11.2儿童绘画软件现状11.3本文主要工作22 系统关键技术32.1 Java Swing组件技术32.2 JDK42.2.1 JDK组成42.2.2 JDK常用的包42.2.3 JDK常用工具52.3 JFrame概述52.3.1 JFrame功能概述52.3.2 JFrame特点62.3.3 使用JFrame开发软件72.3.4 JFrame核心价值82.3.5 团队结构对比92.4 Tomcat的功能103 系统需求分析113.1系统功能需求113.2 性能分析113.3 系统质量需求114 儿童绘画软件的功能实现134.1 Java简介134.2 C/S简介134.3 系统功能实现144.4 系统运行截图215 总结与展望24参考文献25致谢261绪论1.1课题背景和意义 美术教育作为促进智力发展、培养各种能力(如观察力、创造力、想象力等)、陶冶情操的重要手段,已为人们所普遍认识和重视。然而,在传统儿童家庭绘画教育中,人们往往通过简单地购买白板、画笔、荧光小画板、或者磁粉画板等,如图 1 所示,来建立儿童的“涂鸦”环境,或者简单地通过购买绘画临摹本和彩笔的方式来让儿童认识各种形状和颜色,并临摹和勾勒物体。由于人们往往不了解儿童美术教育的科学过程,不了解儿童绘画与儿童认知发展之间的密切关系,因此无法将这些美术教育工具科学有序地整合。这就导致家庭儿童绘画教育往往呈现出简单、零散、无序的情形。在家庭儿童绘画教育方面,几乎完全处于放任儿童自我发展的状态。为此,需要开发一款基于JAVA的儿童绘画启蒙软件。该软件包括如下基本功能:1)具备一般绘画软件的色彩、图元编辑、图形文件操作等功能;2)考虑儿童兴趣,加入卡通元素及声音元素等;3)使用几何图形,填充日常生活中的各种图形,包括房子、各种动物和花草、树木等。 同时,为了保证系统的性能,可修性,易用性等重要质量属性,本文将采用Myeclipse平台的JAVA Application开发过程,对儿童绘画软件进行分析和设计。本文主要关注软件体系架构的设计和实现方面,通过构建一个合理的软件体系架构,来满足“涂鸦”在可修改性,性能,易用性等系统的质量属性和商业质量属性方面的要求。结合系统的交互和用户界面的设计,以及软件测试的保证,最终实现儿童绘画软件。1.2儿童绘画软件现状 目前以儿童绘画类教育为主题的应用软件多不胜数。这些应用软件主要有涂鸦、填色、临摹这3个主要功能,虽然都是以教育儿童绘画为前提,但是却没有做到有效引导儿童绘画,它们忽略了儿童的绘画认知过程,没有从基础开始的一个循序渐进的过程,功能没有有效地组合起来,缺乏了真正的教学过程。目前它们主要存在如下问题: 1)在一定程度上,忽视了儿童绘画教育的认知过程,缺少从基础开始的一个循序渐进的过程,因此它们虽然都是以教育儿童绘画为目标,但是不能有效引导儿童绘画; 2)没有通过简单有效的方法将涂鸦、填色和临摹结合起来; 3)系统设计时,许多软件都忽视了系统相关的一个隐含用户,即儿童绘画教育的启蒙老师; 4)缺少明确的认知主题,对绘画以外的其它教育功能重视不够; 5)缺少多通道并行交互能力,交互方式不够丰富; 6)对于儿童绘画的结果,缺少后期处理; 7)缺少一些吸引儿童的卡通元素。儿童绘画软件是在对儿童教育应用进行分析后设计的,它以贴纸的形式将儿童对几何图形的认知,颜色的认知以及对临摹的学习融入其中。它具有以下特点: 1)为儿童营造了一个虚拟的涂鸦空间,包括画室、画笔、颜料、画板、绘画模板、绘画参考等; 2)通过建立某种有意义的主题,例如蝴蝶或昙花的生命过程,来组织儿童涂鸦在认知上由浅入深的心理过程,进而组织儿童的涂鸦绘画过程,包括涂鸦、填色和临摹等活动; 但是经过系统分析,我们发现由于采用了更加丰富的人机交互,以及系统的功能的增加,尤其是系统智能性的提升,会带来系统开发周期明显加长,系统的复杂性明显提高。因此,系统的开发期、修改期和交付期的质量属性成为需要考虑的重要问题,例如,系统的可扩展性,可修改性和系统性能等。另外,JAVA“人机交互指南”,对交互和用户界面方面提出了比较高的要求,而且系统的用户界面和交互需要频繁变更,这需要系统在软件体系结构层面提供良好的可修改性支持,从而保证系统的易用性。 1.3本文主要工作 本文主要研究的内容是如何通过Jframe、Jflash设计一个满足所需的软件体系架构,论文的主要贡献在于:研究并实现了一个具有商业价值的儿童绘画软件系统;2)建立了一个典型的儿童绘画应用软件的 MVC 架构,将为日后围绕此软件架构,开发软件产品线具有重要的意义,是重要的组织资产。 论文组织结构如下: 第一章:绪论。介绍了儿童绘画软件的研究背景及意义。对早期的绘画软件版本功能进行了简单介绍介绍,以及存在的问题。 第二章:系统关键技术介绍,包括jframe、jflash以及JAVA swing等。 第三章:儿童绘画软件的需求分析。从功能需求,质量需求和商业质量属性需求的角度来分析儿童绘画软件。 第四章:儿童绘画软件的详细设计,针对各个功能模块,从数据结构设计,类图设计等方面给出详细的描述。 第五章:总结与展望。总结本文实现的内容,阐释在实现儿童绘画软件过程中吸收的经验以及本系统存在的不足之处。2 系统关键技术2.1 Java Swing组件技术 Java Swing是由Sun公司与Netscape(网景)公司合作创建的新一代图形界面标准。Java Swing技术使得程序能够以一种简洁的“搭积木”的方式将各种图形用户组件组织在一起,形成实际可用的图形用户界面。Java Swing在开发图形用户界面具有着无可比拟的优势,以至于影响到不同开发领域里的GUI的设计与开发。Java Swing技术发展到现在,已经被许多开发人员作为图形开发的首选,成为图形开发的主流。 1)跨平台特性 Java Swing是一种轻量级组件,占用系统资源少,完全由Java开发实现,不再依赖本地平台的图形界面,所以可以在所有平台上保持相同的运行效果,对跨平台支持比较出色。并且跨平台的特性还使得Java Swing开发不会产生与平台相关的bug。 2)MVC设计模式 Java Swing组件都采用MVC ( Model-View-Controler,即模型一视图一控制器)设计模式。Swing把一个组件的处理分为图形部分和数据部分,其中图形部分由编程环境统一处理(V),而数据部分由一个数据处理模型进行处理(M)。从而可以实现GUI组件的显示逻辑与数据逻辑的分离,允许开发人员自定义Render来改变GUI组件的显示外观,提供更多的灵活性。如图2-1为Swing组件的MVC模式示意图。图2-1 Java Swing组件的MVC模式 3)Look And Feel 通过Look and Feel机制,我们可以使程序的设计者任意转换程序的人机界面来对应不同的操作系统平台。由于Swing组件采用MVC模式来维护各组件,所以当组件的外观改变时,对组件的状态信息(由模型维护)没有任何影响。因此,Swing可以使用插拔式外观感觉(Pluggable Look And Feel PLAF)来控制组件外观,使得Swing图形界面在同一个平台上运行时能拥有不同的外观。Swing提供了多种独立于各种平台的LAF (Look And Feel),用户可以在程序运行期间自由选择喜欢的程序外观,从而给Java桌面应用程序开发带来巨大的进步。2.2 JDKJDK (Java Development Kit) 是SunMicrosystems针对Java程序员开发的产品。自从Java推出以来,JDK已经成为使用最广泛的JavaSDK。 JDK是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。JDK是学好Java的第一步。而专门运行在x86平台的Jrocket在服务端运行效率也要比SunJDK好很多。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。2.2.1 JDK组成 JDK包含以下基本组件: 1)Javac:编译器,将源程序转成字节码。 2)jar:打包工具,将相关的类文件打包成一个文件。 3)Javadoc:文档生成器,从源码注释中提取文档。 4)jdb:debugger,查错工具。 5)Java:运行编译后的Java程序(.class后缀的)。 6)appletviewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。 7)Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。 8)Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。 9)Jconsole:Java进行系统调试和监控的工具。 其中Javac是Javac语言编程编译器。Javac工具由Java语言编写的类和接口定义,并将它们编译成字节代码的class文件。Javac可以隐式编译一些没有在命令行中提及的源文件。用verbose选项可跟踪自动编译。2.2.2 JDK常用的包 1)Java.lang:这个是系统的基础类,比如String等都是这里面的,这个包是唯一一个可以不用引入(import)就可以使用的包。 2)Java.io:这里面是所有输入输出有关的类,比如文件操作等。 3)Java.nio:为了完善io包中的功能,提高io包中性能而写的一个新包,例如NIO非堵塞应用。 4)J:这里面是网络有关的类,比如URL, URLConnection等。 5)Java.sql:这个是数据库操作的类,Connection, Statement, ResultSet等。 6)Javax.servlet:这个是JSP, Servlet等使用到的类。2.2.3 JDK常用工具 1)Javac: Java源程序编译器,将Java源代码转换成字节码。 2)Java: Java解释器,直接从字节码文件执行Java应用程序的字节代码。 3)appletviewer.exe: Java applet浏览器。appletviewer命令可在脱离万维网浏览器环境的情况下运行applet。 4)jar: Java应用程序打包工具,可将多个类文件合并为单个JAR归档文件。 5)Javadoc: Java API文档生成器,从Java源程序代码注释中提取文档,生成API文档HTML页。 6)jdb: Java调试器(debugger),可以逐行执行程序,设置断点和检查变量。2.3 JFrame概述2.3.1 JFrame功能概述 JFrame应用软件开发平台是一个基于JavaEE的面向应用软件开发的框架及自动化化代码生成平台。通过使用JFrame应用软件的开发不需再重头做起,只需通过 JFrame自动代码生成工具配置、生成业务代码,并在自动生成的代码基础上简单地补充的业务逻辑即可 。 JFrame降低了软件研发的要求,开发人员也无需掌握太多的高升技术,只需掌握Java基础知识和JavaScript基础知识,就可在平台上进行二次开发。JFrame的目标是:“直接降低软件企业80%的研发成本,缩短项目开发发周期,提升客户满意度”;应用软件开发过程中80%的重复工作将由JFrame来完成,20%的特殊业务逻辑由程序员在 JFrame 应用开发平台基础上补充完善。JFrame应用软件开发平台就如“一套毛胚房”,提供了软件的基本框架和相关基础设施;软件开发团队获取该平台后,可以对其进行“装修”,根据自己的业务需求,在其基础之上进行二次开发,实现满足业务需求的应用软件。JFrame应用软件开发平台作为作基础软件,能够满足您应用软件开发的各种需求,而且特别适合于各类管理信息系统的开发。JFrame与其他软件开发平台不同,JFrame 是面向程序员的,而不是面向最终用户的 。JFrame不承诺可以实现“零代码”开发,因为业务逻辑千变万化,不可能有真正的“零代码”开发平台,但它却是解决软件工程问题的“银弹”。JFrame 应用软件开发平台是一个技术平台,它提供了优美的分层架构和通用的基础功能模块。它采用MVC多层架构技术将整个系统分为展现层、控制层、业务逻辑层、数据操作层等 4 个层次。层与层之间相对独立、界面清晰、接口单一,每一个层次均有较大的灵活性。 1)系统框架:系统框架是整个JFrame的核心,它集成了当前流行技术,向开发人员提供统一、规范、简单、简洁的程序开发模式。同时,系统在各个层次中均采用了缓存技术,大大的提高了系统的性能。 2)基础类库:在JFrame每一个层次中都提供了丰富的基础类库,对各种底层技术、开源技术进行了封装,并向开发人员提供了简单的调用接口。通过JFrame,开发人员不必再化大量的时间去专研技术,只需熟悉并调用这些程序接口即可。此外,天择研发人员,将持续对各类技术进行升入研究,将其封装后,以最简单的形式提高给开发人员使用。 3)公共业务子系统:在一个软件系统中有许多功能是必备且通用的,如:身份认证、安全审计、单点登录、数据字典、系统监控、配置管理、工作流程管理、元数据管理、内容管理、消息发布等功能。JFrame在框架中提高了这些功能,并且提供了相应的接口,程序员可以直接使用或调用其接口对其扩展以使其能满足业务的需求。此外,天择研发人员,还将持续优化、扩展、增加这些通用的功能模块。客户单位程序员也可根据自身需要向天择提出需求,由天择研发人员来完成这部分功能的开发。 4)代码自动化生成工具:正如前面所述,业务功能模块80%的工作是重复的实现业务表的增删改查;JFrame代码自动生成工具可帮助程序实现这些功能。程序员只需做简单的配置,即可生成出简洁的代码。所生成代码功能完整、程序简洁、可维护性高,即使最复杂功能模块,也不会超过 100 行。2.3.2 JFrame特点JFrame是一套基于JavaEE体系结构的软件架构及自动化开发平台,追随当前流行而又成熟的技术,吸其精华弃其糟粕。JFrame包容并吸收了:FreeMarker + EasyUI + SigmaGrid +JQuery + Dwr + Spring + Hibernate 等技术和JFrame研发人员的丰富经验。总体上JFrame具有如下特点: 1)设计精良的系统架构:JFrame吸收了JFrame高级研发人员丰富的经验,设计了高度可扩展、灵活系统架构。 2)丰富的基础类库:JFrame对各种技术、通用功能代码作了高度的封装,开发人员只需调用这些方法即可完成复杂的操作。开发人员开发特殊业务逻辑时,直接引用这些类库即可;如需扩展其功能开发人员只需继承该类扩展其函数即可。 3)技术整合:JFrame系统框架对许多常用开源技术进行了整合、封装;使研发人员不再需要深入专研这些开源技术,调用简单的几行代码就可以实现对相关开源技术的引用。如对FCK或SigmaGrid的引用只需引用几个函数即可。 4)界面美观、整洁、统一:JFrame采用了FreeMarker、EasyUI、SigmaGrid、JQuery 、Ajax、Dwr等展现层技术,使用了EasyUI、SigmaGrid、JQueryUI的漂亮界面组件,采用Dwr技术实现界面无刷新,增强用户体验。同时,天择制定了一整套的界面及操作规范,使基于JFrame开发的系统界面风格统一、美观、整洁。 5)代码自动生成:JFrame提供了代码自动生成工具,开发人员只需做简单的数据库表及字段配置,即可自动生成强大、简洁的业务逻辑代码;一般的业务功能代码无需作二次开发即可满足客户的需求。JFrame代码自动生成工具与 Eclipse 作了完美结合,代码生成后,只需在 Eclipse 中作“刷新”操作,即可在浏览器中访问、测试,也可直接通过 Eclipse 对生存的代码作二次开发。 6)代码量少:JFrame 通过封装、整合已对通用的业务代码(包括所有的增删改查等)做了整合、封装;程序员在编写应用程序时可以充分利用这些代码;进而使程序员只需关注,并引用 JFrame 提供的丰富基础类库来实现特殊业务逻辑代码即可。因此,JFrame 留给开发人员的工作量是很少的。代码量少,意味着基于JFrame的应用系统具有很强的可维护性。 7)性能卓越、稳定:JFrame 系统框架在系统的各个层次采用了针对性的缓存技术、Ajax、页面静态化技术等大大的提升了系统的性能;JFrame 性能优越,一般情况下最终用户可不必采购商业 Web 中间件和数据库,直接使用免费 Tomcat、MySql即可得到,商业中间件的性能,直接为最终用户省下一笔巨大的投入。同时 JFrame系统架构由天择高级研发人员研发,系统每一个算法的实现均通过研发人员深思熟虑,系统瓶颈不会在 JFrame 系统框架中产生。JFrame 系统框架在上市前,已经在各类项目中得到了广泛的应用,甚至有些基础类库已经工作了十几年。 8)可移植性强:JFrame 数据库操作层对 hibernate 技术作了高度封装,使JFrame 可同时支持各种流行数据包括 :Oracle 、DB2 、Sql Server、MySql、JavaDB(Derby)。JFrame 采用 JEE 技术,其本身支持跨操作系统与跨 Web 中间件,研发人员已经在各平台中进行了深入的测试,在各类型客户中得到了检验。 9)代码简洁、规范、可维护性高:JFrame 系统框架定义一套完整的代码规范,整个 JFrame 系统框架的代码均遵循该规范。建议使用本系统框架的开发人员也遵循该规范,以提高系统的可维护性。 10)开发、可扩充:JFrame 是一个可灵活扩展的系统,它是一个工程包,在其工程包中,开发人员可根据自己的需要增加其他功能模块,或者与您现有的资源文件进行整合,充分利用企业现有资产。 11)技术支持:JFrame 是商业系统框架,提供了完整的文档、培训、技术支持、升级等服务。2.3.3 使用JFrame开发软件 使用 JFrame 开发软件是一个很简单的事。开发人员无需掌握各种复杂的软件开发技术(如:spring、hibernate、jquery、dwr 等等技术),也不要从头做起,只需将JFrame 工程包导入到 MyEclipse 开发环境中后,即可使用JFrame 实施快速开发;开发过程可遵循如下几步,如图2-2所示。图2-2 基于JFrame的软件开发步骤 1)登录 JFrame 自动化开发平台,参照业务系统设计文档配置功能模块,生成业务功能代码。 2)在 Eclispse 中作刷新操作,将生成代码装载到MyEclipse工程中,即可打开浏览器测试生成代码。 3)如不满意,可再次修改功能配置,重新生成代码,直到满意为止。 4)如果业务逻辑较为复杂,JFrame生成代码不能够完全满足业务需求需求,也可通过MyEclipse打开代码,对其进行修改(修改时可调用JFrame提供的丰富基础类库,也可用手头上的现有程序资源),直到满意为止。2.3.4 JFrame核心价值 JFrame 应用软件开发平台将带来开发模式的革新,和传统软件开发模式相比,能够大幅降低软件开发技术门槛,减少软件开发投入成本和对开发人员的要求,缩短软件开发周期,提升软件质量。 1)降低企业研发成本:JFrame 软件开发平台,可有效降低对软件开发人员的技术要求,开发人员无需深入的研究各类软件技术;并可通过平台自动生成业务代码;基于JFrame开发的应用程序代码量少、规范、简洁,提升了系统的可维护性。JFrame 的目标是降低软件企业80%的研发成本。 2)缩短开发周期:使用JFrame软件开发平台,将直接缩短软件的开发周期,可以快速制作系统原型,开发人员只需在原型基础之上对业务代码进行二次开发;因此,JFrame将大大缩短软件的开发周期。 3)提升软件质量:JFrame软件开发平台,经许多软件开发团队应用,不断的优化和完善代码和功能,提升其性能与系统的可操作性,因此使用JFrame软件开发平台将大大提升软件质量。 4)减少对核心程序员的依赖:基于JFrame开发的代码结构清晰、代码量少;同时JFrame团队将提供后方技术支撑和完善的开发文档。软件开发团队可完全规避核心程序员离职带来的风险。2.3.5 团队结构对比首先,由于软件开发团队规模的缩小,开发团队可以不用配置专职的项目经理和系统分析设计人员,而可由系统分析设计人员兼任。第二,JFrame 本身已经提供了一个完善的系统架构,已经解决了各种技术问题,提供了各种常用的类库和使用说明文档;开发团队无需再从头做起,只需经稍微培训就会使用团队无需再聘请系统架构师。第三,JFrame 已经解决了各种技术难题,开发团队不再需要解决这些问题,因此团队对高级程序员的需求可以减少。第四,JFrame 提供了自动化代码生成工具,开发人员不再重复的编写、测试雷同的代码,只需通关工具快速生成;而且 JFrame 提供了丰富的类库,开发人员不再需要编写这些复杂的技术代码。第五,JFrame 系统功能稳定、性能卓越,系统测试成本将可直接降低。第六,由于使用 JFrame 开发系统业务代码规范、量少,因此很容易维护,对于不熟悉系统的业务逻辑的人员,也可很快上手对系统进行后期维护。使用Tomcat能够使应用程序的部署变得非常简单,只需在Tomcat的webapps目录下放入WAR,之后Tomcat就会自行检查到该文件,并对其进行解压。一般情况而言,第一次在浏览器中访问这个应用时会非常慢,这是因为Tomcat要把Jsp变换为Servlet文件,之后才会进行编译。当编译结束以后,访问速度会加快。另外Tomcat也提供了一个名叫manager的应用方式。该方式需要用户名和密码来访问这个应用,而在xml文件中通常储存着用户名和密码。用户可以通过这个应用远程进行Web部署和撤销应用。2.4 Tomcat的功能使用Tomcat能够使应用程序的部署变得非常简单,只需在Tomcat的webapps目录下放入WAR,之后Tomcat就会自行检查到该文件,并对其进行解压。一般情况而言,第一次在浏览器中访问这个应用时会非常慢,这是因为Tomcat要把Jsp变换为Servlet文件,之后才会进行编译。当编译结束以后,访问速度会加快。另外Tomcat也提供了一个名叫manager的应用方式。该方式需要用户名和密码来访问这个应用,而在xml文件中通常储存着用户名和密码。用户可以通过这个应用远程进行Web部署和撤销应用。Tomcat不单是一个Servlet,它也拥有传统Web服务器的特点,如处理Html页面。但它处理静态Html效果不如Apache。除此以外,Tomcat给出了Realm支持。Realm可以看作Unix中的group。在Unix里,系统里的一定资源对应着一个group,而一个group不能访问不归属于它的资源。Tomcat用Realm来对不同的应用(可以看作系统资源)赋予给不同的用户(可以看作group),如果用户没有权限则不能访问这个应用。Tomcat一共给出了三种Realm: 1) JNDIRealm,基于LDAP的服务器里储存着用户信息,通过JNDI获取。 2 ) JDBCRealm,数据库里存储着用户信息,通过JDBC来进行验证。 3 ) MemoryRealm, xml文件里储存用户信息,通过Realm方便地验证访问某个应用的客户。事实上,Jsp和Servlet的开发已经基本上涵盖了Tomcat的主要开发,而这两种技术的开发也非常简单,只需要通过普通的文本编辑器进行编写,然后在打包成WAR。 3 系统需求分析3.1系统功能需求 系统通过构建不同的贴纸主题,在每个贴纸主题内部系统提供丰富的由几何形状构成的贴纸。用户可以使用几何贴纸组成这些更复杂的贴纸,不同颜色的几何贴纸需要用户自己创建生成。完成后的主题场景可以进行分享。 结合对儿童教育软件的分析,以及对系统的产品定义,我们确定了系统的主要功能需求包括:一般绘画软件的色彩、图元编辑、图形文件操作等功能;考虑儿童兴趣,加入卡通元素及声音元素等选择贴纸主题。3.2 性能分析相容性:也可称为扩展性,在设计本系统时需要预先留出一些接口,供其他系统进行调用或使用数据。同样,需要预留出相应的接口用于将来进行系统功能扩展和系统升级。共享性:为了达到资源共享的目标,我们要保证系统数据表能与其他系统的交互使用,数据可以通过各系统进行动态维护。安全性:系统中保存有很多重要的数据,这些数据我们要保证其不能外泄,必须从多方面进行安全保护。硬件上我们考虑加装硬件防火墙,关闭不必要的端口,软件上也要安装相应防火墙,及时打上系统补丁,重要数据要进行加密保存。可靠性:系统实现信息化无纸化处理,这里我们要保证数据的正确性和安全性。所以在系统运行中,我们要考虑众多异常情况,确保数据的完整性及原子性。运用相关的容错技术,自动恢复技术保正系统安全有效运行。3.3 系统质量需求 由于质量概念很难抽象定义,质量属性驱动的架构方法采用具体的场景来刻画质量属性,包括:源,制品,环境,刺激,响应,响应度量等方面。下面我们采用这种方法给出系统的质量需求。并用以驱动后续的架构设计。表3-1 可用性场景1属性场景可用性场景源设计人员制品用户界面环境用户界面设计时刺激想要快速有效地学习系统特性响应及时有效地提示;界面元素为用户所熟悉响应度量首次完成任务时间;首次完成任务的犯错率;用户不需要先验知识表3-2 可用性场景2属性场景可用性场景源设计人员制品用户界面环境用户界面设计时刺激想要有效使用系统,快速完成用户任务响应支持在界面中有效导航;支持多通道交互;封装文件系统操作响应度量完成任务平均时间表3-3 可用性场景3属性场景可用性场景源设计人员制品用户界面环境用户界面设计时刺激想要使错误的影响最低,鼓励用户自主探索用户界面响应对关键资源的操作提供撤销还原功能;对不能还原的功能给予提示响应度量错误数量;误操作比例表3-4 可用性场景4属性场景可用性场景源设计人员制品用户界面环境用户界面设计时刺激想要减少记忆负担响应显示用户主任务;界面元素为用户所熟悉响应度量无4 儿童绘画软件的功能实现4.1 Java简介Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE, JavaME, JavaSE)的总称。Java自面世后就非常流行,发展迅速,对C+语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景28。 Java服务器页面是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。 4.2 C/S简介 C/S架构软件有诸多优点,同时存在着一些不足。1)应用服务器运行数据负荷较轻。最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。2)数据的储存管理功能较为透明。在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。3)C/S架构的劣势是高昂的维护成本且投资大。首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。4.3 系统功能实现 本文考虑儿童兴趣,加入了卡通元素及声音元素等。在进入软件时,先播放一段Flash,再进入绘图界面。实现Flash播放功能部分代码如下: public class bfflash extends JFrame public GridLayout layout=new GridLayout(); public GridBagConstraints constraints=new GridBagConstraints(); public flashplayer flashplayer=new flashplayer(); public bfflash() JPanel jp=new JPanel(); jp.setLayout(layout); flashplayer.setFlashfolder("./flash"); flashplayer.setFileName("123.swf"); flashplayer.play(); constraints.fill=GridBagConstraints.BOTH; constraints.weightx=1; constraints.weighty=1; constraints.anchor=GridBagConstraints.CENTER; jp.add(flashplayer.flashPanel); this.setContentPane(jp);/ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setLocation(350,120); this.setSize(750,560); this.setVisible(true); 绘图等几乎所有的操作集成在画布上,实现画布的部分代码如下:public class Mycanvas extends Canvasint x1,y1,x2,y2,x3,y3,r;int d=3;int huabi=1;double x=new double8,y=new double8; int x4=new int8,y4=new int8; Double X=new Double8,Y=new Double8;Color c;Mycanvas()setBackground(Color.white);setSize(800, 850);void setx1(int x1)this.x1=x1;void sety1(int y1)this.y1=y1;void setx2(int x2)this.x2=x2;void sety2(int y2)this.y2=y2;void setx3(int x3)this.x3=x3;void sety3(int y3)this.y3=y3;void setcolor(Color c)this.c=c;void setarc(int d)this.d=d;void setr(int e)r=e;void sethuabi(int huabi)this.huabi=huabi;public void paint(Graphics g,int i)g.setColor(c);Graphics2D g_2d=(Graphics2D)g;BasicStroke bs=new BasicStroke(huabi,BasicStroke.CAP_ROUND,BasicStroke.JOIN_MITER);g_2d.setStroke(bs);if(i=1)g.drawOval(10, 10, 100,100);else if(i=2)g.drawLine(

    注意事项

    本文(基于JAVA的儿童绘画软件的设计与实现.doc)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开