自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1)
  • 资源 (30)
  • 收藏
  • 关注

转载 【转】计算机精品免费视频下载

<br />N多计算机精品免费视频下载,不要别后悔啊<br /><br /><br />《VC知识库5周年精华珍藏版》<br />http://www.ibeifeng.com/read.php?tid=592&u=83<br />C语言经典算法100例(强烈推荐)<br />http://www.ibeifeng.com/read.php?tid=1334&u=83<br />《C++程序调试实用手册》(DeBUGGING C++)<br />http://www.ibei

2010-07-09 14:15:00 687 2

Dom4j 官方jar包及API

Dom4j 官方jar包及API,包括了详细的API说明、示例以及源码、是学习DOM的绝佳工具

2013-03-30

传智博客ExtJs视频教程下载地址

传智博客ExtJs视频教程下载地址(全套)

2013-03-30

桌面小程序

桌面小程序 值得学习

2010-11-07

java版数据结构 很好很强大

java版数据结构 很好很强大 java版数据结构 很好很强大

2010-09-08

java反编译工具 很强大的工具

java反编译工具 很强大 java反编译工具 很强大

2010-09-08

Oracle9i客户端精简版

Oracle9i客户端精简版 特别好用 Oracle9i客户端精简版 特别好用

2010-09-08

数据结构课程设计--图书借阅管理

目 录 摘 要 2 前 言 3 基本算法的实现 4 采用类C语言定义相关的数据类型 4 各模块的伪码算法 5 函数的调用关系图 11 调试分析 12 测试结果 14 源程序(带注释) 18 总 结 29 参考文献 30 致 谢 31 附件Ⅰ 部分源程序代码 32 摘 要 图书的借阅涉及到的操作算法都是以链表或顺序表的基本运算作为基础的,此程序包括:图书添加,图书查询,图书资料删除,借书,还书,增加会员,删除会员,查询会员借书信息输出显示的功能。通过链表存储结构实现数据的输入,实现各子程序过程的演示,对异常输入信息报错。 关键字:图书借阅的演示;图书添加,图书查询,图书删除,借书,还书,增加会员,删除会员,查询会员借书信息 前 言 很多涉及图书借阅的操作的算法都是以链表操作为基础,通过链表的建立,结点添加、查询与删除的演示,方便在学习中更好的理解链表结点的添加、查询、删除的过程。 通过对链表的建立,结点添加、查询与删除的演示,我们在对一些问题进行求解时,会发现有些问题很难找到规律,或者根本无规律可寻。对于这样的问题,可以利用计算机运算速度快的特点,先搜索查找所有可能出现的情况,再根据题目条件从所有可能的情况中,删除那些不符合条件的解。 我们在对一些问题进行求解时,会发现有些问题很难找到规律,或者根本无规律可寻。对于这样的问题,可以利用计算机运算速度快的特点,先搜索查找所有可能出现的情况,再根据题目条件从所有可能的情况中,删除那些不符合条件的解。 在插入结点的过程中,首先要生成一个数据域为X的结点,然后插入在链表中。根据插入操作的逻辑定义,还需要修改结点的指针域。在删除结点的过程中,首先查找到要删除的结点,然后删除,再修改结点的指针域。

2009-09-10

数据结构课程设计---停车场管理

目 录 摘 要 2 前 言 3 正 文 4 1. 采用类C语言定义相关的数据类型 4 2. 各模块的伪码算法 5 3. 函数的调用关系图 7 4. 调试分析 8 5. 测试结果 9 6. 源程序(带注释) 13 总 结 18 参考文献 19 致 谢 20 附件Ⅰ 部分源程序代码 21 摘 要 栈和队列是运算受限的线性表,它们被广泛地应用于各种程序设计中。此程序演示的是停车场管理问题,通过使用顺序栈模拟停车场,链队列模拟车场外的便道,实现车辆入栈,出栈,入队列,出队列,信息输出等功能。 关键字:顺序栈 链队列 停车场 前 言 栈和队列是两种特殊的线性表,

2009-09-10

数据结构课程设计---人事管理

