基于ssh社会综合服务人口管理系统设计与实现(编辑修改稿)内容摘要:

Java SE 版本中, Java 又引入了泛型编程( Generic Programming)、类型安全的枚举、不定长参数和自动装 /拆箱等语言特性。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。 它首先将源代码编译成二进制字节码( bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了 “一次编译、到处执行 ”的跨平台特性。 不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 但在 J2SE 发布后, Java 的执行速度有了大幅提升。 与传统程序不同,Sun 公司在推出 Java 之际就将其作 为一种开放的技术。 全球数以万计的 Java 开发公司被要求所设计的 Java 软件必须相互兼容。 “Java 语言靠群体的力量而非公司的力量 ”是 Sun 公司的口号之一,并获得了广大软件开发商的认同。 这与微软公司所倡导的注重精英和封闭式的模式完全不同。 Sun 公司对 Java 编 6 程语言的解释是: Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。 Java 平台是基于 Java 语言的平台。 这样的平台目前非常流行,因此微软公司推出了与之竞争的 .NET 平台以及模仿 Java 的 C语言。 Java 与 C/C++的差异 熟悉 C 语言和 C++语言的读者一定想搞清楚这个问题,实际上, Java 确实是从 C 语言和 C++语言继承了许多成份,甚至可以将 Java 看成是类 C 语言发展和衍生的产物。 比如 Java 语言的变量声明,操作符形式,参数传递,流程控制等方面和 C 语言, C++语言完全相同 .尽管如此, Java 和 C 语言, C++语言又有许多差别,主要表现在如下几个方面: (1) Java 中对内存的分配是动态的,它采用面向对象的机制,采用运算符 new为每个对象分配内存空间,而 且,实际内存还会随程序运行情况而改变。 程序运行中 Java 系统自动对内存进行扫描,对长期不用的空间作为 ”垃圾 ”进行收集,使得系统资源得到更充分地利用 .按照这种机制,程序员不必关注内存管理问题,这使 Java 程序的编写变得简单明了,并且避免了由于内存管理方面的差错而导致系统出问题。 而 C 语言通过 malloc()和 free()这两个库函数来分别实现分配内存和释放内存空间的, C++语言中则通过运算符 new 和 delete 来分配和释放内存 .在 C 和 C++这种机制中,程序员必须非常仔细地处理内存的使用问题。 一方面,如果对己释 放的内存再作释放或者对未曾分配的内存作释放,都会造成死机;而另一方面,如果对长期不用的或不再使用的内存不释放,则会浪费系统资源,甚至因此造成资源枯竭。 (2) Java 不在所有类之外定义全局变量,而是在某个类中定义一种公用静态的变量来完成全局变量的功能。 (3) Java 不用 goto 语句,而是用 trycatchfinally 异常处理语句来代替 goto语句处理出错的功能。 (4) Java 不支持头文件,而 C 和 C++语言中都用头文件来定义类的原型,全局变量,库函数等,这种采用头文件的结构使得系统的运行维 护相当繁杂。 (5) Java 不支持宏定义,而是使用关键字 final 来定义常量,在 C++中则采用宏定义来实现常量定义,这不利于程序的可读性。 (6) Java 对每种数据类型都分配固定长度。 比如,在 Java 中, int 类型总是32 位的,而在 C 和 C++中,对于不同的平台,同一个数据类型分配不同的字节数,同样是 int 类型,在 PC 机中为二字节即 16 位,而在 VAX11 中,则为 32位 .这使得 C 语言造成不可移植性,而 Java 则具有跨平台性(平台无关性)。 7 (7) 类型转换不同。 在 C 和 C++中,可通过指针进行任意的类 型转换,常常带来不安全性,而在 Java 中,运行时系统对对象的处理要进行类型相容性检查,以防止不安全的转换。 (8) 结构和联合的处理。 在 C 和 C++中,结构和联合的所有成员均为公有,这就带来了安全性问题,而在 Java 中根本就不包含结构和联合,所有的内容都封装在类里面。 (9) Java 不再使用指针。 指针是 C 和 C++中最灵活,也最容易产生错误的数据类型 .由指针所进行的内存地址操作常会造成不可预知的错误,同时通过指针对某个内存地址进行显式类型转换后,可以访问一个 C++中的私有成员,从而破坏安全性。 而 Java 对指 针进行完全地控制,程序员不能直接进行任何指针操作。 (10) 避免平台依赖。 Java 语言编写的类库可以在其它平台的 Java 应用程序中使用,而不像 C++语言必须依赖于 Windows 平台。 在 B/S 开发方面, Java 要远远优于 C++。 MySQL MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。 Mysql 是最流行的关系型数据库管理系统,在 WEB 应用方面MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统 )应用软件之一。 MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。 MySQL 软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。 由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。 与其他的大 型数据库例如 Oracle、 DB SQL Server 等相比, MySQL 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。 对于一般的个人使用者和中小型企业来说, MySQL 提供的功能已经绰绰有余,而且由于 MySQL 是开放源码软件,因此可以大大降低总体拥有成本。 Linux 作为操作系统, Apache 和 8 Nginx 作为 Web 服务器, MySQL 作为数据库, PHP/Perl/Python 作为服务器端脚本解释器。 由于这四个软件都是免费或开放源码软件( FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起 一个稳定、免费的网站系统,被业界称为“ LAMP“组合。 之前的默认数据库引擎,最为常用。 拥有较高的插入,查询速度,但不支持事务 InnoDB 事务型数据库的首选引擎,支持 ACID 事务,支持行级锁定 , MySQL 起成为默认数据库引擎 BDB 源自 Berkeley DB,事务型数据库的另一种选择,支持 COMMIT 和ROLLBACK 等其他事务特性 Memory 所有数据置于内存的存储引擎,拥有极高的插入,更新和查询效率。 但是会占用和数据量成正比的内存空间。 并且其内容会在 Mysql 重新 启动时丢失 Merge 将一定数量的 MyISAM 表联合而成一个整体,在超大规模数据存储时很有用 Archive 非常适合存储大量的独立的,作为历史记录的数据。 因为它们不经常被读取。 Archive 拥有高效的插入速度,但其对查询的支持相对较差 Federated 将不同的 Mysql服务器联合起来,逻辑上组成一个完整的数据库。 非常适合分布式应用 Cluster/NDB 高冗余的存储引擎,用多台数据机器联合提供服务以提高整体性能和安全性。 适合数据量大,安全和性能要求高的应用 CSV: 逻辑上由逗号分割数据的存储引擎。 它会在 数据库子目录里为每个数据表创建一个 .CSV 文件。 这是一种普通文本文件,每个数据行占用一个文本行。 CSV 存储引擎不支持索引。 BlackHole :黑洞引擎,写入的任何数据都会消失,一般用于记录 binlog 做复制的中继 EXAMPLE 存储引擎是一个不做任何事情的存根引擎。 它的目的是作为MySQL 源代码中的一个例子,用来演示如何开始编写一个新存储引擎。 同样,它的主要兴趣是对开发者。 EXAMPLE 存储引擎不支持编索引。 另外, Mysql的存储引擎接口定义良好。 有兴趣的开发者可以通过阅读文档 9 编写自己的存储引擎。 B/S 三层构架 本管理系统采用 B/S 模式,服务器采用著名的 web 服务器端软件 apache,该 服务器有着良好的跨平台性和安全性,可以运行在包括 windows、 linux、 mac等操作系统上。 用户客户端使用各种浏览器都能够进行正常的浏览和操作。 需要注意的是在程序的开发过程中,程序和路径相关的要考虑到不同的操作系统的文件目录结构。 B/S 结构,即 Browser/Server(浏览器 /服务器 )结构,就是只安装维护一个服务器 (Server),而客户端采用浏览器 (Browse)运行软件。 它是随着 Inter 技术的兴起,对 C/S 结构的一种变化和改进。 主要利用了不断成熟的 WWW 浏览器技术,结合多种 Script 语言 (VBScript、 JavaScript 等 )和 ActiveX 技术,是一种全新的软件系统构造技术。 B/S 三层体系结构采用三层客户 /服务器结构,在数据管理层 (Server)和用户界面层 (Client)增加了一层结构,称为中间件 (Middleware),使整个体系结构成为三层。 三层结构是伴随着中间件技术的成熟而兴起的,核心概念是利用中间件将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次。 三个层次的划分是从逻辑上分的,具体的物理分法可以有多种组合。 中间件作为构造三层结构应用系统的基础平台,提供了以下主要功能:负责客户机与服务器、服务器与服务器间的连接和通信;实现应用与数据库的高效连接;提供一个三层结构应用的开发、运行、部署和管理的平台。 这种三层结构在层与层之间相互独立,任何一层的改变不会影响其它层的功能。 图 B/S 三层体系结构 在 B/S 体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。 而其余 10 如 数据请求、加工、结果返回以及动态网页生成、对数据库的访问和应用程序的执行等工作全部由 Web Server 完成。 随着 Windows 将浏览器技术植入操作系统内部,这种结构已成为当今应用软件的首选体系结构。 显然 B/S 结构应用程序相对于传统的 C/S 结构应用程序是一个非常大的进步。 B/S 三层体系结构的主要优点: •B/S 模式提供灵活的信息交流和信息发布服务。 B/S 模式借助 Inter 强大的信息发布与信息传送能力可以有效地解决企业、高等学校内部的大量不规则的信息交流 •可共享性。 单个应用服务器可以为处于不同平台的 客户应用程序提供服务,在很大程度上节省了开发时间和资金投入; •较好的安全性。 在这种结构中,客户应用程序不能直接访问数据,应用服务器不仅可控制哪些数据被改变和被访问,而且还可控制数据的改变和访问方式。 •三层模式成为真正意义上的“瘦客户端”,客户端计算机不需要很高的硬件配置,也无需特殊的软件配置要求,只要有 web 浏览器就可以使用系统。 •B/S 模式提供了一致的用户界面: B/S 模式的应用软件都是基于 Web 浏览器的,这些浏览器的界面都很相似。 对于无用户交互功能的页面,用户接触的界面都是一致的,从而可以降低软件 的培训费用。 •在 B/S 模式下,外部的用户亦可通过通用的浏览器进行访问。 •B/S 模式的结构易于扩展:由于 W。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。