- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实例讲解SSH技术架构.
实例讲解SSH技术架构
王青 2007-08-04
前言
Struts + Spring + Hibernate 是近两年在Web Application中使用的比较多的技术,虽然新的技术不断涌现,SSH可能终将成为昨日黄花,但是在其框架间的思想却是不会过时的。故而希望借此机会与师弟妹们共同学习?
注:部分资料和图片来自Internet在此向原作者表示诚挚的感谢!
简介
我是个懒人,没有仔细地查Struts,Spring和Hibernate的准确定义;这里和大家分享下我的认识:
Struts
Struts是一个建立在Servlet和JSP技术基础上的Web Application表示层的技术框架,它实现了MVC2的模式,从而使得表示层中的视图和表示逻辑较好的分离(换言之,就是说你不用写大量的java代码在你的JSP中了)
图表 1 Struts MVC2
Spring
Spring是一个轻量级的模块化框架,我们常用它来取代业务逻辑层的应用服务器,由它来提供原来由应用服务器提供的诸如对象创建,事务管理,日志等等公共基础设施。它实现了Inverse of Control(Dependency Injection)和Aspect Oriented Programming的编程模型。简单说就是:IoC使得对象的初始化完全由Spring来负责,因此对象实例之间的关系成为可声明的(在Spring的配置文件中声明);AOP使得我们不再为跨越系统各个模块的公共问题伤脑筋(事务、安全等等),Spring为我们提供了接近完全透明的解决方案。
图表 2 Spring Architecture
Hibernate
Hibernate是一个数据库访问框架,着力于提供可声明的(declarative)持久化服务。
图表 3 Hibernate
准备实例
这里我们有一个具体的例程来和大家一同学习SSH:
SelectiveCourseManagementSystem.rar
在这个例子里具体的来说我们就是要使用Spring为我们业务逻辑层提供事务服务,并以它为胶水来把Struts和Hibernate整合起来。
图表 4 Spring in Middle Tier
例程环境
MyEclipse 5.5 GA(eclipse 3.1以上也可以,MyEclipse好用些而已)
MySQL 4.0以上
开始前的准备
将压缩文件直接解压后导入Eclipse
新建一个create.sql脚本,将sql.txt文件中sql脚本copy过来
在Eclipse中连接数据库,运行create.sql脚本
在新数据库中加入数据请参照下述Domain Model,注意数据之间的关系(请添加数据,否则无法测试)
将application-service.xml中的数据库连接的属性修改为当前数据库服务器对应的值
修改项目的build path中已经无效的mysql connector jar, 将其替换为恰当的connector
部署项目
start Tomcat 在浏览器中测试your-tomcate-stratpoint/StudentManger
Ok,the SSH application is running now!让我们开始分析?
简单的需求分析
注:简便起见,这里我们没有完整的需求分析,大家注意在实践中还是要完整的需求过程的。
这个应用是个简单的选修课管理系统:
Use Case分析
图表 5 Use Case Diagram
描述
该系统可以方便处理学生在课程选报,学分查询,成绩查询,以及 成绩发布等。系统以班级为核心,一门课程可以对应多个班级一名教师可以带不同的班级学生可以选报不同课程所对应的班级班级自身有目前人数,和最大人数,以及上课时间,上课地点的属性。学生在选报班级之后,班级的人数会自动加一,直到等于最大人数时,其他学生将会有人数已满的错误提示。如果学生选择了同一课程的不同班级,也将收到错误提示。学生有密码,系别,学分,地址,电话等属性。教师在系统中主要负责成绩发布教师可以对其所带的班级的学生的成绩修改系统会以成绩是否大于等于60来判断学生是否通过考试,如果通过会将该课程的学分累加到学生学分如果教师二次修改了成绩,而且小于60,系统会在学生学分上扣掉该课程的分数。课程在系统中具体体现为班级,自身带有学分属性。系有编号,名称的属性,同时可以作为联系教师,课程,学生的桥梁。功能模块身份验证模块: 根据用户名,密码,用户类别 转发用户到不同的模块。学生模块: 查看课程,查看班级,选报课程,查看己选课程,成绩查询。教师模块: 录入成绩管理员模块:对学生,教师,课程,班级,系 增,删,查,改。
图表 6 Domain Model
您可能关注的文档
- 实习报告参考样本发给学生..doc
- 实习报告参考资料..doc
- 实习报告大纲..doc
- 实习报告南阳华祥..doc
- 实习报告参考文献..doc
- 实习报告封面及装订顺序_地质工程与测绘学院..doc
- 实习报告实习任务书模板..doc
- 实习报告一卫星资料接收系统的使用..doc
- 实习报告工建..doc
- 实习报告广东金融学院..doc
- 毕马威-银行业可持续相关信息披露:2024年报告周期基准分析结果.pdf
- 国信证券-金属行业中期投资策略:供给收缩需求稳增,逆全球化下金属价值重估.pdf
- 方正证券-基础化工行业-25Q2化工景气底部延续,关注业绩增量具备确定性的板块及个股.pdf
- 西部证券-京东物流-2618.HK-首次覆盖报告-开放创新、稳健成长的一体化供应链龙头.pdf
- 东北证券-机械设备行业机器人轻量化-材料与技术的革新之路.pdf
- 西部证券-康农种业-837403-首次覆盖报告:种业后起之秀大单品快速放量打开成长空间.pdf
- 平安证券-社会服务行业2025年中期策略报告:新世代、新需求、新消费.pdf
- 长城证券-Robotaxi正式推出量子计算迎来最新突破看好智驾、量子产业链长期发展.pdf
- 国盛证券-容知日新-688768-蓝海市场渗透率提升,预测性维护让工业更美好.pdf
- 广发证券-金融-银行行业:如何理解外币存款增量回升?.pdf
最近下载
- 电力设备公司产品制造车间生产定额计件工资实施办法.docx VIP
- 2023国有企业“三重一大”决策制度实施细则办法.pdf VIP
- 安徽大学《地球科学概论》课件-第4讲大气圈、冰冻圈、岩石圈.pptx VIP
- 国家开放大学(电大)《农业生态基础.》2020年09月春季期末考试真题及答案(试卷代号2794).pdf VIP
- 餐饮行业员工职业规划.pptx VIP
- 《数学数学期望》课件.ppt VIP
- 肾病内科专业疾病临床诊疗规范2025版.docx VIP
- 质量信得过班组培训课件.pptx VIP
- 《高级英语FacetoFacewithHurricaneCamille》-精选课件(公开).ppt VIP
- 高中化学课件:芳环上的亲核取代反应.pptx VIP
文档评论(0)