目录 摘要 1 关键词 1 前言 2 正文 3 1 采用类c语言定义相关的数据类型 3 2 各模块的伪码算法 4 3 函数调用关系图 6 4 试调分析 7 5 测试结果 8 6 源程序(带注释) 15 总 结 27 参考文献 28 致 谢 29 附件Ⅰ 部分源程序代码 30 1求二叉树深度的算法 30 2源程序 31 3运行结果 32 摘要 该人事管理系统,可以实现员工各种信息的输入,可分别进行基本信息、学历信息的整体浏览和对某一员工信息的浏览,可实现对员工信息的修改,亦可以进行插入、删除操作,可以按照姓名或员工号进行查询,现该程序只能对员工数。 关键词:插入、删除、查询、统计 前言 该设计是以计算机与通信学院人事管理为背景,设计的一个可以进行简单操作的人事管理系统。按照任务书的要求,一步步的进行设计,最终基本完成了课程设计的要求,由于本人水平有限,有些高要求还未实现,如图操作早作界面。 人事管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 在这次课程设计中先后使用了TC2.0、VC++6.0等开发工具,最后调试、生成可执行文件等是在VC下进行的。 在这个简单的人事管理程序中,使用了链表这个动态数据结构。链表是动态数据结构中最简单的一种。它是一种用前后链指针连接的若干个有限结点的集合,其连接是前一个结点的尾指针指向下一个结点的起始地址,从而连接成的一个链,所以它是一种线性的动态数据结构。在该程序中,采用了动态存储分配技术,这样可以有效地利用有限的内存空间。要实现它,就必须使用malloc()和free()函数。该程序主要使用了链表的插入、删除、查询。除了使用链表,还使用了文件的操作。 正文 1 采用类c语言定义相关的数据类型 struct student /*定义结构体*/ { char num[10]; /*员工号*/ char name[20]; /*员工姓名*/ char sex[4]; /*性别*/ char part[20]; /*所在部门*/ char title[20]; /*职称*/ char ID[20]; /*身份证号*/ char edu[10]; /*学历*/ char pro[10]; /*专业*/ char time[10]; /*毕业时间*/ char school[20]; /*毕业学校*/ }; typedef struct node /*线性单链表的存储结构*/ { struct student data; struct node *next; }Node,*Link;

2009-09-10

数据结构课程设计--排序算法性能分析

