教务管理系统

发布时间:   来源:文档文库   
字号:


java12-02


职位
组员
匚名
吴贻顺
学号完成功能模块
后台数据操作函数
621213530233621213530228621213530242621213530243621213530249621213530236
TeacherDao.java,StudentDao.java,Admin
Dao.java
LoginAciton.java,数据库表操作,后台数据表映射配置文件
组员王帅
Teacher.hbm.xml,Student.hbm.xml
Admin.hbm.xml
后台Hibernatestruts配置文件
组员喻铁朔
Hibernate.cfg.xmlStruts.xml,web.xml
前台学生管理界面的实现
组员组员组员
张高翔郅昌浩辛修浩
StuMain.jsp,Stutop.jsp,StumainF.js
p,Stuleft.jsp前台教师管理界面的实现TeaMain.jspTeatop.jsp,TeamainF.jsp,Tealeft.jsp前台管理员界面的实现
index.jsp,
register.jsp,
reSuccess.jsp

目标用户需求分析功能需求系统功能需求数据需求性能需求

引言
1.1编写目的

1.2
......需求规定1.3
......
2.12.22.32.42.5
2.6可行性分析.........
1经济可行性2技术可行性
3运行可行性2.7用例图..........
2.8E-R图:..........2.9数据库需求分析设计
任务概述及系统功能概述
3.1教务管理系统的系统特点.....
1、简洁美观的操作界面
2、教务管理模式........


3.2系统功能说明...............3.2.1功能:划分.................

1、管理员管理系统......

2
.....................、教师管
理系统..................3、学生管理管理系统..运行环境规定

4.1设备4.2支持软件
5系统设计
6心得体会
1111
.11
11
11111213
1414141428
11

1引言
1.1编写目的
编写本文档是为了明确用户的需求,
用以精确软件框架结构设计,
为测试提供依据。并且
是开发小组成员分工明确,让该组成员清楚将要完成的管理系统具备哪些具体功能及特点,以让成员能有一个很好的初步概念,目标明确,提高工作效率。
1.2背景
说明:
1待开发系统软件名称:学生成绩管理系统;
2本项目的任务是由各组员共同讨论,共同开发,用于提升软件开发的能力
3开发背景:本系统属于郑州轻工业学院的教务管理模块,实现的是网络管理系统中关于
学生成绩管理的子功能,通过此软件,提高用软件工程分析问题、解决问题的能力,同时增强对数据库和
MyEcIipse的使用能力提高软件开发的环境搭建能力,SSH框架的应用能力。4针对郑州轻工业学院教务管理系统,做出的更精简的系统。
1.3定义
1)存储过程是存储在服务器上的由
SQL语句和控制流语句组成的一个预编译集合。
SQL语句。触发器与存储过程的区
2)触
发器属于一种特殊的存储过程,可以在其中包含复杂的别在于触发器能够自动执行并且不含有参数。
1.4参考资料
11JAVAWEE技术整合应用于项目实践》清华大学出版社21《数据库技术与应用》
作者:张志峰
2需求规定
2.1目标
通过软件工程的设计方法,主要采用
javaEE,Struts,Hibernate,MySQL技术,以MySQL为数
提高学籍信息的精确度,
方便快速操
实现对学生成绩等数据进行有效管理,
据库开发程序,此开发系统需实现的目标为节约资源,作,精简人员,节约开支,结合学校管理的实际需求,以及对教师的课程等数据进行有效管理,
提供查询分析修改等功能,做到管理方便、查找方
便、可靠性高、存储量大、保密性好、寿命长、成本低等优势。

