JSP程序设计大作业 - 图文

更新时间:2024-06-02 12:57:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

武汉理工大学华夏学院

课 程 报 告

课程名称:JSP程序设计

题 目:学生信息管理系统的设计与

开发

专 业 信息工程系 班 级 软件1121 学 号 10212812114 姓 名 杨朝雄 成 绩 _________________ 指导教师 邱珊

2015年3月2日至2015年5月8日

课程大作业任务书

学生姓名: 杨朝雄 专业班级: 软件1121 指导教师: 邱珊 工作单位: 信息工程系 设计题目:

要求完成的主要任务:

运用Java Web MVC多层架构技术(JSP+Servlet+JavaBean)和JDBC数据访问技术设计和开发一个学生信息管理系统,实现注册、登录以及学生信息的浏览、查询、添加、更新、删除等基本功能。 具体要求如下:

(1)界面简单实用,美观大方。要求使用CSS+DIV进行页面布局和样式控

制。具体要求如下:

a. 系统首先进入欢迎页面。在欢迎页面中,要有系统名称,学生姓

名,学号和班级。从欢迎页面点击链接进行登陆界面。

b. 进入登陆界面后的流程自行设计。

(2)所采用的数据库管理系统课自行决定。

(3)系统必须实现注册、登录和信息的查询、添加、修改和删除等基本功能。

(4)信息查询必须实现分页功能。

(5)学生需完成设计报告文档,以班为单位由班长统一提交。

1

1 设计目的

1.1基本功能:

运用Java Web MVC多层架构技术(JSP+Servlet+JavaBean)设计和开发一个学生信息管理系统,实现注册、登录以及学生信息的浏览、查询、添加、更新、删除等基本功能。具体要求如下:

(1) 界面简单实用,友好美观。要求使用CSS+DIV进行页面布局和样式控制。

具体要求如下:a. 系统首先进入欢迎页面。在欢迎页面中,要有系统名称,学生姓名,学号和班级。从欢迎页面点击链接进行登陆界面。b. 进入登陆界面后输入正确的帐号密码查询信息。 (2) 使用SQL2005数据库。

(3) 系统必须实现注册、登录和信息的、查询、添加和删除等基本功能。 (4) 学生信息浏览功能 :学生可进行查询和浏览,学生可以按学号、姓名查询和查询全部学生信息,查询时先要选择查询方式,再输入查询的关键词。查询全部学生信息时不需要输入关键词。

(5) 学生个人信息维护功能:学生能对自己的信息(学号、姓名、性别、专业、

班级、年龄、email)进行修改功能,修改时先读取个人信息到文本框中,学生可以在文本框中对个人信息修改。 1.2设计意义:

1.通过开发具体系统,了解并熟悉jsp 2.掌握网络编程的一般模式,使用jsp+javabean+servlet编写具体可用的系统 3.通过开发学生信息管理系统,充分体会MVC模式的优点及在网络开发的流行性,培养运用此模式解决实际问题的能力

4.通过设计系统,在开发过程中碰到问题解决问题的过程中,逐渐提高自己的开发能力

2 开发环境和开发技术

2.1开发环境:

安装myeclipse和SQL数据库以的计算机。 2.2开发技术:

学生信息管理系统以java、html的语言作为前台的开发环境,服务器选用tomcat,后台数据库选用Microsoft SQL Server 2005,实现了注册,登录,学生管理等。采用了jsp的相关知识,例如:动态网页基础知识、JSP基础、JSP指令和脚本元素、JDBC、JSP处理客户端请求、会话和访问控制等。

2

3 需求分析

学生信息管理系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。

因此,开发这样一套软件成为很有必要的事情,在下面的各章中我们将以

开发一套学生选课系统为例,谈谈其开发过程和所涉及到的问题及解决方法。 本实验实现的学生信息管理管理系统主要包括以下功能:

1.完成数据的录入和修改,并提交数据库保存。其中的数据包括:学生姓名、性别、邮箱以及基本信息等;

2.设计实现学生信息查询,更新、删除、添加,以及新用户注册等功能 。 3.具备一定的安全性管理功能。包括操作员的权限设置、修改密码设置、注销等功能。

4 总体设计

4.1 功能设计

学生成绩管理系统主要提供方便高效的管理功能以及网上的信息查阅平台,学生可以通过该系统查阅相关信息,管理员可以管理所有信息。该系统使用JSP编程语言,Microsoft SQL2005数据库以及Apache Tomcat作为开发平台,运用软件工程思想方法,对系统进行快速有效开发, 对于本系统,我们需要实现以下一些基本功能:

(1)学生查询功能:为了方便学生查找成绩等信息,将所有信息按照需要进行分类。这样学生就能很方便的找到自己需要的信息。

(2)添加功能:管理员可以通过填写表格的形式输入学生成绩等相关信息。系统可以自动避免重复信息。

(3)修改功能:管理员可以对数据库中的信息进行修改。系统能够通过管

3

理员给出的条件查找出所要修改的信息,对修改后的信息进行保存,并自动查找是否是重复信息。

(4)删除功能:管理员可以对数据进行删除操作。系统能够通过管理员给出的条件查找出要删除的信息,并提示是否确定删除,如果确定删除,则把相关信息从数据库中删除掉。

4.2系统总体结构

按照系统的需求要求,可以把系统功能进行分解,以便按照每个功能模块的要求分别实现对应的功能。系统总体结构如下图1-1所示:

信息查询 修改学生信息 添加学生信息 删除学生信息 学生信息管理系统 图1-1系统结构图

