邹明上
摘 要:文章阐述了采用J2EE、JSP、JavaBean和Servlet技术实现基于B/S架构的会员管理系统。此系统的开发平台是MyEclipse,开发模式是MVC模式,开发所用数据库服务器是SQL Server 2000,所用的运行服务器是Tomcat服务器。该系统实现了利用网站管理会员信息,既方便了会员,也提高了管理的效率,降低了管理难度和成本。
关键词:在线会员;管理系统
中图分类号:TP314 文献标识码:A 文章编号:1006-8937(2014)32-0085-02
会员管理系统是基于B/S(Browser/Server,浏览器/客户端)架构开发的管理系统,利用J2EE技术、SQL Server数据库和Tomcat应用服务器等技术,该系统除了具备传统管理方式的功能,还增加了很多传统管理方式不具备的功能,给用户和管理者一种新的体验。
1 系统开发环境
①操作系统:Windows XP;②数据库:SQL Server 2000;③编译工具:JDK1.5;④开发平台:MyEclipse、Notepad++、Editplus、Dreamweave;⑤运行服务器:Tomcat5.0或以上版本。
2 系统需求分析和任务目标
2.1 需求分析
利用B/S模式的网站进行管理会员,适应当前高节奏的潮流,又为会员带来方便快捷人性的服务。管理者也会高效率、低成本地管理会员信息。此系统能应用于大部分由会员制度的服务业,应用面广泛,而且能还根据不要求进行相应的扩展和修改,使之它能适应具体某一行业的会员管理。
2.2 任务目标
基于J2EE的MVC模式的会员管理系统,可以使用户和管理人员感到方便快捷易操作以及高的工作效率,同时也提高管理者和用户的交互性,并且提供人性化的服务。运用MVC模式开发此系统是为了深刻的了解在MVC开发模式中“视图”、“模型”、“控制器”的关系以及它们之间的松耦合结果以及整个软件开发的流程,为以后的Java Web的开发打下良好的基础。
3 系统功能模块的划分
3.1 会员模块
①用户注册模块:本系统除了留言外,其他功能在没有成功登录不能进行任何操作,所以用户要想实现其他功能,必须先注册。②登录模块:会员出了留言和注册之外,其他功能必须登录成功,才能实现。③修改个人信息模块:在会员成功登录的情况下,可以修改个人注册信息和密码。④查看其他会员信息:在会员成功登录的情况下,可以查看其他会员信息包括某一个会员(也可以查看自己)或者全部会员信息。⑤上传模块:在用会员成功登录的情况下,可以上传照片或图片。⑥新闻模块:在会员成功登录的情况下,可以浏览查看本网站上的各种新闻。⑦留言模块:此模块可以匿名留言,但是要想查看留言,必须成功登陆。
3.2 管理员模块
①管理员登录模块:管理员只有在成功登录之后才能进行其他操作。②个人密码管理:管理员在成功登录之后,可以修改个人密码。③留言管理:管理员在成功登录之后,可以进行删除不良留言。④新闻发布管理模块:管理员在成功登录之后,可以进行发布新闻,还可以新闻过时可以进行删除。⑤会员管理:管理员在成功登录之后,可以进行浏览全体会员,也可以浏览某一个会员或者全体会员,还可以删除会员。
4 系统数据库设计
4.1 数据库概念结构设计
数据库结构设计的好坏直接影响到信息系统的效率和实现的效果,和里地设计数据库可以提高存储效率,保证数据的完整和统一。在进行数据库的需求分析之后,明确得出了各个实体,并分析它们的属性和它们之间的关系,在会员管理系统中有:会员信息实体,管理员信息实体,留言信息实体。新闻信息实体。
4.2 数据库逻辑结构设计
有了数据库概念结构设计,数据库的逻辑结构设计就简单多了。在基于JSP的会员管理系统中,首先要创建会员系统数据库,然后在数据库中创建需要的表和字段。建立数据库的步骤:首先创建数据库,在启动“服务器资源管理器”窗口,在SQL Server服务器节点右击,在弹出的快捷菜单中选择“新建数据库”命令,然后在弹出的对话框中输入ComeHere(我建的数据库的名称)。然后在这个创建的数据库里面建立4张数据表,包括会员信息表、管理员信息表、新闻信息表、留言信息表。
①会员信息表:包括会员名、密码、会员性别、会员的年龄、会员的电话、会员的Email地址、会员的简历、会员照片的名字。②管理员信息表:包括管理员名、管理员登录密码、管理员的性别、管理员的电话、管理员的Email地址、管理员的简历。③新闻信息表:包括新闻编号(主键,自动增1)、新闻标题、新闻类型、新闻发布时间、新闻发布人、新闻内容。④留言信息表:包括留言编号(主键,自增1)、留言者、主题、留言时间、留言内容、删除标志位。
5 系统配置文件
本系统的Servlet的类的包名均为myservlet.contron,JSP页面通过调用这些Servlet实现处理数据,获得处理结果,它需要配置Web服务器目录下的web.xml文件。根据笔者使用的Tomcat安装目录及使用的Web服务目录。
xml文件必须有一个根标记,web.xml文件的跟标记是
6 系统界面的设计及功能的实现
6.1 系统用户注册页面
注册页面中的用户要填写的信息有:用户名、用户密码、用户年龄(默认为0)。用户性别、用户电话、用户Email地址、和用户简历。用户名和密码必须填写和记住,其他的信息可以日后填写或修改。为了提醒用户,填写用户名和密码特用了*号标示。
6.2 系统登录页面与实现
此系统的登录页面包括会员登录和管理员登录页面,会员只有登录成功的情况下才可以实现其他操作,管理员只有在登录成功的情况下才管理各种信息。为了防止中文乱码,我在代码中写handleString(String s)方法,而且还能判断用户是否是第二次登录。
6.3 会员上传页面
上传页面,用于用户在登录成功的情况下,上传图片,上传后图片保存在D:\Tomcat\Tomcat 5.0\webapps\hygl\image文件下面,而在数据库里面以图片名存储在数据库里面。图片名以用户名和原来的图片名相结合成为存储在数据库里面。上传成功后可以看到效果图。图片上传是由RandomAccessFile类来实现的,RandomAccessFile类与其它输入与输出不同,它既不是输入类InputStream的子类,也不是输出类OutputStream的子类。但习惯上,仍然称RandomAccessFile类创建的对象为一个流,RandomAccessFile流的指向既可以作为源,也可以走位目的地。
6.4 浏览会员页面
浏览会员页面提供两种浏览会员的方式,一种用分页控制的可以浏览全体会员,另一种可以具体浏览某一个会员,两种方式可供会员用户选择。在这里面分页显示是核心,com.sun.rowset提供了CachedRowSetImpl类,该类实现了CachedRowSet接口。CachedRowSetImpl对象可以实现可以保存ResultSet对象中的数据,而且CachedRowSetImpl对象不依赖Connection 对象,这就意味着一旦把ResultSet对象中的数据保存到CachedRowSetImpl后可以关闭和数据库连接。CachedRowSetImpl继承了ResultSet的所有方法,因此可以像操作ResultSet对象一样CachedRowSetImpl对象。将ResultSet对象resultset中的数据保存到CachedRowSetImpl对象的代码如下:
CachedRowSetImpl rowSet=new CachedRowSetImpl();//实例化一个对象rowSet.populate(resultset);
假设分页CachedRowSetImpl对象中有m行记录,准备每页显示n行,那么总页数的计算公式是:
总页数=(m%n)==0(m/n)(m/n+1)。
6.5 浏览新闻页面
新闻浏览页面也是以表格的形式出现的,也支持分页浏览新闻,会员可选择喜欢的新新闻进行内容阅读,此时会生成一个字的浏览器显示新闻。上一页显示的新闻主页,用户选择“操作”中的浏览全文即可阅读全文。浏览完毕后关闭子浏览器即可。
6.6 会员留言页面浏览留言页面
为了体现本网站的开发性以及和会员用户进行的沟通互动,特设留言板模块,允许在不登录的情况下进行留言,但“留言者“这一项必须填写,即便是假的也可以,否则留言将会失败。留言的主题可以不必填写。当然留言的内容更应该认真填写。留言后可以在登录成功的情况下浏览留言。匿名用户不允许留言的。
6.7 会员个人信息管理页面
会员个人信息管理页面包括修改注册信息页面和修改密码页面,应为本系统注册时,在填写用户名和密码之后可以注册成功,用户可以日后完善个人信息。同时用户的联系方式等发生变化时也可以进行修改,修改密码页面用户可以重新设立密码。
6.8 发布新闻和管理新闻页面
管理员登录成功后,可以发布各种新闻,还可以到管理新闻页面去浏览和删已经过时的新闻。这里需要把新闻首页的newsid(主键)值传到浏览新闻内容页面和删除页面。那两个页面根据这个newsid进行浏览内容和删除操作。
6.9 浏览和管理会员页面及其实现
这是本系统中管理员最核心最重要的功能,在管理成功登录以后,可以进行浏览查询会员信息,还可以进行删除操作。此系统为了提高效率和满足不同情况的需要提供了两种删除和两种浏览查询。点击“会员管理页面“的第一个按钮,可以进行批量查询和单个删除。在输入会员名的情况下点击第二个按钮可以进行单个会员查询,在输入会员名的情况下点击第三个按钮可以直接删除会员。
参考文献:
[1] 耿祥义,张跃平.Java 2实用教程(第四版)[M].北京:清华大学出版社,2012.
[2] 孙鑫.Java Web开发详解[M].北京:电子工业出版社,2012.