摘 要
随着Internet的发展,进入信息时代后快速获得网络共享资源成为很简单的事情,人们对互联网也有了很大的依赖性。人们甚至希望只轻松点击鼠标就可以得到自己想要的东西。比如,一些专业的论坛提供了很多相关资料以方便人们阅读或了解;还有更多的人希望能够在网上就能保存他们喜欢听得音乐、好看的图片、喜欢的电影等等。人们在上网时再也不单是打开浏览器来浏览网页,他们更喜欢将这些网址收藏起来。
资源的不断丰富和网上联系人的不断增多,许多网络用户都需要一种对网络的各种资源和网上联系人进行管理的平台软件。网络百宝箱是一种简易的集合平台,本系统主要针对个人以及中小型企业办公而设计,包括了用来记录网上联系人的通讯录,用来记录日常事情的记事本、用来收藏网络资源的收藏夹和用来保护用户上传文件资源储藏箱,特别适合作为企业为员工、网站为客户提供的便利的网络办公平台。
本系统在设计这个网络百宝箱时候使用JSP作为前台开发,使用ACCESS作为后台数据库,以便用户在登陆期间能便利地利用到网站的资源。
关键词 JAVA;JSP;网络百宝箱;
Abstract
With the Internets development, after entering the information age, access to network shared resources quickly become a very simple thing, people on the Internet is also a great dependence. It is even hoped that only the clicking of the mouse you can easily get what she wants. For example, a forum for professionals to provide a lot of relevant information to facilitate the people to read or understand; There are more people who want to preserve the Internet will be able to hear music they like, good-looking pictures, favorite movies and so on. When people no longer in the Internet is not only open the browser to browse the Web, they are more likely to include those URLs away.
Resources to constantly enrich and increasing contacts online, many Internet users need a variety of network resources and online contact management platform software. Network Box is a simple collection of platforms, the system is mainly targeted at individuals and small and medium-sized enterprises and the design office, including the contacts used to record the address book online, used to record day-to-day affairs of the notebook, for collection of network resources favorites, and used to protect storage resources users upload box, especially suitable for enterprises for their employees, the site offers customers the convenience of the office of the network platform.
In the design of the system when the network box using JSP as a front to develop, use ACCESS as a background technical support to users during the visit more convenient to use the resources of the site.
Key words JAVA,JSP, Network Box
目 录
TOC 1-3 摘 要 I
Abstract II
第1章 绪 论 3
1.1 课题背景 3
1.2 课题意义和功能 3
1.3 开发环境 4
1.4 平台搭建 4
第2章 需求分析 6
2.1 用户注册及登陆功能分析 6
2.2 通讯录功能分析 6
2.3 记事本功能分析 7
2.4 收藏夹功能分析 8
2.5 储藏箱功能分析 8
2.6 管理员管理功能分析 9
第3章 系统概要设计 10
3.1 模块划分和系统流程 10
3.1.1 模块划分 10
3.1.2 系统流程 10
3.2 系统E-R图 11
3.3 数据库设计 13
第4章 系统详细设计与实现 17
4.1 用户登录模块 17
4.2 通讯录模块 18
4.3 记事本模块 19
4.4 收藏夹模块 20
4.5 储藏箱模块 21
4.6 管理员管理模块 23
第5章 系统的测试 25
5.1 系统的测试方法简介 25
5.2 系统的测试 25
结 论 27
致 谢 28
参考文献 29
附 录 30
基于JSP的网络百宝箱的设计与实现
第1章 绪 论
1.1 课题背景
21世纪,已经进入信息社会。随着电脑和网络的普及,人们的生产生活正发生着翻天覆地的变化。电脑网络不仅改变了人类获取知识、信息的方式,它将完全改变人类社会的社会经济结构,改变人类社会的生产、分配、消费方式,电脑网络技术已经成为人类生产、生活不可或缺的基础设施。从网络上搜寻和获取自己需要的知识已经成为大多数人的选择。因而,以方便用户为目的,把各种办公、应用小软件以及个人喜好的网络资源集合起来的工具——网络百宝箱得到了蓬勃的发展。
现在网络上也出现了各种各样的百宝箱,但是对网络的各种资源和网上联系人进行管理特别是适合企业为员工提供的百宝箱却很少。
1.2 课题意义和功能
网络百宝箱是一种简易的集合平台,本系统主要针对个人以及中小型企业办公而设计,包括了用来记录网上联系人的通讯录,用来记录日常事情的记事本、用来收藏网络资源的收藏夹和用来保护用户上传文件资源储藏箱。特别适合作为企业为员工、网站为客户提供的便利的网络办公平台。
本系统采用JSP技术,JSP的设计目标主要是提供一种更为简便、有效的动态网页编写手段,并且增强网页程序的独立性、兼容性和重用性。该技术使得本系统拥有更高的效率和安全性,而且具备了一般Java程序的跨平台的特性,换句话说,就是拥有程序的对平台的独立性,可以运行于几乎所有的平台。
可以预见,随着网络的普及以及JSP技术越来越多的应用,基于JSP技术的网络百宝箱对服务于用户方面会做出越来越大的贡献。
1.3 开发环境
1、硬件设施:
计算机:CPU AMD 4200+ 2.21GHz,内存1G,硬盘80G,显卡,1000M网卡,17显示器。
2、软件环境:
操作系统:Windows XP;
数据库:Access;
Java开发工具包:JDK1.5.0_05;
开发工具:Eclipse3.2;
Web服务器:Tomcat5.0。
JAVA是一种面向对象的语言,允许开发人员生成独立于平台的应用程序。因为JAVA是一种解释性语言,所以用它编写的程序可以在许多的硬件平台运行而无须重新编译。
JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现。因为Tomcat 技术先进、性能稳定,成为目前比较流行的Web 应用服务器。
Eclipse是一个开源的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件构建开发环境。Eclipse框架的这种灵活性来源于其扩展点。它们是在XML中定义的已知接口,并充当插件的耦合点。扩展点的范围包括从用在常规表述过滤器中的简单字符串,到一个Java类的描述。任何Eclipse插件定义的扩展点都能够被其它插件使用,反之,任何Eclipse插件也可以遵从其它插件定义的扩展点。除了由扩展点定义的接口外,插件不知道它们通过扩展点提供的服务将如何被使用。Eclipse的目的不仅仅是成为专门开发Java程序的IDE,根据Eclipse的体系结构,通过开发插件,它能扩展到任何语言的开发。
1.4 平台搭建
1、JDK的安装与配置
JDK,翻译成中文就是Java开发工具包,它主要包括Java的运行环境,一些Java命令工具和Java基础的类库文件,因此在进行Java开发之前必须安装JDK。
按要求安装JDK完毕后还需要手动设置环境变量,具体步骤如下:
(1)右击我的电脑”,选择属性”命令,在弹出的对话框中选择高级”选择卡。
(2)单击环境变量”按钮,将会出现环境变量”对话框。
(3)在系统变量”选项区中选择path环境变量,单击编辑”按钮,在弹出的编辑系统变量”对话框中添加JDK安装目录下的bin子目录的路径,如图1.1所示。在系统变量”中新建环境变量JAVA_HOME,如图1.2所示。
图1.1 向path环境变量添加JDK路径
图1.2 设置JAVA_HOME环境变量
设置环境变量后,在命令提示符下输入java –version”命令,若显示所安装的JDK版本号,则说明JDK安装成功。
2、Tomcat的安装与配置
Tomcat是一个支持Web容器的J2EE服务器,按要求安装后打开浏览器在地址栏中输入地址http://localhost:8080,如果显示如Tomcat默认首页,则表示Tomcat服务器安装成功。
第2章 需求分析
随着社会的进步,计算机技术和计算机网络的飞速发展,人们使用网络交际、办公也越来越频繁。因此开发本系统是很有必要的,但在开发之前必须要对系统的需求进行深入的理解,换而言之就是要进行需求分析。
需求分析,简而言之就是解决做什么”的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求。
需求分析是软件工程中必不可少的步骤。需求分析是指开发人员准确理解用户的需求,进行细致地调查研究,将用户非形式化的需求陈述转化为完整的需求定义,再由需求定义转化到相应的形式,透彻、全面的掌握用户的需求,对系统方案的整体设计、具体代码的生成、数据库结构的设计以及后期的软件的维护都有举足轻重的影响。系统开发前期,通过实际调研,直接与用户交流,来掌握用户的各项需求。经过调研、查找资料、对大量用户对网络的需求进行分析,得到本系统将具备的功能:通讯录功能、记事本功能、收藏夹功能、储藏箱功能,这样可满足用户日常办公的一些经常性需求,为用户生活、工作带来方便。此外,系统提供新用户注册和登录、管理员对注册用户进行管理的功能。下面我们对每个功能的需求进行详细分析。
2.1 用户注册及登录功能分析
每个用户在使用网路百宝箱系统之前必须首先进行注册,因为系统是通过用户名对存储在系统中的信息和上传的文件进行管理的。用户登陆系统后,就可以对自己的信息和空间进行管理了。其功能定义如图2.1所示。
图2.1 用户注册及登录功能分析
2.2 通讯录功能分析
通讯录用来保存用户网上联系人的姓名、电话、邮箱、地址等通讯信息,同时用户在通讯录中还可以删除、修改和查询联系人的通讯信息。其功能定义如图2.2所示。
图2.2 通讯录功能分析
2.3 记事本功能分析
记事本用来保存用户记录的一些特殊文字内容。用户在记事本中还可以删除、修改和查询已有的记事本内容。其功能定义如图2.3所示。
图2.3 记事本功能分析
2.4 收藏夹功能分析
收藏夹用来将网络资源的URL地址根据不同分类使用收藏标题保存下来,并可以对保存在收藏夹中的URL地址进行删除、修改和查询操作。其功能定义如图2.4所示。
图2.4 收藏夹功能分析
2.5 储藏箱功能分析
储藏箱用来保存用户上传到个人空间的各类文件。用户还可以将其中的文件下载到本地磁盘或者删除。其功能定义如图2.5所示。
图2.5 储藏箱功能分析
2.6 管理员管理功能分析
管理员通过后台登录后,可以对注册的用户进行查询和删除操作,并可以修改自身的信息。其功能定义如图2.6所示。
图2.6 管理员管理功能分析
第3章 系统概要设计
3.1 模块划分和系统流程
3.1.1 模块划分
根据上面的需求分析,可以将系统分为以下几个模块。
1、用户注册模块:负责让用户填写自己的用户名、密码、邮箱等个人信息。
2、用户登录模块:负责验证用户登录时所输入信息是否正确。
3、通讯录模块:为注册用户提供联系人的添加、查询、修改和删除。
4、记事本模块:为注册用户提供记事信息的添加、查询、修改和删除。
5、收藏夹模块:为注册用户提供经常访问或需要保存的网址的收藏、查询、修改和删除。
6、储藏箱模块:为注册用户提供了网上的存储空间,方便对自己的文件进行上传和下载。
7、管理员功能模块:负责系统中的所有注册用户的查询和删除。
3.1.2 系统流程
用户在登录系统主页后,首先验证该用户是否在本系统注册,若是没有注册那么就要进入注册模块进行注册,已经注册或注册完毕就可以使用通讯录、记事本、收藏夹、储藏箱等各个功能了。
整个系统的执行流程如图3.1所示。
图3.1 系统流程图
3.2 系统E-R图
1、网络百宝箱E-R图
图3.2 网络百宝箱E-R图
2、管理员实体的属性如图3.3所示。
图3.2 管理员实体的属性
3、管理员实体的属性如图3.4所示。
图3.4 管理员实体的属性图
4、通讯录实体的属性如图3.5所示。
图3.5 通讯录实体的属性图
5、记事本实体的属性如图3.6所示。
图3.6 记事本实体的属性图
6、收藏夹实体的属性如图3.7所示。
图3.7 收藏夹实体的属性图
3.3 数据库设计
根据E-R图,在数据库中设计了管理员表、用户表、通讯录表、记事本表、收藏夹表共五个数据表。数据库中各个数据表的字段定义和说明如下:
1、管理员表(admin)
管理员表存放管理员的基本信息,如表3.1所示。
表3.1 admin
字段名称 类型 大小 读写 非空 约束 默认 描述
id(主码) int — w/r √ — — 管理员ID
username varchar 40 w/r √ — — 管理员登陆姓名
password varchar 40 w/r √ — — 管理员登陆密码
该表的主码是id(管理员ID)。
2、用户表(users)
用户表存放注册用户的基本信息,如表3.2所示。
表3.2 users
字段名称 类型 大小 读写 非空 约束 默认 描述
id(主码) int — w/r √ — — 注册用户ID
username varchar 40 w/r √ — — 用户名
password varchar 40 w/r √ — — 用户登陆密码
email varchar 40 w/r — — — 用户邮箱
date datetime — w/r — — — 用户注册时间
qq varchar 40 w/r — — — 用户QQ
该表中的主码是id(注册用户的ID)。
3、通讯录表(list)
通讯录表存放通讯录中联系人的基本信息,如表3.3所示。
表3.3 list
字段名称 类型 大小 读写 非空 约束 默认 描述
id(主码) int — w/r √ — — 联系人ID
user int — w/r √ — — 用户在用户表中ID
sort varchar 40 w/r √ — — 联系人类别
name varchar 40 w/r √ — — 联系人姓名
mobile varchar 20 w/r — — — 联系人移动电话
home varchar 40 w/r — — — 联系人家庭电话
office varchar 20 w/r — — — 联系人办公室电话
email varchar 20 w/r — — — 联系人邮箱
qq varchar 20 w/r — — — 联系人QQ
msn varchar 20 w/r — — — 联系人MSN
post varchar 10 w/r — — — 联系人邮编
address varchar 40 w/r — — — 联系人地址
other varchar 90 w/r — — — 备注
该表的主码是id(联系人的ID),外码是user(用户在用户表中的ID),它参照用户表的id(注册用户ID)。
4、记事本表(notel)
记事本表存放记事本的记事信息,如表3.4所示。
表3.4 notel
字段名称 类型 大小 读写 非空 约束 默认 描述
Id(主码) int — w/r √ — — 记事信息的ID
user int 40 w/r √ — — 记事本用户的ID
title varchar 40 w/r √ — — 记事信息标题
content varchar 500 w/r — — — 记事信息内容
date datetime — w/r — — — 记事信息的时间
该表的主码是id(记事信息的ID),外码是user(记事本用户的ID),它参照用户表的id(注册用户ID)。
5、收藏夹表(fav)
收藏夹表存放收藏夹中的收藏信息,如表3.5所示。
表3.5 fav
字段名称 类型 大小 读写 非空 约束 默认 描述
id(主键) int — w/r √ — — 收藏信息的ID
user int 40 w/r √ — — 收藏夹用户的ID
title varchar 40 w/r √ — — 收藏夹信息的标题
urlstr varchar 100 w/r — — — 收藏夹信息的内容
sort varchar 20 w/r — — — 收藏夹信息的类别
该表的主码是id(收藏信息的ID),外码是user(收藏夹用户的ID),它参照用户表中的id(注册用户ID)。
第4章 系统详细设计与实现
4.1 用户登录模块
用户登录模块包含以下页面,如表4.1所示。
表4.1 用户登录模块中各个页面及功能说明
页面 功能描述
login.jsp 系统首页,负责接收用户登录信息
check.jsp 验证用户登录信息的页面
index.jsp 登录成功,显示的系统功能
reg.jsp 接收用户注册信息的页面
reg_save.jsp 执行用户注册逻辑的页面
reg_edit.jsp 修改用户注册信息的页面
conn.jsp 数据库连接页面
readlogin.jsp 判断用户是否已经登录
1、将系统布置到Web服务器上之后,在浏览器中输入http://localhost:8080/iCan访问系统主页,如图4.1所示。
图4.1 系统主页
2、用户注册完毕后就能进入如图4.3所示的系统功能主页。
图4.3 系统功能主页
3、在该模块中设计了数据库连接的页面conn.jsp,本页面主要通过调用其中的setConn()方法建立数据库连接,方法如下:
<%@ page language=java contentType=text/html; charset=GBK%>
<%
String dbPath=dirPath+iCandata.mdb;
String sqlstr=null;
iCanDb.setConn(dbPath);
ResultSet rs=iCanDb.doSelect(sqlstr);
%>
4.2 通讯录模块
通讯录模块包含以下页面,如表4.2所示。
表4.2 通讯录中各个页面及功能说明
页面和Java类 功能描述
list.jsp 通讯录模块首页,用来显示通讯录中的联系人信息
list_add.jsp 添加联系人的页面
list_del.jsp 删除联系人的页面
list_edit.jsp 修改联系人信息的页面
list_read.jsp 查询联系人的页面
1、通讯录模块添加功能界面,如图4.4所示。
图4.4 通讯录添加功能界面
2、在通讯录模块还可以进行修改、查询、删除,各功能界面图略。
4.3 记事本模块
记事本模块包含以下页面,如表4.3所示。
表4.3 记事本模块中各个页面及功能说明
页面 功能描述
note.jsp 记事本模块首页,用来显示记事本中的所有记录信息
note_add.jsp 添加记事本中记录的页面
note_del.jsp 删除记事本中记录的页面
note_edit.jsp 修改记事本中记录的页面
note_read.jsp 查询记事本中记录的页面
1、记事本模块模块修改功能界面,如图4.5所示。
图4.5 记事本修改功能界面
2、在记事本模块还可以进行添加、查询、删除,各功能界面图略。
4.4 收藏夹模块
收藏夹模块包含以下页面,如表4.4所示。
表4.4 收藏夹模块中各个页面及功能说明
页面 功能描述
fav.jsp 收藏夹模块首页,用来显示收藏夹中的所有记录信息
fav_add.jsp 添加收藏夹中记录的页面
fav_del.jsp 删除收藏夹中记录的页面
fav_edit.jsp 修改收藏夹中记录的页面
fav_read.jsp 查询收藏夹中记录的页面
1、收藏夹模块模块删除功能界面,如图4.6所示。
图4.6 收藏夹删除功能界面
2、在收藏夹模块还可以进行添加、查询、修改,各功能界面图略。
4.5 储藏箱模块
储藏箱模块包含以下页面,如表4.5所示。
表4.5 储藏箱模块中各个页面及功能说明
页面 功能描述
box.jsp 储藏箱模块首页,用来显示储藏箱中的所有记录信息
box_upload.jsp 设置要上传的文件的页面
box_upload_do.jsp 向储藏箱上传文件的业务逻辑页面
box_download.jsp 从储藏箱下载文件的业务逻辑页面
box_del.jsp 删除储藏箱中文件的页面
1、储藏箱上传界面,如图4.7所示。
图4.7 储藏箱上传功能界面
2、储藏箱下载界面,如图4.8所示。
图4.8储藏箱下载功能界面
4.6 管理员管理模块
管理员管理模块包含以下页面,如表4.6所示。
表4.6 管理员管理模块中各个页面及功能说明
页面 功能描述
admin_login.jsp 接收管理员登录信息页面
admin_check.jsp 验证管理员登录信息页面
admin.jsp 管理员管理模块首页,通过它能够查询并显示某个用户信息
admin_del.jsp 管理员删除用户页面
admin_edit.jsp 修改管理员信箱页面
1、输入管理员用户名和密码,将显示管理员管理页面如图4.9所示。
图4.9 管理员管理页面
2、管理员在管理员管理界面可以进行对用户的删除、查询,各功能界面图略。
第5章 系统的测试
5.1 系统的测试方法简介
一个软件从开发到投入使用,必需经过测试这一关,测试是相当重要的一个环节,软件测试的目标是为了发现软件中的错误,通过测试发现错误之后还必须诊断并改正错误,这就是测试的目的。
软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。
软件测试的目标为:
1、测试是为了发现程序中的错误而执行程序的过程;
2、好的测试方案是极可能发现迄今为止尚未发现的错误;
3、成功的测试是发现了至今为止尚未发现的错误的测试。
本系统在上章的系统的实现中已经对各模块进行了测试,现在主要是对整个系统的功能进行测试采用的是黑盒法。其测试前提是把程序看成一个黑盒子,完全不考虑程序的内部结构盒处理过程。也就是说黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当的接收输入的数据产生正确的输出信息,并保持外部信息的完整性。
5.2 系统的测试
笔者以一个普通用户的身份对系统进行登录,并使用各种合法的输入和不合法的输入对系统进行测试。实际上,测试情况有无穷多个,所以要进行有针对性的测试,通过制定测试案例指导测试的实施,保证软件测试有组织、按步骤,以及有计划地进行。
1、在系统的主页面如果输入正确的用户名和密码将成功的进入系统的功能主页。若输入错误的用户名和密码系统将提示用户该用户不存在如图5.1所示。
图5.1 用户不存在提示图
若输入正确的用户名但密码不对时,系统就会弹出密码错误的提示,如图5.2所示。
图5.2 密码错误提示图
如不输入用户名就直接登录,则系统就会提示用户名不能为空,如图5.3所示。
图5.3 用户不能为空提示图
2、成功进入功能主页后如果按正确的方法操作,则各项功能都能够实现。在执行搜索功能是,如果输入没有添加或超出范围的内容是,系统就就会提示暂无记录,如图5.4所示。
图5.4 暂无记录提示图
经过系统配置安装、测试和修改之后,网络百宝箱系统基本上完成了在任务书中所要求的功能,测试完成。
附 录
管理员后台管理页面代码如下所示:
<%@ page language=java contentType=text/html; charset=GBK pageEncoding=GB18030 import=java.sql.*,java.util.Date,java.io.*%>
<%@ include file=config.ini%>
<%@ include file=conn.jsp%>
<%@ include file=admin_readlogin.jsp%>
<%
iCanDipage.setCountPageRecord(recordsPerPage);
%>
<%
ResultSet rs2=iCanDb.doSelect(sqlstr);
%>
<%@ include file=head.jsp%>
<%@ include file=admin_top.jsp%> | |||||||||||||||||||
| |||||||||||||||||||
各用户通讯录、记事本、收藏夹所拥有的记录数和储藏箱占用空间情况统计如下: | |||||||||||||||||||
<% //获取管理员提交的要查询的用户的id String keyword=codeToString(request.getParameter(key)); sqlstr=select * from users; if(keyword!=null) {sqlstr=sqlstr+ where username like %+keyword.trim()+%;} //根据提交的用户名查询得到结果集 rs=iCanDb.doSelect(sqlstr); if(rs.next()) { rs.last(); int userscount=rs.getRow(); rs.beforeFirst(); //将结果集分页显示 iCanDipage.setCountRecord(userscount); String pages=request.getParameter(dipage); if(iCanDipage.isFirstPage(pages)) rs.beforeFirst(); else rs.absolute(iCanDipage.getAbsoluteLocation()); int dipagei=0; //遍历结果集,得到记录中的字段 while(rs.next()) { String id=rs.getString(id); String username=rs.getString(username); String qq=rs.getString(qq); String email=rs.getString(email); Date datetemp1=rs.getDate(date); java.text.SimpleDateFormat datetemp2=new java.text.SimpleDateFormat(yyyy-MM-dd); String date=datetemp2.format(datetemp1); //根据用户id查询记录本中的记录个数 int notecount=0; sqlstr=select id from note1 where user=+id+; rs2=iCanDb.doSelect(sqlstr); if(rs2.next()) { rs2.last(); notecount=rs2.getRow(); } //根据用户id查询通讯录中的联系人的个数 int listcount=0; sqlstr=select id from list where user=+id+; rs2=iCanDb.doSelect(sqlstr); if(rs2.next()) { rs2.last(); listcount=rs2.getRow(); } //根据用户id查询收藏夹中的收藏信息的个数 int favcount=0; sqlstr=select id from fav where user=+id+; rs2=iCanDb.doSelect(sqlstr); if(rs2.next()) { rs2.last(); favcount=rs2.getRow(); } //获取用户储藏箱中的文件的个数 int boxcount=0; long userBoxSize=0; String iCanroot=dirPath.replace(\,/); File userBox=new File(iCanroot+box/+id); File userBoxfile[]=userBox.listFiles(); if(userBoxfile.length>0) { for(int i=0;i { if(userBoxfile[i].isFile()) { userBoxSize=userBoxSize+userBoxfile[i].length(); } } boxcount=(int)userBoxSize/1024/1024; } %>;i++) <% dipagei++; if(dipagei>=iCanDipage.getCountPageRecord()) break; //当前页显示完,则退出循环 } %>
<% } else { %> | |||||||||||||||||||
暂无记录 |
<%
}
%>
<%@ include file=copyright.jsp%>
用户注册及登陆
用户注册
用户登陆
用户注册信息修改
通讯录
查询联系人
修改联系人
删除联系人
添加联系人
记事本
查询记事信息
修改记事信息
删除记事信息
添加记事信息
收藏夹
查询收藏
修改收藏
删除收藏
添加收藏
储藏箱
上传文件
下载文件
删除文件
管理员
查询注册用户
删除注册用户
更改管理员信息
用户
是否注册
通讯录
记事本
用户注册
储藏箱
收藏夹
否
是
管理员
通讯录
用户
收藏夹
记事本
储藏箱
管理
管理
管理
管理
管理
1
n
1
n
1
n
1
n
1
n
管理员
管理员姓名
管理员ID管理员
登录密码
用户密码
用户
用户ID
用户名
邮箱
QQ
注册时间
通讯录
联系人ID
用户ID
联系人QQ
联系人地址
……
记事本
用户名
标题
记事本信息ID
内容
记事时间
收藏夹
用户名
标题
收藏信息ID
内容
类别
II