基于ssh架构的学生成绩管理系统Word文件下载.docx

上传人:b****2 文档编号:6013691 上传时间:2023-05-05 格式:DOCX 页数:19 大小:23.98KB
下载 相关 举报
基于ssh架构的学生成绩管理系统Word文件下载.docx_第1页
第1页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第2页
第2页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第3页
第3页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第4页
第4页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第5页
第5页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第6页
第6页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第7页
第7页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第8页
第8页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第9页
第9页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第10页
第10页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第11页
第11页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第12页
第12页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第13页
第13页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第14页
第14页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第15页
第15页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第16页
第16页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第17页
第17页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第18页
第18页 / 共19页
基于ssh架构的学生成绩管理系统Word文件下载.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于ssh架构的学生成绩管理系统Word文件下载.docx

《基于ssh架构的学生成绩管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于ssh架构的学生成绩管理系统Word文件下载.docx(19页珍藏版)》请在冰点文库上搜索。

基于ssh架构的学生成绩管理系统Word文件下载.docx

xsb

刊名

福述|

数据类晏

可杳

默认值

说朗

XH

学号

Char(6)

X

主键

2,设计糸统架构

利用分层架构模式,设计糸统架构,糸统可分为表示层、业务逻辑层和教据持久层。

如下图所示:

日…龙)xscjMaiiag^

由…昌:

_hibernate3

[白・注src

国•加org.action

・・•

it]•org.dao

匡]…田org・4包o・imp

•••

审or£

-niodel

lie

Ia-JBorg.service

II•■

国…加org.service,imp

田••曲org.tool

=…圍struts.pfopc:

丫ties

5••…[X,struts,xml

•I

建立相应packageo

(])定义UserLibrary