目 录 摘 要 1 前 言 2 正 文 3 1. 采用类C语言定义相关的数据类型 4 2. 各模块的伪码算法 5 3. 函数的调用关系图 11 4. 调试分析 11 5. 测试结果 13 6. 源程序(带注释) 16 总 结 28 参考文献 29 致 谢 30 附件Ⅰ 部分源程序代码 31 摘要 排序是计算机程序设计中的一种重要操作。各种部排序算法的时间复杂度分析结果只给出了算法执行时间的阶,或大概执行时间。 关键字:排序,性能分析。 前 言 排序是计算机程序设计中的一种重要操作。它的功能是将一个数据元素的任意序列,重新排列成一个按关键字有序的序列。内部排序的方法很多,但是就其全面性能而言,很难 提出一种被认为是最好的方法,每一种方法都有各自的优缺点,适合在不同的环境下使用。如果按排序过程中依据的不同原则对内部排序方法进行分类,则大致可分为插入排序,交换排序,选择排序,归并排序和记数排序等五类。 这几种排序算法是在顺序存储结构上实现的,因此在排序过程中需要进行大量记录的移动。当记录很大时,时间耗费很大,此时可采用静态链表作存储结构。但是有的排序方法,无法实现表排序。在这种情况下可以进行地址排序,即另设一个地址向量指示相应记录。 正文 1. 采用类c语言定义相关的数据类型 Int整型, char字符型, 2. 各模块的伪码算法 (1) 插入排序伪码算法: Void InsertSort(Splist&L){ For(i=2;i<=L.length;++i) If(LT(L.r[i].key,L.r[i-1].key))  //“《”,须将L.r[i]插入有序子表 { L.r[0]= L.r[i];         //复制为哨兵 L.r[i]= L.r[i-1]; For(j)i-2;LT(L.r[0].key,L.r[j].key);--j) L.r[j+1]= L.r[j];         //记录后移 L.r[j+1]= L.r[0]; //插入到正确位置 } }//InsertSort (2) 希尔排序 Void shllInsert(Splist & L,int dk){ For(i=dk+1;i<=L.length;++i) If(LT(L.r[i].key,L.r[i-dk].key)) { L.r[0]= L.r[i];           //暂存 For(j=i-dk;j>0&<(L.r0].key,L.r[j].key);j-=dk) L.r[j+dk]=L.r[j];       //记录后移 L.r[j+dk]=L.r[0];} //插入 }//shellsort Void shllsort (Splist & L,int data[],int t){ For(k=0;k<t;++k) shllInsert(L,data[k]); }//shellsort

2009-09-10

数据结构课程设计--迷你计算器设计

目 录 摘 要 1 前 言 2 正 文 3 1. 采用类C语言定义相关的数据类型 3 2. 各模块的伪码算法 5 3. 函数的调用关系图 9 4. 调试分析 10 5. 测试结果 11 6. 源程序(带注释) 14 总 结 22 参考文献 23 致 谢 24 摘 要 目前,计算器应用很广泛,本程序是关于这方面的,其主要功能是进行简单的四则运算 ,其特点之一是支持带括号的四则运算;二是用到栈的一些相关操作,不但对操作有提示,还对与异常输入信息报错。 通过该题目的设计过程,可以加深理解线性表及栈的逻辑结构、存储结构,掌握线性表及栈上基本运算的实现,进一步理解和熟练掌握课本中所学的各种数据结构,学会如何把学到的知识用于解决实际问题,培养学生的动手能力。 关键字:堆栈,初始化栈,入栈,出栈。 前 言 很多涉及计算器程序的的算法都是以栈的相关操作为基础,通过计算器的设计,有利于在学习中更好的理解栈及其相关的操作。 通过对计算器计算过程演示,看到了到它的一些性能及相关优势。 我们在写程序时,大框架已成的情况下,仍然发现有些错误很难找到,对于这样的问题,可以利用计算机纠错功能,先运行,再根据题提示修改和完善程序。 在计算器用到的算法中,c语言算法可读性很强,一方面,是因为c语言是高级语言,是面向程序员的语言,二是c语言的功能是很完备的,可以达到事半功倍的效果,和其他语言相比量是比较少。栈的应用使该程序更出色。 正 文 1. 采用类c语言定义相关的数据类型 计算器的演示功能如下: A. 提示输入格式 B. 提示输入 C. 显示输入信息 D. 对有异常的输入报错并重新输入 E. 使用顺序栈实现数据的输入 (1)/*定义堆栈*/ typedef struct{ double data[M]; int top; }Stack; (2)/*初始化堆栈*/ InitStack(Stack *s) { s->top=0; } (3)/*判断栈是否为空*/ int StEmpty(Stack *s) { if(s->top==0) { return 1; } else { return 0; } } (4)/*入栈操作*/ StPush(Stack *s,double x) { if(s->top==M) { printf("The stack is overflow!"); } else { s->top=s->top+1; s->data[s->top]=x; } }

2009-09-10

数据结构课程设计--兰州道路交通网络信息查询

目 录 摘 要 1 前 言 2 正 文 3 1. 采用类C语言定义相关的数据类型 3 2. 各模块的伪码算法 4 3. 函数的调用关系图 6 4. 调试分析 7 5. 测试结果 8 6. 源程序(带注释) 12 总 结 16 参考文献 17 致 谢 18 附件Ⅰ 部分源程序代码 19 摘 要 在交通网络非常发达,交通工具和交通方式不断更新的今天,人们在出行时,不仅关心节省交通费用,而且对里程和所需时间等问题也感兴趣。对于们关心的问题,可用一个图结构和表示交通网络系统,利用计算机建立一个交通咨询系统。 关键词:交通网络,邻接矩阵,最短路径。 前 言 图是一种复杂的非线性结构。在人工智能,工程,数学,物理,化学,计算机学科等领域中,图结构有着广泛的应用。我们用最短路径问题,用一个人们熟悉的交通咨询系统实例来验证迪杰斯特拉算法和费洛伊德得算法。 我们在对一些问题进行求解时,会发现有些问题很难找到规律,或者根本无规律可寻。对于这样的问题,可以利用计算机运算速度快的特点,先搜索查找所有可能出现的情况,再根据题目条件从所有可能的情况中,删除那些不符合条件的解。 设计一个兰州道路交通咨询系统,能让人们咨询从任一个地方顶点到另一地方顶点之间的最短路径。 在计算机中,有多种方法存储图的信息,由于图的结构复杂,使用广泛,一般应根据实际的应用,选择适合的表示方法。常用的图的存储结构有邻接矩阵、邻接多重表和邻接表。

2009-09-10

数据结构课程设计---计算机与通信学院教师工资管理系统

目 录 摘 要 1 序 言 2 正 文 3 1. 采用类C语言定义相关的数据类型 3 2. 各模块的伪码算法 3 3. 函数的调用关系图 14 4. 调试分析 15 5. 测试结果 16 6. 源程序(带注释) 20 总 结 33 参考文献 33 致 谢 34 附件Ⅰ 冒泡排序源程序代码 35 摘要 此说明书专为计算机与通信学院计算机科学与技术专业07年春季学期数据结构课程的课程设计而做的。 我们计算机专业在07年秋季学期开设了专业课:《数据结构(C语言版)》。数据结构使得许多复杂的数据能以一种很简洁而且方便的结构在计算机内存中存在并且被计算机随时访问,它为程序设计提供了相当大的帮助。 选择一个好的数据结构类型,对程序的性能,时间复杂度以及代码的编写都有非常大的帮助。 我们在理论课程结束以后也开始了数据结构课程设计,可以更好的理解数据结构在实际应用中的作用。 关键词: 数据结构、课程设计、计算机与通信学院、教师工资管理。 序言 经过一个学期的学习, 我已经顺利地完成了数据结构这门课程的理论学习阶段。通过一个学期的学习,我发现数据结构作为我们计算机专业的一门必修课程是计算机程序设计的重要理论技术基础、是计算机科学的核心课程。 为了巩固并且实践学习到的理论知识,学校在理论教学结束后随即开始了数据结构课程设计。这是一个检验学习效果并将所学知识灵活运用的实践教学环节,对巩固所学内容,加深理解有着不可估量的作用,所以我要以端正的态度来好好完成这次课程设计。 在本次课程设计当中,我的课题是设计“计算机与通信学院教师工资管理系统”的仿真软件。通过设计任务书中的要求以及介绍,大致确定了主要运用的知识要点是:线性表、查找表的逻辑结构、存储结构,掌握查找、排序等基本运算,以及课本中提及的其他相关算法。 经过自己的一番努力以及指导老师的悉心指导,终于完成了此方针软件的设计,通过这次课程设计,我基本了解并且学习了如何分析研究数据对象的特性、数据的组织方法、如何选取合适的数据逻辑结构和存储结构。这对以后的学习都有着很大的帮助。 以下是这次课程设计的详细资料,希望对大家有所帮助

2009-09-10

数据结构课程设计----哈夫曼树(c语言)

目 录 摘 要 1 前 言 2 正 文 3 1. 采用类C语言定义相关的数据类型 3 2. 各模块的伪码算法 7 3. 函数的调用关系图 13 4. 调试分析 13 5. 测试结果 14 6. 源程序(带注释) 14 总 结 20 参考文献 20 附件Ⅰ 部分源程序代码 21 摘 要 哈夫曼编译码器主要用于通信领域,能够实现数据的快速,有效的传输。它利用哈夫曼树对数据进行编码,形成前缀编码,实现数据的有效压缩存放。然后又通过某种遍历实现译码,从而达到快速远距离通信的目的。 关键词: 哈夫曼树;前缀编码;译码 前 言 利用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站写一个哈夫曼码的编/译码系统。通过该题目的设计过程,可以加深理解树及二叉树的逻辑结构、存储结构,掌握树及二叉树上基本运算的实现。进一步理解和熟练掌握课本中所学的各种数据结构,学会如何把学到的知识用于解决实际问题,培养学生的动手能力。

2009-09-10

数据结构课程设计---飞机订票系统模拟实现(c语言)

目 录 摘 要 1 前 言 2 基本算法的实现 3 采用类C语言定义相关的数据类型 3 各模块的伪码算法 4 函数的调用关系图 6 调试分析 7 测试结果 8 源程序(带注释) 11 总 结 22 参考文献 23 致 谢 24 附件Ⅰ 部分源程序代码 25 摘 要 该设计要求对飞机航班信息进行排序和查找。可按航班的班号、起点站、到达站、起飞时间以及到达时间等信息时行查询。对于本设计,主要是通过线性表的逻辑结构、存储结构,线性表及队列上基本运算实现的。可以让我们学会如何把学到的知识用于解决实际问题。 关键词: 航班信息;客户信息;链式存储结构; 前 言 飞机在现今的社会中已是越来越重要了,人们在旅游、工作、学习等生活中对飞机几乎是不可缺少了。而由乘坐飞机所引起的问题也深入到了计算机领域,飞机订票系统就是解决这种问题的一种途径。如人们常常在订票前要对问很多信息(飞机的起落时间,机票的价格,乘坐的人数以及是否有票等等)。这个系统主要是由线性表的链式存储结构以及队列的存储结构来存储航班信息与客户信息的。它的主要功能:1、是录入航班信息,其调用函数为—insert_airline;2、查询航线(航班号,飞机号,日期,航班容量,余票数),其调用函数为:search_air;3、订票(根据客户提供的情况,办理订票手续),其调用函数为:book_air;4、承办退票业务(根据客户提供的情况,办理退票手续),其调用函数为:del_cus;5、删除已有航班信息 ,其调用函数为:del_airline . 设计这样的一个系统可以很快的查出人们所需要的信息,能省去很多的步骤,而且还非常的准确。

2009-09-10

计算机网络课程设计 计算机网络课程设计

目 录 摘 要 1 关键词: 计算机网络;网络规划;网络设计 ;校园网 1 一. 前言 2 二. 学校描述 3 三. 需求分析 4 3.1 带宽 4 3.2 子网与VLAN规划 4 3.3 实现的信息服务 4 3.4 应用程序 5 3.5 存储系统分析 5 3.6 系统及数据安全分析 5 3.7 QoS 5 3.8 网间隔离 6 四. 拓扑图及方案整体描述 7 4.1 主干网传输方案设计 7 4.2 Internet接入方案 7 4.3 远程访问支持 8 4.4 子网划分 9 4.5 网间隔离方案设计 12 4.6存储方案 13 4.7 设备选型 13 4.8 软件 14 4.9 信息服务方案 14 4.10 综合布线方案 15 4.10.1 结构化布线设计 15 4.10.2 综合布线系统 16 4.10.3设计目标 17 4.10.4工作区设计 18 4.10.6主干线区设计 19 4.10.7子配线间设计 20 4.10.8主配线间设计 21 五. 网络管理 22 5.1网络管理 22 5.2远程监控 22 5.2.1 制作客户端安装盘 22 5.2.2 配置客户机 23 5.2.3远程控制 23 5.3网络安全 24 六. 系统主要设备报价 26 七. 网络测试及协议数据包分析 27 参考资料 31 致谢 32 摘 要 当今的世界正从工业化社会向信息化社会转变。一方面,社会经济已由基于资源的经济逐渐转向基于知识的经济,人们对信息的需求越来越迫切,信息在经济的发展中起着越来越重要的作用,信息的交流成为发展经济最重要的因素。另一方面,随着计算机、网络和多媒体等信息技术的飞速发展,信息的传递越来越快捷,信息的处理能力越来越强,信息的表现形式也越来越丰富,对社会经济和人们的生活产生了深刻的影响。网上教育以受众广、投入低、不受师资的校舍等条件限制、容易开展高水平教育、教学质量相对容易保证等特点而受到教育界的广泛重视,目前国内一些重事业高校的网站已经开展这方面的应用。但现在中小学的校园网正在建设阶段。中小学建设校园计算机网络的根本动机,就是提高学校的管理效益和教学质量。而并非只有大量的资金投入,建设具有规模的计算机网络,才能开展学校的教育手段。架设满足学校应用需求的小的局域网络、教学网络同样也能发挥大的教育效益。 网络是信息时代的产物,互联网本身以及各种基于互联网的应用都成了学校教学的内容,这就需要一个平台支持实施这种教学活动.校园网就是利用学校原有的内部局域网, ,通过架设WEB服务器、FTP服务器、论坛、在线流媒体等,从而组建起一个校园网络,促进学校教育的发展. 关键词: 计算机网络;网络规划;网络设计 ;校园网 一. 前言 在二十一世纪的现代信息社会中,对于网络办公和学习是越来越受到重视很运用,几乎在全球的绝大多数学校都组建了网络环境。在通信设备不断普及的今天,原始的教学方式已经不能完全满足我们学习和生活的需求。为了提高教育和学习的质量,所有师生对网络办公和学习的需求是迫在眉睫,所有人都希望在校园里的都能上网络。正所谓大有大的难处,校园网一般具有较大的规模,它不是网络设备的简单组合,而是一种整体的校园系统。校园网必须满足校园扩展需要,确保高吞吐量、安全性。在很多时候,由于校园网络的种种问题的产生,以及学校对网络的需求随着学校的扩招却迅速增大。因此迫切需要在保障学生的学习和生活不受到影响的前提下,通过引进先进的组网模式,改造或者重新规划建设校园网络,以满足学校对网络的需求,保障学校的正常运转,同时实现教育信息化的目标。要求全新设计的校园网络能够最大限度的保护现有网络投资,以最低的造价实现信息化校园网络的标准,以满足日益增长的校园建设需求;建成后的网络应易于应用、管理和维护;施工过程中不能影响学校的正常运转,所提供的方案最好具有推广的价值,或者能够有效的降低网络接入与运行费用,保障大多数学生、教职员工都能够有条件接入、使用网络,提高学习与工作效率,实现教育的信息化。鉴于现在大多数校园都已经普及了有线网络,为了保障投资和提高网络的利用率以及最大限度的保障网络的健壮性,我在下面的方案中主要是以校园网组网为主。为所有师生提供最好的网络接入方式。

2009-09-10

Struts in Action 中文版.pdf

Struts in Action 中文版.pdfStruts in Action 中文版.pdfStruts in Action 中文版.pdfStruts in Action 中文版.pdf

2009-09-07

Eclipse中文教程.pdf

Eclipse中文教程.pdfEclipse中文教程.pdfEclipse中文教程.pdfEclipse中文教程.pdfEclipse中文教程.pdfEclipse中文教程.pdfEclipse中文教程.pdfEclipse中文教程.pdf

2009-09-07

SQL循序渐进教程.chm

SQL循序渐进教程.chmSQL循序渐进教程.chmSQL循序渐进教程.chmSQL循序渐进教程.chmSQL循序渐进教程.chmSQL循序渐进教程.chm

2009-09-07

spring-api 官方参考文档.chm

spring-api 官方参考文档.chmspring-api 官方参考文档.chmspring-api 官方参考文档.chmspring-api 官方参考文档.chmspring-api 官方参考文档.chm

2009-09-07

Java2参考大全(第四版).pdf

Java2参考大全(第四版).pdfJava2参考大全(第四版).pdfJava2参考大全(第四版).pdfJava2参考大全(第四版).pdfJava2参考大全(第四版).pdf

2009-09-07

Hibernate3.2官方中文参考手册.pdf

Hibernate3.2官方中文参考手册.pdf Hibernate3.2官方中文参考手册.pdf Hibernate3.2官方中文参考手册.pdf

2009-09-07

struts2.0中文帮助手册.chm

struts2.0中文帮助手册.chm struts2.0中文帮助手册.chm struts2.0中文帮助手册.chm

2009-09-07

Myeclipse+Hibernate+Structs 集成开发教程

目的:建立一个SPRING+STRUTS+HIBERNATE的登录注册WEB程序。 环境与工具:MYECLIPSE+TOMCAT+MYSQL 步骤一:建立TOMCAT工程mySSH,在\WEB-INF\LIB目录下COPY 上 3个框架所需要的包,构建JAVA路径。 建立包结构com.neusoft.vo;com.neusoft.action;com.neusoft.dao;com.neusoft.dao.impl;com.neusoft.service;com.neusoft.service.impl; 用MYSQL在TEST数据库里建立表user;字段为id,user,password 步骤二:在WEB-INF目录下建立web.xml 如下: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name>actionServlet</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <init-param> <param-name>debug</param-name> <param-value>3</param-value> </init-param> <init-param> <param-name>detail</param-name> <param-value>3</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>actionServlet</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>/jsp/login.jsp</welcome-file> </welcome-file-list> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-config.xml</param-value> </context-param> </web-app> 步骤三:在WEB-INF目录下建立STRUTS配置文件struts-config.xml如下: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"> <struts-config> <form-beans> <form-bean name="user" type="com.neusoft.vo.User" /> </form-beans> <action-mappings > <action path="/input" type="org.apache.struts.actions.ForwardAction" parameter="/jsp/regedit.jsp" /> <action path="/regeditte" type="org.springframework.web.struts.DelegatingActionProxy" name="user"> <forward name="success" path="/jsp/success.jsp"></forward> <forward name="input" path="/jsp/regedit.jsp"></forward> </action> <action path="/login" type="org.springframework.web.struts.DelegatingActionProxy" name="user"> <forward name="success" path="/jsp/success.jsp"></forward> <forward name="login" path="/jsp/login.jsp"></forward> </action> </action-mappings> <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"><set-property property="contextConfigLocation" value="/WEB-INF/spring-config.xml"/> </plug-in> </struts-config> 步骤四:在WEB-INF目录下建立SPRING配置文件spring-config.xml如下: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- 定义数据源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName"> <value>com.mysql.jdbc.Driver</value> </property> <property name="url"> <value>jdbc:mysql://localhost/test</value> </property> <property name="username"> <value>root</value> </property> <property name="password"> <value>mysql</value> </property> </bean> <!-- 和HIBERNATE联系起来 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref local="dataSource" /> </property> <property name="mappingResources"> <value>com/neusoft/vo/User.hbm.xml</value> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop> <prop key="hibernate.show_sql">true</prop> </props> </property> </bean> <!-- 进行事务处理 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref local="sessionFactory" /> </property> </bean> <!-- 进行DAO代理 --> <bean id="userDAOProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> <property name="transactionManager"> <ref bean="transactionManager" /> </property> <property name="target"> <ref local="userDAO" /> </property> <property name="transactionAttributes"> <props> <prop key="insert*">PROPAGATION_REQUIRED</prop> <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop> <prop key="is*">PROPAGATION_REQUIRED,readOnly</prop> </props> </property> </bean> <bean id="userDAO" class="com.neusoft.dao.impl.UserDAOImpl"> <property name="sessionFactory"> <ref local="sessionFactory" /> </property> </bean> <bean id="rege" class="com.neusoft.service.impl.RegeditImpl"> <property name="userDAO"><ref bean="userDAOProxy"/> </property> </bean> <bean name="/regeditte" class="com.neusoft.action.RegeditAction" > <property name="regedit"><ref bean="rege" /> </property> </bean> <bean id="login" class="com.neusoft.service.impl.LoginImpl"> <property name="userDAO"><ref bean="userDAOProxy"/> </property> </bean> <bean name="/login" class="com.neusoft.action.LoginAction" > <property name="login"><ref bean="login" /></property></bean> </beans> 步骤五:在WEB-INF\src建立 LOG4J配置文件log4j.properties # Configure logging for testing: optionally with log file log4j.rootLogger=DEBUG, stdout # log4j.rootLogger=WARN, stdout, logfile log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n log4j.appender.logfile=org.apache.log4j.FileAppender log4j.appender.logfile.File=spring.log log4j.appender.logfile.layout=org.apache.log4j.PatternLayout log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n 文章出处:http://www.diybl.com/course/3_program/java/javaxl/2008824/137247.html

2009-08-24

Struts2入门.pdf

Struts2 一、Struts2配置文件 Struts2相关的配置文件有web.xml,struts.xml,struts.properties, struts-default.xml,velocity.properties,struts-default.vm。其中web.xml,struts.xml是必须的,其它的配置文件可选择。它们在web应用中的功能如下: web.xml:包含所有必须的框架组件的web部署描述符。 Struts.xml:配置包含result/view类型、action映射、拦截器等的Struts2的主要配置文件。 Struts.properties:配置struts2的框架属性。 Struts-default.xml:在文件在struts-action-x.x.jar中,该文件是应该被包含在struts.xml中的缺省配置。 Welocity.properties:重写了velocity的配置文件。 Struts-default.vm:相对于velocity的缺省配置。 二、Struts2配置元素 Struts2核心的配置文件是缺省的struts.xml。 必要的时候,缺省的配置文件可以包含其它的配置文件;struts文件可以放入jar中,并自动插入应用程序,这样每个模块可以包含自己的配置文件并自动配置。在Freemarker和Velocity模块中,模板也能从classpath中加载,所以整个模块可以作为一个简单的jar文件被包含。 Struts.xml配置文件可以包含Interceptor、Action类和Results。 Struts.xml配置元素说明: 1、Packages Packages:packages把actions、results、results types、interceptors 和interceptor-stacks组装到一个逻辑单元中,从概念上讲,packages就像一个对象,可以被其它子包从写,而且可以拥有自己独立的部分。 Name属性是packages的必填元素,它作为一个关键字被后边的包引用;extends元素是可选的,它允许包扩展一个和多个前边定义的包。注意, struts.xml文件是至上而下处理的,所有被扩展的包,需要在扩展包前定义。 Abstract元素是可选的,它可以申明一个不包含actions的配置文件。 2、Namespace Namespace元素把actions细分到逻辑模块,每一个namespace都有自己的 前缀(prefix),namespace避免了action之间的名字冲突,当前缀出现在URI中时,这些标签都是名字空间感知的(“namespace aware”),所以这些namespace prefix不必嵌入到表单或连接中。 Default的namespace是一个空字符串“”,如果在指定的配置文件中,没有找到action,缺省的namespace也会被查找。 Local/global策略允许应用程序在action “extends”元素层次结构之外,有全局的action配置。缺省的namespace也可以不在package中申明。 Namespace prefix可以注册为java的申明式安全,以确保授权的用户才能访问namespace的资源。 Root namespace(“/”)也被支持,root就是当直接请求context path的时候的namespace。 [个人理解:namespace的用法就像struts1.x中的path一样,只不过它在package中什么路径,而在action中申明action名子罢了] 3、Include Include元素使得框架能应用“divide and conquer”来配置文件。被include 的每个配置文件必须和struts.xml有一样的格式,一个大的项目可以采用这样方式来组织程序模块。 Include元素也可以和package交替出现,框架将按照顺序加载配置文件。 4、Interceptor configuration Interceptor允许应用程序在Action方法执行前后定义执行代码, Interceptor在应用程序开发中十分重要,对于Interceptor有许多用例,如validation, property population, security, logging, 和profiling。 Interceptor被定义为一个Java类,Interceptor也可以组装成Interceptor-stack,他们将按照定义的顺序执行。 在struts-default.xml中定义了一些缺省的Interceptor-stack,以便框架能很好地运行。 5、Action Action是框架的“工作单元”。Action可以指定一个Interceptor-stack、 一序列的return type和一序列的异常处理,但只有name属性是必须的。

2009-08-21

仓库管理系统 HTML页面设计

仓库管理系统 HTML页面设计 基本信息模块:为管理员提供实现对客户信息、供货商信息、货品信息以及仓库信息的管理维护,包括对信息查询、添加、修改和删除等操作。 ☆权限管理模块:为仓库部门的其他两个角色(搬运工、货检员)提供权限管理。 ☆入库信息管理模块:为管理员提供查询、添加、修改和删除入库流向单的操作、其中添加和删除操作后的入库流向单要交由管理部审核

2009-08-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除