Web数据库设计课程设计指导书_第1页
Web数据库设计课程设计指导书_第2页
Web数据库设计课程设计指导书_第3页
Web数据库设计课程设计指导书_第4页
Web数据库设计课程设计指导书_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Web数据库设计指导书Web数据库设计指导书==10==Web数据库设计指导书Web数据库设计指导书==1==Web数据库设计课程设计指导书丁勇 编著OO七年八月目 录\l“_TOC_250031“第1章课程设计总体要求 4\l“_TOC_250030“课程设计目的和意义 4\l“_TOC_250029“课程设计内容 4\l“_TOC_250028“课程设计要求 4\l“_TOC_250027“课程设计步骤 5\l“_TOC_250026“课程设计报告要求 5\l“_TOC_250025“课程设计验收 6\l“_TOC_250024“第2章开发环境 7\l“_TOC_250023“JDK安装 7\l“_TOC_250022“Eclipse安装 8\l“_TOC_250021“Web效劳器安装 10\l“_TOC_250020“第3章总体设计 11\l“_TOC_250019“设计思想 1\l“_TOC_250018“原理图 1\l“_TOC_250017“第4章表示层设计 12\l“_TOC_250016“Jsp技术 12\l“_TOC_250015“、界面编程实现 12\l“_TOC_250014“登陆界面 12\l“_TOC_250013“学生信息治理界面 14\l“_TOC_250012“教师信息治理界面 15\l“_TOC_250011“第5章应用层设计 18\l“_TOC_250010“、Java/JavaBean 18\l“_TOC_250009“类的具体设计及实现 19\l“_TOC_250008“数据库操作类 19\l“_TOC_250007“登陆校验类 20\l“_TOC_250006“实体对象类 21\l“_TOC_250005“权限治理类 22\l“_TOC_250004“第6章数据层设计 23\l“_TOC_250003“关系数据库模型 23\l“_TOC_250002“长久对象模型 24\l“_TOC_250001“第7章系统公布与调试 25\l“_TOC_250000“附录:学生自选课题 261章课程设计总体要求课程设计目的和意义B/SWeb应用技术受到广泛应用。本次课程设计的目的旨在使学生把握JavaJSPWebWEB信息系统多层应用开发的根本MVC编程思想的理解。识受到较为全面、系统的训练,为今后的毕业设计及就业奠定坚实的根底。课程设计内容课程设计具体地介绍了一个基于Web码、调试的过程,通过具体事例的讲解使学生把握以下内容:WebJDKEclipseWeb以及MVC框架的安装与配置。表示层设计,包括JSP建表示层的界面应用。应用层设计,包括Java/JavaBean技术,应用JavaBean实现对应用层业务规律的封装,实现页面显示和业务规律的分别。系统软件,标准地完成一个小型数据库的设计与实现。课程设计要求4-6要求学生依据题目的需求描述,独立完成相关的课题,具体要求如下:充分生疏课程设计的重要性,认真做好设计前的各项预备工作。力钻研,勤于实践,勇于创。计。Web数据库设计指导书Web数据库设计指导书==6==Web数据库设计指导书Web数据库设计指导书==5==成绩按不及格处理。相互帮助和团队协作精神。课程设计步骤课程设计主要由学生自选课题,分小组完成整个Web程,从软件工程的角度粗略分为以下几步:需求分析及总体设计本阶段依据课题要求,完成系统的总体设计,完成后台数据库系统的规律构造E-R具体设计、编码本阶段对上述总体设计的各功能模块逐步分解、编码实现,这一阶段每小组JspJavaJavaBean测试和试运行2-3个粘贴到的课程设计报告中。课程设计小结报告。需要在哪些方面加以完善,作一个总结和展望。课程设计报告要求学生提交的课程设计报告有以下四个方面的要求:问题描述,对所选课题的需求做一个具体的描述。计要考虑安全性和完整性的要求。程序的可读性。运行测试,包括测试代码及重要的运行界面。课程设计小结,重点谈谈本次课程设计的收获、体会、心得。课程设计验收等环节进展把关,具体评分标准如下:序所占评分原则号报告内容比重不给分及格中等良好优秀1问题描述10%没有不完整根本正确描述准确确2分析设计30%没有不完整根本可行很有说服好力3具体的算法及源代码40%没有不完整基本正确、清楚晰正确,清晰有价值,4运行测试10%没有不完整根本完整完整并可以实际演示。5其他10%包括是否按时完成,报告格式,字迹、语言等等Web数据库设计指导书Web数据库设计指导书==8==Web数据库设计指导书Web数据库设计指导书==11==2JDK安装JDK是Java开发工具包(JavaDevelopmentKit)的缩写。它是一种用于构建在Java平台上公布的应用程序、Applet和组件的开发环境。JDK是一JavaJavaJDKAPIJDKjdk-1_5_0_12。2-1所示,假设本系统安装的JDK路径为C:\program\java,则系统用到的环境变量设置如下:ClassPath=.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jarPath=%JAVA_HOME%%;JAVA_HOME%\binJava_Home=C:\ProgramFiles\Java\jdk1.5.0_122-1环境变量设置Eclipse安装EclipseIBMJava〔IDEEclipse3.3.0Java第一步:建Java工程2-2建Java工程选择“JavaProject”,点击“Next”,2-2建Java工程其次步:建TestJava类在“NewJavaClass”NameTestJava”,Java2-3publicclassTestJava{publicstaticvoidmain(Stringarg[]){System.out.println(“testsuccess!“); //输出测试信息}}2-3建Java类第三步:运行Java程序按下“Run→Run...”,Eclipse会弹出运行设置向导,询问运行配置。这Java程序,所以在Configurations“JavaRun2-4Web效劳器安装

2-4Eclipse调试界面WebInternetstartup.batWeb2-5://localhost:8080JSP2-5tomcat效劳器3设计思想系统承受MVC(View)和掌握器(Controller),个局部分别为:视图View是模型的表示,用于表示规律,典型的View视图层由HTML和JSPJavaScriptModelJavaBeanModelView为模型层可执行的操作。ControllerJavaServlet。原理图恳求与响应恳求与响应客户机网络效劳器视图Jsp掌握器ServletJavaBean模型sqlBean(JDBC)SQLServer图3-1多层应用原理图4JspJSP(JavaServers)是由SunMicrosystems公司提倡、很多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件(*.htm,*.html)JSP(tagJSP(*.jsp)。Web效劳器在遇到访问JSP网页的恳求时,首先由引擎执行其中的程序段,然后JSPHTML、界面编程实现登陆界面登陆界面由Login.jsp来实现,具体的用户名和密码校验程序由Login_confirmServlet来实现,依据不同的角色〔学生、教师、治理员〕定位到4-1所示数据Login.jsp用户类型Login_confirm(Servlet)Teacher.jsp数据Login.jsp用户类型Login_confirm(Servlet)Teacher.jsp登陆用户名Student.jsp密码Admin.jspError.jsp用户名或密码有误图4-1 登陆流程javascript脚本语言实现,局部代码如下:<SCRIPTLanguage=javascript>functionisValid{//检查是否输入帐号资料if(frmLogin.id.value==““){window.alert(“您必需完成帐号的输入!“);//显示错误信息document.frmLogin.elements(0).focus;//将光标移至帐号输入栏return false;}//检查是否输入帐号密码if(frmLogin.password.value==““){window.alert(“您必需完成密码的输入!“);//显示错误信息document.frmLogin.elements(1).focus;//将光标移至密码输入栏}frmLogin.submit;//提交表单中的资料}</SCRIPT>4-2所示:图4-2系统登陆界面学生信息治理界面如,所属系部、电子邮件等。选报了未满足预修课要求的课程,系统会有相关的错误提示。的总学分。假设教师还未给出成绩,则系统会提示。Student.jspStudent.jsp选修课程DisplayCourse.jsp调用checkEnrol(Bean)StudentLoginSvlt调用,初始化checkEnrol(Bean)观察学分调用sqlBean(JDBC)更改信息updateinformation.jspError.jsp数据student.jsp学生菜单页面,

4-3学生信息治理流程DisplayCourse.jsp显示学生选修的课程Updateinformation.jsp添加/删除/修改学生的根本信息依据用户不同的操作,推断程序跳转到不同的JSP页面,代码如下:<%Stringaction=(String)session.getAttribute(“action“); //推断操作类型if(action.equals(“add“)) {response.sendRedirect(“login.jsp“);} //转到addcourse.jspif(action.equals(“select“)){response.sendRedirect(“login.jsp“);} //转到dispalycourse.jspif(action.equals(“select“)){response.sendRedirect(“login.jsp“);} //转到updateinformation.jsp%>4-4学生信息治理界面教师信息治理界面教师在登陆后具有查看、更根本信息的权限。其次,系统要求教师选择学生,系统会列出该教师所代课程的班级,系统会师的输入信息是否正确。考试,假设该成绩及格,则在该生的学分上加上该课程的学分。Teacher.jsp,教师的根本信息导航。Score.jsp,教师的打分信息。Marking.jsp,学分信息处理。MarSvltServlet作为掌握器,依据用户的不同动作,跳转不同的处理界面。<%//跳转到根底信息页面if(“display“.equalsIgnoreCase(action)){res.sendRedirect(“display.jsp“);}//跳转到打分处理页面if(“score“.equalsIgnoreCase(action)){res.sendRedirect(“display.jsp“);}//跳转到学分处理页面if(“marking“.equalsIgnoreCase(action)){res.sendRedirect(“marking.jsp“);}%>数据数据displaystujsp调用determin(Bean)chooseStu.jspTeacher.jsp选择学生MarkSvlt调用determin(Bean)初始化determine〔Bean〕公布成绩public.jsp调用determin(Bean)score.jsp调用determin(Bean)Marking.jspError.jsp4-5教师信息治理流程图Displaytea.jsp4-6<tablewidth=“75%“ border=“1“align=“center“><tr><td><divalign=“center“>工号</div></td><td><divalign=“center“>姓名</div></td><td><divalign=“center“>性别</div></td><td><divalign=“center“>年龄</div></td><td><divalign=“center“>职称</div></td><td><divalign=“center“>课程</div></td><td><divalign=“center“>根本操作</td></tr><%Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver“).newInstance;Stringurl=“jdbc:odbc:test“;Stringuser=“sa“;Stringpassword=“sa“;//获得数据库连接,进展相应的查询处理Connectionconn=DriverManager.getConnection(url,“sa“,“sa“);Statementstm=conn.createStatement;Stringsql=“select*fromteacher“;ResultSetrs=stm.executeQuery(sql);while(rs.next){id=rs.getString(“id“);name=rs.getString(“name“);sex=rs.getString(“sex“);age=rs.getString(“age“);xueli=rs.getString(“xueli“);juanye=rs.getString(“juanye“);%><tr><td><divalign=“center“><%=id%></div></td><td><divalign=“center“><%=name%></div</td><td><divalign=“center“><%=sex%></div</td><td><divalign=“center“><%=age%></div</td><td><divalign=“center“><%=xueli%></div</td><td><divalign=“center“><%=juanye%></div</td><td>删除</a></td><td>更</a></td></tr><% } %></table>显示教师根本信息dispalytea.jsp运行界面如以下图所示:4-6教师信息治理界面5章应用层设计、Java/JavaBeanJavaJavaBean处理、值、数据库访问和其他任何可以用java代码制造的对象进展打包,并且JSPJavaBean<%@import=“tzkjxy.TestBean“%><%TestBeantestBean=newTestBeantestBean.setName(“Thisisatestjavabean.“);%>JavaBeannameis:<%=testBean.getName%>//JavaBean测试类packagetzkjxy;publicclassTestBean{privateStringname=null;publicvoidsetName(Stringname){ =name;}publicStringgetName{ return;}}图图5-1 JSP调用JavaBean类的具体设计及实现数据库操作类应用层供给应用所需的业务规律,该层包含常用的一些业务规律,通常以用程序访问关系数据库供给了 API,系统中对数据库的操作封装在 JavaBean中,以便在其他应用中调用。importjava.sql.*;publicclassDBOper{privateConnectionconn; //定义连接对象privateStringurl=“jdbc:odbc:test“;//定义数据源privateStringuser=“sa“; //定义用户名privateStringpassword=“sa“; //定义密码//返回数据库连接publicConnectiongetConnection{try{Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver“);//加载驱动程序conn=DriverManager.getConnection(url,user,password);//获得连接if(conn!=null){System.out.println(“数据库连接成功!“);}}catch(Exceptione){ //捕获特别System.out.println(“connectdberror“+e.getMessage);}returnconn;}//数据库操作,返回记录集publicResultSetexecuteQuery(Stringsql){try{conn=DBOper,getConnection;//获得一个连接Statementstmt=conn.createStatement();rs=stmt.executeQuery(sql);//sql语句}catch(SQLExceptionex){System.out.print(“执行查询有错误:“+ex.getMessage);//捕获特别,输出到客户端}returnrs; //返回记录集}}登陆校验类每一次不同角色的用户〔学生、教师、治理员〕访问JSPJavaServletJSPimportjava.sql.*;importjavax.servlet.*;publicclasslogin_confirmextendsServlet{publicvoiddoPost(ServletRequestreq,ServletResponseres)throwsServletException,IOException{Stringid=null;id=req.getParameter(“id“);//得到用户IDSessionsession=req.getSession(true);session.setAttribute(“id“,String.valueOf(id));//SessionStringpassword=null;password=req.getParameter(“password“);//得到用户密码Stringkind=null;kind=req.getParameter(“kind“);//得到用户的操作类型Stringtemp=getPassword(req,res,id,kind);if(password.equals(temp))goo(req,res,kind);//跳转else{message=“用户名或密码有误!“;doError(req,res,message) ;//错误处理}}//依据不同的角色和用户ID,校验其密码publicStringgetPassword(ServletRequestreq,ServletResponseres,Stringid,Stringkind)throwsServletException,IOException{DBOperdb=newDBOper; //数据库操作对象Stringpw=““;Stringsql=“selectpasswordfrom“+kind+“whereid=”“+id+“”“;//数据库查询try{ResultSetrs=db.executeQuery(sql); //调用DBOperif(rs.next){pw=rs.getString(“password“);}}catch(Exceptione){System.out.print(e.toString);} returnpw;//返回密码}}实体对象类实体对象类实现对系统中的实体对象的属性及其方法进展封装,在本系统中主要有学生、教师、课程等实体对象,分别对应student、teacher、course等对象student类为例,代码如下:importjava.sql.*;publicclassstudent{//定义私有成员privateStringid;//privateStringname;//姓名privateStringpassword;//密码privateStringsex;//性别privateStringdep;//系部//检查该学生是否已经注册publicbooleanhasLogin(Stringid){booleanf=true; //标志标量Stringsql=“selectidfromstudentwhereid=”“+id+“”“;DBOperdb=newDBOper; //数据库操作对象try{ResultSetrs=db.executeQuery(sql);//数据库操作对象执行方法if(rs.next){f=false;}else{f=true;}}catch(Exceptione){ //捕获特别e.getMessage;}returnf; //返回标志变量}//查询学生信息publicResultSetgetStudent{Stringsql=“select*fromstudent“;//操作语句,可自定义DBOperdb=newDBOper;//数据库操作对象ResultSetrs=db.executeQuery(sql);//执行returnrs;//返回记录集}//添加学生信息publicvoidaddStudent{Stringsql=“insertintostudent(name,password,id,sex,dep)“+“VALUES(”“+name+“”,”“+password+“”,”“+id+“”,”“+sex+“”,”“+dep)“;DBOperdb=newDBOper;//数据库操作对象db.executeInsert(sql); //执行语句}//删除学生信息publicvoiddeleteStudent{Stringsql=“deletefromstudentwhereid=”“+id+“”“;DBOperdb=newDBOper;//数据库操作对象db.executeDelete(sql);}//更学生信息publicvoidupdateStudent{Stringsql;sql=“updatestudent“+“setname=”“+name+“”,sex=”“+sex+“”,department=”“+dep+“”, “+“password=”“+password“whereid=”“+id+“”“;DBOperdb=newDBOper;//数据库操作对象db.executeInsert(sql);//执行语句}}权限治理类权限治理类的功能是针对应用系统的实际业务,依据其组织构造或安全需象模型如以下图所示:图图5-2 权限治理对象模型6章数据层设计关系数据库模型6-1学生根本信息。其数据项有学号、姓名、年龄、性别、系部、联系、所修学分等。教师信息。其数据项有工号、姓名、权限密码、所授课程等。治理员信息。其数据项有用户名、权限密码等。课程信息。其数据项有课程编号、名称、学分等。选修信息。其数据项有学号、课程编号、所修学分等。6-1关系数据库模型长久对象模型(POJO)gettersetter的细节。下面以学生类为例来说明POJOStudent_POJOstudent相映射,代码如下:importjava.sql.*;publicclassStudent_POJO{privateStringid;privateStringname;privateStringpassword;privateStringsex;privateStringdep;publicStringgetId{returnid;}publicvoidsetId(Stringid){this.id=id;}publicStringgetName{returnname;}publicvoidsetName(Stringname){=name;}publicStringgetPassword{returnpassword;}publicvoidsetPassword(Stringpassword){this.password=password;}publicvoidsetDep(Strings){dep=s;}publicStringgetDep{returndep;}publicvoidsetSex(Strings){sex=s;}publicStringgetSex{returnsex;}7章系统公布与调试TomcatwebappsWe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论