2.2用户需求分析
本系统包括两类使用用户:
一是管理员,即输入、修改和查询课程,管理学生学籍的老师,二是用户,即查询成绩,选课,管理个人信息,的学生。
三是教师,即教学的老师,管理课程的老师。
作为教务管理系统,其主要的需求人员是学生与老师,需求人员对其的要求可以大体概括如下:
1)学生的基本信息管理:学号,姓名,系别,班级,分数等;
2)课程的基本信息管理:课程号,课程名,任课老师,学分,学时,学期,学年,课程类型,课程内容简
介等;
3登录管理:要求使用者提供合法的用户名、密码和相关权限;
4成绩的录入:要求老师(管理员)录入成绩,要用到前面的学生信息和课程信息等;
2.3功能需求系统功能需求
我们的系统需要实现的功能主要包括以下几个方面:设计不同用户的操作权限和登录方法;管理员可以添加、修改和查询学生的档案记录,有对学生成绩信息开放度的管理权;
管理员对学生的档案和成绩进行审查,生成学生的档案记录报表和学生成绩报表;教师可以查询所授课程的学生信息,可以录入并查询所授课程的成绩;学生有查询个人档案信息和成绩信息的权利;用户界面的直观性和成绩查询结果的可视化。
在查询结果的可视化方面,着主要是尤其针对当前众多的成绩管理系统的“通病”涉及的利于查询用户的一项新功能,大的帮助。
满足上述要求的系统应该包括以下几个模块:务功
基本数据维护功能;数据库管理功能;基本业能。
,我们所
同时可以添加、修改和查询学生的成绩记录
除了带来便捷性之外,在数据的统计分析等方面也有很
2.4数据需求
通过调查,总结出用户对数据的需求如下:基本数据的维护功能添加学生的档案信息修改学生的档案信息删除学生的档案信息删除学生的成绩信息修改学生的成绩信息添加学生的成绩信息查询结果的可视化管理

