已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于Spring+Struts框架开发指南,1.J2EE部分总体架构. 2.掌握本框架的前提基础 3.框架技术涉及的原理 4.J2EE部分系统框架介绍 5.系统开发框架-目录结构 6.系统框架规范 7.快速开发模块简单应用介绍,系统架构介绍 系统架构采用典型的三层架构,分别是展现成,应用层,持久层。 J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,,企业内部或外部难以互通的窘境 ,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值 J2EE平台由一整套服务(SERVICES)、应用程序接口(APIS)和协议构成,它对开发基于WEB的多层应用提供了功能支持。在本文中我将解释支撑J2EE的13种核心技术:JDBC, JNDI, EJBS, RMI, JSP, JAVA SERVLETS, XML, JMS, JAVA IDL, JTS, JTA, JAVA MAIL 和 JAF,同时还将描述在何时、何处需要使用这些技术,J2EE部分总体架构,掌握本框架的前提基础,1.掌握Struts技术 2.掌握Spring原理 3.了解并掌握MVC构架 4.掌握基于控制层,业务层,DAO层的分层原理,框架技术涉及的原理,1、J2EE容器服务器介绍 J2EE应用系统只有部署在J2EE容器中才能运行 J2EE容器分离了一般应用系统的一些通用功能 功能机制的设计开发有一定难度,同时运行的稳定性和快速性都非常重要 形成了专门的J2EE容器服务器产品,如Tomcat JBoss、Websphere、WebLogic等 2、面向接口编程 所有的定义与实现分离的原则,便于程序规范化设计 方便的代码复用,无需了解技术细节,便于团队协同开发 实现松散耦合,便于以后升级,扩展 缺点: 只能遵循接口规范,不知道实现的技术细节 所谓的设计比实现难,3、Spring依赖注入模式 对象间依赖关系构成分散,不宜维护 这种在方法中new一个对象,缺乏统一的管理和控制,如果用这种方式,依赖构成可能分散在程序的各个角落,日后程序可读性和维护性将受到影响 可能会带来频繁创建对象的损失 直接在方法中new对象,每一次方法调用,都需要一次对象构造过程 依赖注入(DI)背后的基本原理是对象之间的依赖关系(即一起工作的其它对象)只会通过以下几种方式来实现:构造器的参数、工厂方法的参数,或给由构造函数或者工厂方法创建的对象设置属性。因此,容器的工作就是创建bean时注入那些依赖关系。相对于由bean自己来控制其实例化、直接在构造器中指定依赖关系或者类似服务定位器(Service Locator)模式这3种自主控制依赖关系注入的方法来说,控制从根本上发生了倒转,这也是控制反转(Inversion of Control, IoC)名字的由来。,代码片段1,public void greet() Speaker s = new Speaker(); s.sayHello(); 不用容器的编码模式,代码片段2,public void greet() Speaker s = (Speaker)context.lookup(“ejb/Speaker“); s.sayHello(); EJB编码模式,代码片段3,public Speaker s; public Greeting(Speaker s) this.s = s; public void greet() s.sayHello(); 注入编码模式(Spring),使用容器的好处,由容器来维护各个类之间的依赖关系(一般通过Setter来注入依赖,而不是构造函数)。Greeting并不需要关心Speaker是哪里来的或是从哪里获得Speaker,只需要关注自己分内的事情,也就是让Speaker说一句问候的话。 为什么要使用框架技术 1、框架一般是成熟,稳健的,可以无需再考虑和处理系统很多细节问题 2、使用成熟的框架,一些基础工作已经构建完成,只需要集中精力完成系统的业务逻辑设计 3、成熟的框架结构性好,扩展性好,多使用XML描述和解耦,便于升级扩展和维护,J2EE部分系统框架介绍,Struts 概览 Client browser(客户浏览器) 来自客户浏览器的每个 HTTP 请求创建一个事件。Web 容器将用一个 HTTP 响应作出响应。 Controller(控制器) 控制器接收来自浏览器的请求,并决定将这个请求发往何处。就 Struts 而言,控制器是以 servlet 实现的一个命令设计模式。 struts-config.xml 文件配置控制器。,业务逻辑 业务逻辑更新模型的状态,并帮助控制应用程序的流程。就 Struts 而言,这是通过作为实际业务逻辑“瘦”包装的 Action 类完成的。 Model(模型)的状态 模型表示应用程序的状态。业务对象更新应用程序的状态。ActionForm bean 在会话级或请求级表示模型的状态,而不是在持久级。JSP 文件使用 JSP 标记读取来自 ActionForm bean 的信息。 View(视图) 视图就是一个 JSP 文件。其中没有流程逻辑,没有业务逻辑,也没有模型信息 - 只有标记。标记是使 Struts 有别于其他框架(如 Velocity)的因素之一。,Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。 Spring 框架是一个分层架构,由 7 个定义良好的模块组成。各 模块构建在核心容器之上,核心容器定义了创建、配置和管理 bean 的方式 。组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现,核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。 BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。 Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。 Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。,Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。 Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。 Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。,Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。,系统开发框架-目录结构,src 放的是项目源代码目录(.java文件) log4j. properties 日志配置文件 Struts-config.xml struts应用配置文件 spring配置文件目录 |-applicationContext.xml Spring公共配置文件 数据库连接配置 数据库事务管理配置,com.witsky.web 项目标识 某项目开发源代码root目录(与该项目有关的代码都放在此下) |-action action类 |-operator |-servlet servlet类用于全局字符的转换和URL的拦截 |-common.util 项目通用类(全局常量、变量定义等),以及工具类 |-bean bean目录 (POJO类) |-dao dao类 (用于集中定义数据库的接口和实现类封装了数据接口和实现方式) |-service 业务逻辑处理类,建议1个功能模块对应1个类 (注:action,service,dao包下可按照业务再划分包),WebRoot放的是项目页面目录(.jsp文件) |-css 放样式表供页面引用 |-helpimage 帮助文档的图片 |-js js文件 |-model excel文件模板 |-page 各种模块的页 -operator 面,按功能建立对应的文件夹 |-web-inf |-lib 项目用到的JAR文件 |-tld 标签 |-applicationContext.xml spring配置文件 |-struts-config.xml struts配置文件 |-struts-servlet.xml 具体的bean,action类配置文件 |-web.xml 项目启动加载配置文件,环境规范,系统框架规范,设置规范,分层建模原则:,快速开发模块简单应用介绍,系统完全基于J2EE架构,采用browser/server模式。操作员通过浏览器进行业务操作。操作人员经过登录窗口登录系统后,显示业务功能主界面,主界面包括所有业务功能模块的用户操作接口。 业务功能实现部分采用STRUTS+SPRING结构。利用jsp来进行页面显示,Action类表示业务逻辑,控制则有ActionMapping完成。 对数据库的操作都是通过C3P0的数据库连接池来实现的,通过连接池可以避免频繁的打开关闭数据库连接,降低系统负担。,本系统所采用的J2EE框架是从STRUTS+SPRING模式出发,结合本系统的需求而设计的。Struts作为前台控制框架简化了程序的开发。使得页面展示代码和JAVA代码编写工作有效分工,使项目的可扩展性大大增强,提高了开发效率,降低了维护成本。Spring作为一个应用于所有层面的综合框架,具有强大的应用功能及灵活性,适合作为一些大规模软件项目的底层平台。基于Struts+Spring的Web应用实现了表示层、逻辑层和数据库访问层等多层面分离,使软件在扩展性、复用性和维护性方面上有了很大提高。,以操作员管理为例介绍,1.在page里面增加operator操作员模块文件夹放JSP对应文件,2.在action里面增加operator操作员模块包放action对应java文件,3.在service里面增加operator操作员业务处理java文件,4.在struts-config.xml文件里配置表单的元素和跳转页面,4.在struts-servlet.xml文件里配置具体的action类和依赖注入的类,1.SMSServer 主通讯服务端 接收来自各方系统的原始数据报文然后进行路由报文缓存到数据库的对应报文缓存表 ,采用TCP/IP的SCOKET通讯方式 ,该模块的设计理念是通讯与应用的分开,降低系统的风险性,主通讯程序主要负责接收原始
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 21763-2025化学品啮齿类动物亚慢性经口毒性试验方法
- 2026年中国环保花器行业市场规模及未来投资方向研究报告
- 2026年中国铝水泵行业市场前景预测及投资价值评估分析报告
- 2025年福建泉州晋江国际机场股份有限公司(第二批)招聘7人笔试考试备考题库及答案解析
- 2025内蒙古阿拉善左旗引进成熟型人才10人考试笔试参考题库附答案解析
- 2025海南政协五指山市委员会办公室城镇公益性岗位人员招聘1人考试笔试参考题库附答案解析
- 血液科白血病放疗计划
- 2026年荆门职业学院单招职业适应性测试必刷测试卷及答案1套
- 2026年陕西铁路工程职业技术学院单招职业适应性测试必刷测试卷附答案
- 2026年重庆轻工职业学院单招职业适应性考试必刷测试卷及答案1套
- 终止合同及保密协议书
- 电力企业安全教育培训管理制度
- 施工现场安全事故应急预案
- 2025年税务师考试《税法一》冲刺试卷(含答案)
- 2025版《煤矿安全规程》题库
- 大学生职业生涯规划书课件
- 2025云南省交通投资建设集团有限公司下属云南省交通科学研究院有限公司管理人员招聘16人考试参考试题及答案解析
- DB23T 3045-2021 森林山地木栈道建设技术规程
- 一拳头一仇人一击掌一朋友-拒绝打架斗殴主题班会课件
- 学堂在线 研究生的压力应对与健康心理 期末考试答案
- E84-握手流程(中文版)
评论
0/150
提交评论