用户可以修改部分学生信息,像学号、班级、专业这样的信息学生都能作修改;用户还可以删除、添加学生信息。

4.3 数据库设计

数据库采用了Microsoft推出的SQL SERVER 2005数据库,这是微软集成到Office中的一个桌面数据库,能够快速方便的和Office的其他套件综合使用。由于SQL具有显著的简易性和有效性,大量的桌面数据库系统都采用SQL作为后台数据库。

4

Microsoft的数据库服务器软件SQL Server,此时,程序只需要简单的修改一下链接(ADO的数据源)就可以,这样,为程序的平滑扩展提供了非常有力的条件。本系统中所涉及到的主要实体共有2个数据表 user_table表和Student_table表,各表的物理结构如下:

5 详细设计与实现

5.1登陆功能关键代码如下:

<%@ page language=\<%

String path = request.getContextPath(); String basePath = request.getScheme()+\h+\

5

%>

登录页面


7

5.2添加功能关键代码如下:

<%@ page language=\<%@ taglib prefix=\

<%@ taglib prefix=\> <%

String path = request.getContextPath();

String basePath = request.getScheme()+\:\%>

添加页面


5.3修改功能关键代码如下:

<%@ page language=\<%@ taglib prefix=\

<%@ taglib prefix=\> <%

String path = request.getContextPath();

String basePath = request.getScheme()+\:\%>

11

更新页面


姓名:

出生日期:

性别:

14

\男'}\男

系别:

专业:

班级号:

\ncel\取消\

5.4删除功能关键代码如下: package servlets;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession;

import beans.UserDAO;

public class DeleteServlet extends HttpServlet { /**

* Constructor of the object. */

public DeleteServlet() {

15

super(); } /**

* Destruction of the servlet.
*/

public void destroy() {

super.destroy(); // Just puts \// Put your code here } /**

* The doGet method of the servlet.
*

* This method is called when a form has its tag value method equals to get. *

* @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doPost(request,response); } /**

* The doPost method of the servlet.
*

* This method is called when a form has its tag value method equals to post. *

* @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException { request.setCharacterEncoding(\response.setContentType(\response.setCharacterEncoding(\

16

//获得请求参数

String studentID = request.getParameter(\ //定义转发页面

String forward = null; // 创建模型对象

UserDAO udao = new UserDAO();

//调用模型对象的业务方法来判断登录的用户是否有效 boolean b = udao.deleteByStudentID(studentID); HttpSession s = request.getSession(); if (b) {

s.setAttribute(\删除成功\forward = \}

else {

s.setAttribute(\删除失败\forward = \}

//把用户名写入request中,以便共享

//request.setAttribute(\//通过分发器转发页面

//RequestDispatcher rd = request.getRequestDispatcher(forward); //rd.forward(request, response); response.sendRedirect(forward); } /**

* Initialization of the servlet.
*

* @throws ServletException if an error occurs */

public void init() throws ServletException { // Put your code here } }

6 系统测试

6.1 欢迎界面

17

6.2 登陆界面

6.3 学生信息界面

18

6.4 添加学生信息界面

6.5 删除学生信息界面

19

6.6 更新学生信息界面

6.7 注册界面

20

6.8 登录失败界面

21

22

7 总结 经过一段时间终于把

jsp的课程设计做好了,基本实现了学生选课的一般功

能。通过这次课程设计,我对数据库软件SQL Server、JSP等系列知识都有了一定的了解。使用JSP开发页面的能力也有了很大提高。在本次设计的全过程中,我对所学的知识有了一个比较系统的认识和理解。涉及了各方面的知识,大大扩展了我的知识面。

在整个设计阶段感受最为深刻的是掌握学习的方式和解决问题的方法。首先是解决问题的方式,就像我在解决设计中的很多问题一样,一开始总是在看书,和书上的进行比对,虽然书本上的只是大部分都是有价值,正确的,但实际上每个人编程的思路和对数据处理的方法、思想都是不同的,这就要求我们一定要通过实践才能找到解决问题的方案。在整个课程设计的过程中,我深刻的体会到了这一点的重要性,也牢记主了这一点,在今后的学习中我也会继续将这种方法延续下去。

在做课程设计的这段时间里,虽然也碰到了很多的问题, 但是经过和同学的讨论和研究,问题都一一克服了得到了解决。因为我们始终坚信“只要有恒心,铁杵磨成针!”。经过这次课程设计,我的能力有了很大的提高,比如操作能力、分析问题的能力、合作精神、严谨的工作作风等方方面面都进步了。我要更加努力,努力学好专业知识,全面发展自己。相信经过这次的磨练,对我以后的学习肯定大有益处

23

8 指导老师评语

设计过程中现场提问(或答辩)记载: 1、怎样在jsp页面中设置图片大小? 答:使用background-size属性可对图片进行长和宽的设置,例如:background:url(\。 2、怎样实现用户名和密码的验证? 答:在StudentAction类中的login的方法中,使用request的getParameter() 的方法获取到login.jsp页面传过来的值,在调用StudentDao类中的queryByName的方法,将获取的字符串作为参数传递过去,验证,结果集大于0则表示存在。 3. 怎样在jsp页面中设置字体的颜色? 答:使用标签,并使用他的color和size的属性设置字体的颜色和大小。 指导教师评语: 成绩评定: 指导教师(签名): 2015 年5月15日

24

本文来源:https://www.bwwdw.com/article/n0q6.html

Top