(1学生信息包括:学号、学生姓名、性别、出生日期、所在学院、专业、班级等。
(2课程信息
括:课程编号、课程名称、所属专业等。
(3选课信息
包括:学生姓名、课程名称、开课时间、成绩等。

基本数据维护功能
1添加学生的档案信息。修改学生的档案信息。2删除学生的档案信息。添加学生的成绩信息。

修改学生的成绩信息。删除学生的成绩信息。查询结果的可视化管理。
描述图如下:二、数据库管理功能

1档案和成绩信息管理。
帐户信息管理。2档案和成绩信息查看管理。

基本业务功能31查看档案信息和成绩信息。添加成绩信息。2由此,学生成绩管理系统的总体用例图设计如下:2.5性能需求
通过分析,系统性能需求如下:
1.
系统的高速性、稳定性、安全性。2.系统的体系结构能够方便添加功能模块,适应业务、办公的发展。
3.
系统人机界面友好,易学易用。4.系统维护成本较低。5出错处理需求出错处理的任务是及时有效的避免或纠正错误:
1.接受到从另一个系统发来的违反协议格式的消息时要及时拒绝。2.发现系统自己出现错误时要及时提出出错处理需求2.6可行性分析

(1经济可行性
教务管理系统对教务管理进行统一管理,实现教务管理工作的系统化,
为教务管理提供便利。与传统教务管理相比,教务管理系统提高了工作效率。
规范化和人性化,

(2技术可行性
现在社会对jsp+servlet+hibernate+struts经很多,并且现在的各大高校和学生都拥有电脑。
的技术使用较为成熟的人才已
(3运行可行性
该系统需要搭建JVMJAVA虚拟机和TomcatMyEcIipse开发环境,在此环境下系统,并且在正确连接数据库后可以正常运行。
2.7用例图
教务管理系统的精简例图

2.8E-R图:

孚生E-K
教,币E-R



2.9数据库需求分析设计
表名
管理员表admin课程表表(classes学生表(student
学生选课表(student_classes
功能说明
用于管理管理员账号和密码用于管理课程的信息保存学生的有关信息
保存学生成绩,学生标识和课程号,是把学生成绩与学生表和课程表关联起来的一个中间表保存教师的相关信息

教师表(teacher
admin
字段名
idusername

类型
intintvarchar
长度
205050
是否允许为空
是否主键
是否外键
字段含义标识用户名密码
password
classes
字段名类型长度是否主键是否外键字段含义是否为空
cs_idtea_idchooseMax

intintint

305011


课程号教师号最大选课人


chooseCurNumroom_idcour_timecmarkcname

intvarcharvarcharvarcharvarchar
1150505060


已选人数教师号上课时间学分课程名

学生表(student字段名
stidsnousernamesexpassworddepartmentjiguanmarkemailimagetel
maxClasses
类型
intvarcharvarcharvarcharvarcharvarcharvarcharvarcharvarcharvarcharvarcharint
长度
5050501020306050501005011
是否允是否主键为空

是否外键
描述学生标识学号用户名性别密码院系籍贯学分电子邮件照片电话
最大选课数
学生选课表
字段名
cscorestid

类型
intintint
长度
115050
是否允许为
是否主键
是否外键
描述成绩学生标识课程号
csid

字段名类型长度是否主键是否外键是否为空字段含义
tidtnameageemail

intvarcharintvarchar

50505050



教师号教师姓名年龄电子邮件

teltpasswordtea_id
教师表
varcharvarcharvarchar
505050



电话教师密码教师类型
任务概述及系统功能概述
3.1教务管理系统的系统特点
简洁美观的操作界面(1
美观又简单的操作界面对于一个教务网站,起着至关重要的作用。操作过于复杂或网
本系统通过工作人员的精心打造,
使教务管理系

站的设计过于沉闷都会使使用者感到疲惫。统操作解密那的既时尚典雅,又动感十足。
(2、教务管理模式
系统管理员系统分为4个模块:系统管理员身份认证模块、教师管理模块、学生理模块。
3.2系统功能说明3.2.1功能划分
1、管理员管理系统
主登陆界面的:

标题部分截图:
教务管理系统
您好:欢迎kMk婪录教笛糸券;
学生管理模块部分截图:
灵型血耶改丢码K2^
2)、教师管理系统

教师管理模块界面截图:


3)、学生管理管理系统
学生管理功能模块部分截图:
常卑功能

教务管理系统
其她

教务管理系统
您好!欢迎阪1遷录教务系统!S录界面修改窑码退出夸录
4运行环境规定
4.1设备

运行本软件服务器端要在装有

Tomcat服务器的系统上的计算机。

运行本软件客户端要安装
IE浏览器或其它浏览器
4.2支持软件
本系统只是的操作系统包括:本系统支持的数据库:MySQL
本系统的开发工具:tomcat7.0MyEcIipse10.6

WindowsXP/Win7Win8Linux
5系统设计
项目结构:

后台:

src
jBAction-[TLoginjava
Admin
0
[Tadminjdvd
admirkhbm.xiTilCkss
{T匚崩旨cjavd
Cla55«5.hbiTi.xml
fflconf
HibernateSe-s^io
nF^ctoryjava
.BDmo
tnJJAdmirDaoJava>.=1Teach&DjojavaStudent[JJjU5C>~~rnanaggjavaJB'{Tstudentjava
studenthbm.xml
Teacher
>teacherjava
JJteacher.hbm.xmlQhibernatencfg.MmICtstriJtsLKml
Iccf■■di—+-i-irviIrciii-iIi/~fiCih
部分代码的实现展示:
publicclassLoginextendsA
1.publicStringexecuteQthrowsException{2.
publicvoidvalidateQ{
登录Action.Login类的具体实现:
packageAction;importjavax.servlet.http.HttpServletRequest;import
javax.servlet.http.HttpSession;
importorg.apache.struts2.ServletActionContext;importAdmin.admin;import
Dao.AdminDao;
importDao.TeacherDao;importDao.Usermanager;importStudent.student;import

Teacher.teacher;
importcom.opensymphony.xwork2.ActionSupport;classLoginextendsActionSupport{privateStringusername;
public

private

StringIntegerStringInteger
sno;id;password;radiobutton
request;
private
private
private
private
HttpServletRequest
Usermanagersm=newUsermanager(;publicStringgetUsername({
returnusername;
publicvoidsetUsername(Stringusername{this.username=username;
publicStringgetSno({
returnsno;
publicvoidsetSno(Stringsno{this.sno=sno;
publicIntegergetld({
returnid;
publicvoidsetld(lntegerid{this.id=id;
publicStringgetPassword
returnpassword;

{
publicvoidsetPassword(Stringpassword{this.password=password;
publicIntegergetRadiobutton({
returnradiobutton
publicvoidsetRadiobutton(Integerradiobutton{this.radiobutton=radiobutton;
@Override


publicStringexecute(throwsException{
//TODCAuto-generatedmethodstub
if(radiobutton==1{
students=newstudent(;s.setSno(getSno(;
s.setPassword(getPassword
;



if(sm.stuLogin(s{request=ServletActionContext.
getRequest(;
HttpSessionsession=request.getSession(;

studentsn=sm.getStudent1(sno;
session.setAttribute(
"username",sn.getUsername(;
"sno",this.sno;"id",sn.getStIdO;


session.setAttribute(session.setAttribute(returnSUCCESS
returnINPUT;
elseif(radiobutton==2{
TeacherDaotd=newTeacherDao(;teachertc=newteacher(;tc.setTeaId(sno;tc.setTpassword(if(td.tcLogin(tc{
request=ServletActionContext.

password;
getRequest(;
request.getSession(;
sno;
HttpSessionsession=


teachertec=td.getteacher(session.setAttribute(
"tname",
tec.getTname(;
"tid",tec.getTid(;

session.setAttribute(

return"tsuccess"
returnINPUT;
elseif(radiobutton==3{
AdminDaoad=newAdminDao(;adminam=newadmin(;am.setUsername(sno;am.setPassword(password;if(ad.adminLogin(am{
request=ServletActionContext.HttpSessionsession=

getRequest(;
request.getSession(;
adminadm=ad.getAdmin(sno;session.setAttribute(

"username",adm.getUsername(;
"id",adm.getId(;
session.setAttribute(

return"asuccess"
returnINPUT;else{
returnINPUT;
@Overridepublic
voidvalidate({
}OAjopejuoissegeiBUjaqiHeiBAud

(eoBJl>|OBlSluude
}(auoRd30X3ipiBO{
(AjopBjuo!SsespHnqUOIIBJnBjjuoo=Ajopejuoisses(NOIlVOOl-3Hd-9ldNOO9Jn6!juoouoRBjn6!juoo
}M
JAjopejuoissesAjopejuoisseseiBUjaqiq-BjoO^BISeiBAud(uo!iBJnByuooMau=
UORBJnByuooUOI^BJnBjjuoooiieiseiBAud(|BoonpeaiiiMau=leooqpeaiLU|Boonpeaiii
leuijORBISeiBAud
jiux-6peiBUjeq!M/..=NOIHOCrTmilzTOIzINOCBums6s印"!“
}AjopejuoisseseiBUjaqiHssepO!iqnd:UORBJn6J00bp91BU9q!L|&l0podLui
JuoisseseiBUjeqiq-Bjopodiui
JuoRdeox^eiBUjeqiHQlBUjeqiq-Bjopodiui:jUOO96B>pBd
:赃逅劇菅阴羊AjopBduo!SseseiBUjeq!H
}(uopejn§Tj-UO519SuoTXPjnSij-UO^rftqnd
}(AJO.jejuoTsAjoq.3eJUOTSS^S*^4eu3JO□iq.eq.sOT^qnd
}(Ajoq.3eJUOT553SpiTncpjpxoA□Tq.eq.s□Tjqnd
}uoT4.dd^X3d4.etJ3qTHsojq(uoissdS4^2uoiss^sdTfqncl
}Zjoq.3ejuoTSses^4PUj^qTHsse^n
oT^qrid
(01Bp!|BA-jedns
qnispo

9UJpslejeueB-oin^OQOl//
publicstaticSessiongetSession(throwsHibernateException{
Sessionsession=(SessionthreadLocal.get(;

if(session==null||session.isOpen({
if(sessionFactory==null{
rebuildSessionFactory(;
session=(sessionFactory!=null?sessionFactory.openSession(:null;
threadLocal.set(session;
returnsession;
publicstaticvoidrebuildSessionFactory({
try{
configuration.configure(CONFIG_FILE_LOCATION;
sessionFactory=configuration.buildSessionFactory(;}catch(Exceptione{
e.printStackTrace(;
publicstaticorg.hibernate.SessionFactorygetSessionFactory({
returnsessionFactory;
publicstaticConfigurationgetConfiguration({
returnconfiguration;
publicclassAdminDao
publicadmingetAdmin(Stringm
I
.
.


1.

2.3.
publicvoidsaveAdmin(admina
publicbooleanadminLogin(adminad^
AdminDao类的具体实现:
packageDao;

importimportimportimportimport

java.util.ArrayList;java.util.List;org.hibernate.Query;
org.hibernate.Session;
Student.student;
org.hibernate.Transaction;
importimport

importconf.HibernateSessionFactory;public
class
Usermanager{Sessionsession;TransactiontransactionQueryquery;
voidsaveStudent(studentst{
getSession(;
Class.Classes;

privateprivateprivatepublic
session=HibernateSessionFactory.try{
transactionsession.save(st;transaction.commit(;catch(Exceptione{
e.printStackTrace(;
session.beginTransaction(;
publicvoidupdateStudent(studentst{
try{
session=HibernateSessionFactory.session.update(st;transaction.commit(;catch(Exceptione{
e.printStackTrace(;
getSession(;
publicvoiddeleteStudent(Stringsno{
try{
session=HibernateSessionFactory.
transaction
session.delete(sno;transaction.commit(;
}catch(Exceptione{
getSession(;
session.beginTransaction(;


e.printStackTrace(;
publicstudentgetStudent(intstId{
getSession(;
session.get(student.
class
,stId;
session=HibernateSessionFactory.


studentstudent=(studentreturnstudent;
publicListallStudent(
intpageNumber{ListallStudent=new
ArrayList(;
Stringhql="fromstudentasst"session=HibernateSessionFactory.getSession(;
query=session.createQuery(hql;
query.setFirstResult((pageNumber-1*10;query.setMaxResults(IO;allStudent=query.list(;returnallStudent;
publicListallClass(
intpageNumber{ListallClass=
newArrayList(;
Stringhql="fromclassasst"session=HibernateSessionFactory.getSession(;
query=session.createQuery(hql;
query.setFirstResult((pageNumber-1*10;query.setMaxResults(10;allClass=query.list(;returnallClass;
publicstudentgetStudent1(Stringm{
session=HibernateSessionFactory.
getSession(;
Queryquery=(Querysession
.createQuery("formStudentasswheresno='"studentst=(studentquery.uniqueResult(;returnst;
public
booleanstuLogin(studentstu{
if(stu.getSno(!=
null
null&&stu.getPassword

!=
Queryquery=(Query
session
.createQuery("fromstudentasswheresno='"
session=HibernateSessionFactory.+"'andpassword='"getSession+stu.get(;
Password

+
students=(studentquery.uniqueResult(;if(s!=null{
returntrue;
+stu.getSno(








returnfalse;
publicstudentgetstudent2(intstId{
session=HibernateSessionFactory.getSession(;
Queryquery=(Query
session

.createQuery("fromstudentasswherestld="'
+stId+
;
studentst=(studentquery.uniqueResult(;returnst;
publicintgetStudentAmount({intstudentAmount=0;
session=HibernateSessionFactory.
getSession(;
Stringhql="selectcount(*fromstudentasst"query=session.createQuery(hql;longcount=(Longquery.uniqueResult(;studentAmount=(intcount;returnstudentAmount;
teacher类的具体实现:
puIblicclass
TeacherDao-
1.public
voidsaveTeacher(teachertc'
2.publicvoidupdateTeaicher{teachertc■
3.public
void
deleteTeacher(Int
4.publicteaclhengetTeachen(inttid{
5.publicListallteachiep(lntpageNumber{6.publicbooleantcLogin('teachertc{7.
public
■teacher
her(ningm■£
public
xrrtgetzStuden±Amountf{
8.
teacher类的具体实现:
packageDao;




importjava.util.ArrayList;import
java.util.List;
importorg.hibernate.Query;importorg.hibernate.Session;importorg.hibernate.Transaction;importconf.HibernateSessionFactory;importAdmin.admin;importClass.Classes;importStudent.student;importTeacher.teacherpublic
class
TeacherDao{privateSessionsession;privateTransactiontransactionprivateQueryquery;
public
voidsaveTeacher(teachertc{
session=HibernateSessionFactory.getSession
try{
transaction=session.beginTransaction(;session.save(tc;transaction.commit(;
}catch(Exceptione{
e.printStackTrace(;
publicvoidupdateTeacher(teachertc{session=HibernateSessionFactory.getSession
try{
transaction=session.beginTransaction(;session.update(tc;transaction.commit(;
}catch(Exceptione{
e.printStackTrace(;
publicvoiddeleteTeacher(inttld{
session=HibernateSessionFactory.getSession
try{
transaction=session.beginTransaction(;
session.delete(session.get(teacher.class,tId;transaction.commit(;
}catch(Exceptione{
e.printStackTrace(;

(;
(;
(;

publicteachergetTeacher(inttId{
session=HibernateSessionFactory.getSession(;teacherteacher=(teachersession.get(teacher.class,tId;
returnteacher;
publicListallteacher(
intpageNumber{Listallteacher=new
ArrayList(;
Stringhql="fromteacherasst"
session=HibernateSessionFactory.getSession(
;
query=session.createQuery(hql;query.setFirstResult((pageNumber-1*10;query.setMaxResults(10;allteacher=query.list(;returnallteacher;
publicbooleantcLogin(teachertc{
if(tc.getTeaId(!=null&&tc.getTpassword(!=
null{session=HibernateSessionFactory.getSession(;
try{

Queryquery=(Querysession.createQuery("fromteacherastwhere
t.teald='"
+tc.getTid(+
"'andt.tpassword="
+tc.getTpassword(+
""';
teachers=(teacherquery.uniqueResult(;if(s!=null{
returntrue;
returntrue;
}catch(Exceptione{
e.printStackTrace(;
returnfalse;
publicteachergetteacher(Stringm{
session=HibernateSessionFactory.
getSession(;
Queryquery=(Querysession.createQuery("fromteacherasawhereteacId='"teachertc=(teacherquery.uniqueResult(;returntc;
publicintgetStudentAmount({intteacherAmount=0;
Stringhql="selectcount(*fromteacherastc"query=session.createQuery(hql;longcount=(Longquery.uniqueResult(;
session=HibernateSessionFactory.getSession(;
+m+"';



teacherAmount=(intcount;returnteacherAmount;
管理员登陆代码部分实现:
puIblicclassUsermanager
1.2.3.4.5.6.7.8.9.

publicvoidsaveStudent(studentst{publicvoidupdateStudent(studentstpublic
voiddeleteStudent(Stringsno{
publicstudentgetStjdent(intstld{
publicListallStudent(intpaigelNumber{publicListallClass(intpageNuinber{publicpublicpublic
studentbooleanstudent
getStudentlCStrirgm{StuLogin(studentstu{getstudentZClntstld{
10.
publicintgetStudentAmourt({
Usermanager类的具体实现:
packageDao;importimportimport
java.util.ArrayList;java.util.List;org.hibernate.Query;
importorg.hibernate.Session;

importorg.hibernate.Transaction;


importimportpublicimport
Student.student;classUsermanager{Class.Classes;
conf.HibernateSessionFactory;

privateTransactiontransactionprivateprivatepublic
Queryquery;
Sessionsession;voidsaveStudent(studentst{



session=HibernateSessionFactory.getSession(;
try{
transactionsession.beginTransaction(;

session.save(st;
transaction.commit(;
catch(Exceptione{
e.printStackTrace(;publicvoidupdateStudent(studentst{
try{

session=HibernateSessionFactory.

session.update(st;

getSession(;
transaction.commit(;
catch(Exceptione{
e.printStackTrace(;

voiddeleteStudent(Stringsno{public
session=HibernateSessionFactory.getSession(;
try{

transactionsession.beginTransaction(;

session.delete(sno;

transaction.commit(;
catch(Exceptione{

public
e.printStackTrace(;
studentgetStudent(intstId{
getSession(;
session.get(student.class,stId;
session=HibernateSessionFactory.studentstudent=(studentreturnstudent;
publicListallStudent(
ListallStudent=new

intpageNumber{ArrayList(;
Stringhql="fromstudentasst"session=HibernateSessionFactory.query=session.createQuery(hql;
query.setFirstResult((pageNumber-1*10;query.setMaxResults(IO;allStudent=query.list(:returnallStudent;
getSession(;
publicListallClass(intpageNumber{



ListallClass=newArrayList(;
Stringhql="fromclassasst"session=HibernateSessionFactory.getSession(;
query=session.createQuery(hql;
query.setFirstResult((pageNumber-1*10;query.setMaxResults(IO;allClass=query.list(;returnallClass;
publicstudentgetStudent1(Stringm{
session=HibernateSessionFactory.
getSession(;
Queryquery=(Querysession
.createQuery("formStudentasswheresno='"studentst=(studentquery.uniqueResult(;returnst;
public
booleanstuLogin(studentstu{
if(stu.getSno(!=
session=HibernateSessionFactory.null&&stu.getPassword

nullgetSession
!=
(;
Queryquery=(Query
session
.createQuery("fromstudentasswheresno='"
+"'andpassword='"
+stu.getPassword

students=(studentquery.uniqueResult(;if(s!=null{
returntrue;
return
false;

publicstudentgetstudent2(
intstId{
session=HibernateSessionFactory.getSession(;
Queryquery=(Query
session
session=HibernateSessionFactory.getSession(;

+stu.getSno(
+










.createQuery("fromstudentasswherestld="'
studentst=(studentquery.uniqueResult(;returnst;
+stId+
publicintgetStudentAmount({intstudentAmount=0;
Stringhql="selectcount(*fromstudentasst"query=session.createQuery(hql;longcount=(Longquery.uniqueResult(;studentAmount=(intcount;returnstudentAmount;
6心得体会
虽然项目不算很大,但在这段过程中却真正体会了软件设计过程中的艰辛与快乐,个问题解决时的快意,一个个问题产生后的迷茫,都让我回味无穷
选了这个课程设计题目的时候感觉挺简单的查找增加,,显示,统计,这些平时都学过
但是实际操作中还是遇到了很多问题
一个
所以特意到图书馆专门借了几本关于图书馆管理
能对知识有更深层次的理解.
方面的书同时也希望能把平时没有学好的地方好好补一补
切准备就绪把平时写的相关的实验报告拿出来参考对比慢慢才找到一些感觉把设计写出来。经过几天终于写完了报告的初稿然后到网上查阅相关的报告发现和他们还是有很大差还有很多格式问只能参考示例一个一个的修改。首当其冲的是标题的格式,字号不统一等粗心导致的小毛病这些错误很容易改正。到后面的错误就有些麻烦了
好多的图都要用
OFFIC的相关软件去画。一下任务变得艰巨起来但后来经过不懈的努力,我们终于把实验报告完成了,当
完成的那一刻我们都很高兴
现在软件已经基本完成了,
剩下的软件测试和用户帮助文档会轻松很多的。
在软件设计
过程中,收获了一些项目设计的心得是弥足珍贵的:
1.对于基于数据库的软件产品,需求分析,数据库的结构设计是重中之重,因为如果数
据库结构设计不合理,有时会导致一定程度的返工,这时修改代码所消耗的时间会让你觉得得不偿失的,数据库结构设计的好坏在很大程度上决定了软件设计的速度。
2.对于代码的编写,一定要字斟句酌,一个不起眼的问题,有时甚至会导致系统崩溃,听有人说UNIX
内核的严谨性高到就是插入一个空格都会产生系统崩溃,我觉得正说明了这个道理,一个优秀的软件,代码一定是精炼而无累赘的。
3.和小组的成员一起完成了这一个项目,提高了我们的合作意识,认识到软件开发不仅只是写写代
码,代码虽然重要,但需求分析,结构化设计,开发文档,团队管理等更重要。从进入大学来我们学习了C,javaajax,数据结构等。特别是老师的认真授课
习生活很有好处最后感谢老师一学期以来对我们的教育帮助。
精心讲解下
同学们学到了很多东西知识方面的很多还有平时细心的习惯也养成了。这对我们以后的学


本文来源:https://www.2haoxitong.net/k/doc/7e67ef8fbc1e650e52ea551810a6f524cdbfcb64.html

《教务管理系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式