(2)增加Spring开发能力(添加jar包使用UserLibrary,新建

applicationContext.xmD

注:

可以不增加U$erLibrary,直換把需要的jar包挎貝列classpath下。

4,卖现Hibernate久层

(1)添加Hibernate开发能力

添加jar包:

如黑第一步中己增加,此步可以省略。

注意:

需要把Hibernate由Spring来管理,其中包括亦Spring中配置<

<

dataSourcew和MsessionFactory°

(2)通过MyEclipse中Hibernate反向工程,分别生成表对应的

POJO类及相应的映射文件。

注盘:

所有的POJO类和映射文件f^.hbm.xmU放淮.org.model这个packageTo

堆点hxsbf学生表丿的腆射丈件中需要很置和专业的多对一关余,参考代码如下:

?

xmlversion="

1・0”encoding=Mutf-8H?

>

!

DOCTYPEhibernate-mappingPUBLICh-//Hibernate/HibernateMappingDTD3.0//EN”

"

hibernate.sourceforge.net/hibern8te・mdpping・3・0・dtd"

hibernate-mapping>

clas$n8me=9rg・model・Xsb”table=HX$BMschema=,,dboncatalog=uXSCJH>

idname=HxhMtype=Mjava.lang.String*^

columnname=hXHwlength=H6H/>

vgeneratorclas$=Massigned,,/>

/id>

propertyrwme="

xm"

type='

*java.Iang・String”>

columnname=MXMHlength=H50M/>

/property>

propertyname=,'

xb,'

type=,'

java.Ian&

Byte"

columnn8me=”XB"

/>

propertyname=nc$sjMtype=java.util.Date,,>

columnname=,tCSSJf1length=M23M/>

propertyname="

zxf'

type="

java.lang」ntegerh>

columnn8me=”ZXF"

propertyname=Hbzntype='

java」8ng・String"

columnname=HBZMlength="

500"

zpM>

columnn8me=”ZP”/>

many-to-onename-"

zybHdass-^org.model.Zyb"

fetch-"

select"

Iazy-"

false,t>

columnname-"

ZYJDh/>

/many-to-one>

/class>

/hibernate-mapping>

堆点2:

成绩表Ccjb丿中需要合主徴,因为成绩表中的主健是

由xh和kch组成,黒考代码如下:

xmlversion=,,1.0,'

encoding=Mutf-8"

v!

-

MappingfileautogeneratedbyMyEclipsePersistenceTools

->

clas$name=Morg.model.CjbMtable=,,CJBMschema=HdboHcatalog=,,XSCJ'

>

<

•・复金主皱配其中两个key-property.分别对应两个主皱・・>

composite-idndass=worg.model.CjbldH>

key-propertyname-wxh"

type-"

java.lang.String*1〉

columnname-^XH"

length-w6R/>

Aey-property>

key-propertyname-wkchwtype-f,java.lang.$tring"

KCHwlength-"

4w/>

Aey-property>

/composite-id>

cjMtype=Hjava.lang」ntegerM>

columnname='

*CJM/>

propertyname="

xftype=,,java」ang」ntegerM>

columnn8me=”XF"

/property>

/clas$>

对应的POJO类由复合主键的POJO类和成绩表的POJO类组成,参考代码如下:

Cjbld.java

packageorg.model;

publicclassCjbldimplementsjava.io.Serializable{

privateStringxh:

privateStringkch:

publicCjbld0{

}

publicCjbld(Stringxh.Stringkch){

this.xh=xh;

this,kch=kch:

publicStringgetXhQ{

returnthis.xh;

publicvoidsetXh(Stringxh){this.xh=xh;

publicStringgetKchO{returnthis.kch:

publicvoidsetKch(Stringkch){this.kch=kch;

Cjb.java

publicclassCjbimplemejava.io.Serializable{privateCjbldid:

privateIntegercj;

privateIntegerxf:

publicCjbO(

publicCjb(Cjbldid){thls.id=id;

publicCjb(Cjbldid.Integercj.Integerxf){this.id=id;

this.cj=cj;

this.xf=xf:

publicCjbldgetldO{returnthis.id:

publicvoidsetld(Cjbldid){this.id=id;

publicIntegergetCjO{

returnthis.cj:

publicvoidsetCj(lntegercj){this.cj=cj;

publicIntegergetXfO{

returnthis.xf:

publicvoid$etXf(lntegerxf){

this.xf=xf:

iA:

所有的畝射丈件席要农Spring紀JL丈件中注册,参考

applicationContext>

xml如下:

beanid="

datasource"

class=Mmons.dbcp.BasicDataSourceM>

-岌义数据库驱动-->

propertyname=ndriverClassNamenvalue=,,.mysql.jdbc.Driver,,>

・・岌义致据库URL->

propertyname=nurrvalue=t,jdbc:

mysql:

//localhost:

3306/xscj,,>

-岌义的用户名

propertyname=,,usernameMvaIue=nrootM>

・・岌义数摒库密码-->

propertyname=npasswordnvalue=nroof>

/bean>

-主义Hibernate的SessionFactory->

vbeanid=^sessionFactory11

class=Horg.springframework.orm.hibernate3.Local$essionFactoryBeanM>

-龙义SessionFactory必须注入DataSource->

propertyname=,fdataSourceM>

refbean="

datasource”/>

-龙义Hibernate的SessionFactory為性・•>

propertyname=nhibernatePropertiesn>

props>

propkey=,,hibernate.dialectn>

org.hibernate.dialect.MySQLDialect

/prop>

/props>

-岌义POJO的映射丈件一〉

propertyname=,,mappingResources,,>

list>

value>

org/model/Dlb.hbm.xml<

/value>

vaIue>

org/model/Xsb.hbm.xml<

org/model/Kcb.hbm.xml<

org/model/Zyb.hbm.xml<

/vaIue>

value>

org/mode!

/Cjb.hbm.xml<

/value>

5,卖现DAO

所有DAO层的卖现类需要继承HibernateDaoSupport类,参考代码如下:

packageorg.dao.imp;

importjava.util.List;

importorg.dao.DIDao;

importorg.model.Dlb;

importorg.springframework.orm.hibernate3.support.HibernateDaoSupport;

publicclassDIDaoImpextendsHibernateDaoSupportimplementsDIDao{

publicbooleanexistXh(Stringxh){

Listlist=getHibernateTempIateO»

findf,fromDlbwherexh=?

\xh);

if(list.sizeO>

0)

returntrue;

else

returnfalse:

publicDlbfind(Stringxh.Stringkl){

Stringstr[]={xh,kl);

ListIist=getHibernateTempIate0.findf7romDlbwherexh=?

andkl=?

\str);

if(listsizeO>

return(Dlb)Iist.get(0);

returnnull;

publicvoidsave(Dlbuser){

getHibernateTempIateO.save(user):

注裔:

所有DAO层的卖现类都需要在Spring配置,并且必须获得一个SessionFactory的引用,然后才能完成持久化访问。

换句话说,DAO的实现类都交由Spring彖薜的Bean来管理。

参考Spring中的

配置DAO的部分代码如下"

beanid=,,dlDaoMclass=Horg.dao.imp.DIDaolmp°

se$sionFactoryn>

refbean=nse$sionFactoryM/>

beanid=,,xsDao,'

class=Horg.dao.imp.X$DaolmpM>

$essionFactory”〉

refbean="

se$sionFsctory"

/〉<

/bean>

kcDao"

clas$=Horg.dao.imp.KcDaolmpM>

propertyname=Hse$sionFactoryM>

refbean=HsessionFactoryV>

beanid=”zyD8o"

cla$s=Hor&

d8O・imp.ZyDdolmp"

se$sionFactoryH>

sessionFactoryV>

cjDao”cla$$=Horg.dao.imp.CjDaolmpM>

sessionFactory"

refbean=n$e$sionFactory*7>

6、实现业务逻辑层(Service层丿

主要卖现对DAO层的调用。

堆点依赖注入

依赖注入if•先要亦需要注入的类中步朗一个变量(对象丿,同时生成该变量(对象丿的setter方法。

其次需要在Spring配置文件中设置需要注入的对象。

例如,需要亦螯录的DIServiceManage类中注入DIDaoImp卖例

化后的对象,步骤有二:

首先,在DIServiceManage中步明diDao,同肘生成diDao的setter方法,参考代码如下:

packageorg.service.imp;

importorg.dao.DIDao:

importorg.service.DIService;

publicclassDIServiceManageimplementsDIService{

〃对DIDao进行依赖di入

privateDIDaodiDao;

publicvoidsetDIDao(DIDaodiDao){

this.dIDao=diDao;

returndlDao.existXh(xh):

returndlDao.find(xh.kl);

diDao.save(user);

其次,A.Spring的紀置文件中进行配置:

beanid="

diService"

class='

org.service.imp.DIServiceManag3>

propertyname=HdlDaon>

refbean=HdlDao7>

7.对业务逻辑增加事务管理

采用BeanNameAutoProxyCreator,根据BeanName自动生成

事务代理的方式。

参考代码:

beanid=Mtran$actionManager"

clas$=Horg.springframework.orm.hibern8te3・Hibern8teTr8nsactionMansger”>

-HibernateTransactionManagerbean需妥依赖垃入一个SessionFactorybean的

引用“〉

propertyname=,'

$essionFactoryH>

reflocal=HsessionFactoryM/>

・・犯置.孝务捏就霉“〉

beanid=,,transsctionlnterceptor”

clas$=Horg.springframework.transaction.interceptor.Transactionlnterceptor'

^

—丰务拦禰赛bean需要依籍垃入一个字务管理春->

propertyname=HtransactionManager"

ref="

transactionManager”/>

transactionAttributes”〉

・・下面麦义孝务传林禺性-〉

prop$>

propkey=ndeleteAU>

PROPAGATION_REQUIRED<

propkey=>

PROPAGATIONREQUIRED<

/prop>

-丸义BeanNameAutoProxyCreator.该besn无需枚引用,因此没有id禺性.迂个bean根据孝务栏範各为nfebeanfj动创雄手务代理一〉

bean

clas$=,'

org.$pringframework.aop.framework,butoproxy.BeanNsmeAutoProxyCrestor"

••指丸对满足哪些beanname的beanlj动生成业务代理->

propertyname=HbeanName$M>

v!

•・下面是所冇需宴勺动创建李务代理的bean->

li$t>

xsService<

kcService<

cjService<

zyService<

/list>

-此处可增加其他需妄自动创建李务代理的bean->

-下面丸义BeanNameAutoProxyCreator所需的李务捏就孚・・>

propertyname=uinterceptorNamesM>

vaIue>

transactionlnterceptorv/value〉

-此处可埴加其他折的Interceptor->

8.卖现表示层CAction类和JSP丈件丿

(1J配置web.xmL增加Struts2的过德赛和Spring的监听器,参

考代码如下:

filter>

filter-name>

strut$2<

/filter-name>

fiIter-class>

org.apache.struts2.dispatcher.FilterDi$patcher

/filter-cla$s>

/filter>

f

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2