欢迎来到天天文库
浏览记录
ID:43534735
大小:424.97 KB
页数:28页
时间:2019-10-10
《开发基于StrutsSpringHibernateAjax的网上信息平台开发》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、第一章框架技术概述1.框架技术定义:框架(Framework),使用别人准备好的组建来实施自己的项日(可重用的公共结构的半成品),框架就是一组协同工作的组件,即框架是否我们的组件构成的半成品;简言之就是MVC的另一种实现;作用:框架使得混乱的东西变得结构化(强大之处不是源于它能让你做什么,而是它不能让你做什么);优势:1.不用考虑公共问题,由框架负责;2.只需关注核心业务的实现;3.结构统一,便于学习和后期维护;4.框架技术集成了前人的经验,使得我们的程序更健壮、稳定;主流框架技术:框架名称说明Struts框架(表示
2、层)最早的Java开源框架之一,也是MVC模式设计的一个优秀的实现,提供公用的Controller(控制器)将Model(模型)和View(视图)分离开,通过Action对用户的请求作了封装,同时还提供了自动将请求数据填充到对象中以及页面标签等简化编码的工具;Spring框架(控制层)是一个轻量级的框架,渗透了JavaEE技术的方方面面,主要作为依赖注入容器和AOP实现,还提供了声明式事务、对DAO层的支持等简化开发的功能,同时还可以和Struts+Hibernate等技术集成;Hibernate框架(持久层)Hib
3、ernate是一个优秀的持久化(是将程序屮数据在瞬时状态和持久状态间转换的机制)框架,负责简化将对象数据保存到数据库中或从数据库中读取数据并封装到对象的工作,即对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码;DWR框架DWR是一个Ajax框架,通过Jscript代码异步请求服务器资源的技术,为了实现页面无刷新效果;2.Java中的MVC和.NET中三层结构比较分层Java中命名规则.NET中命名规则说明表示层项目名(首字母大些)I/O操作(收集数据和展示信息);业务逻辑层后缀名biz(纯小写
4、)项目名+BLL传递和处理数据(提供信息管理和业务操作);数据访问层后缀名daoimpl(纯小写)项目名+DAL专用(拼接指令)和通用(执行指令,对数据库中的表进行操作,不返回实体);接口后缀名dao(纯小写)项目名+IDAL提供数据访问接口(接口屮定义的方法原型,在不同的地方被实现);实体类后缀名entity(纯小写)项目名+Model/Models凡是能够表现为记录的都称之为实体;3.回顾MVC:MVC是一种设计模式,目的就是将模型(业务逻辑)和视图(页面展示)分离开,使模型和视图可以独立修改,而不会影响到对方;
5、MVCM(Model)模型:表示程序处理业务逻辑的部分;V(View)视图:表示程序收集和展示数据的部分(I/O操作);C(Controller)控制器:负责从V接受用户输入,调用M,返回数据给V(中介);4.MVC请求流程图说明:1.客户端发111请求(以*.do结尾的请求都会被Controller拦截并处理);2.通过request.getServletPath()Zf法取得提交页面名称(/*.do),并截取请求前缀(*);3.根据取得的前缀获取相应的Action对象(Action为一个接口,接口中定义的方法参数
6、类型分别为HttpServletRequerst,HttpServletResponse,返回参数类型为String请求结束要转向的页面);4.根据获取的Action对象执行Action中定义的方法(这个Action会白定指向实现了该接口类的对象),并返回转向页面名称;5.请求结束重新将控制权交给视图;代码演示://Controller对*.do结尾的请求进行拦截并处理publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)thro
7、wsServletException,IOException〃获取请求页面的名称并截取前缀Stringpath=request.getServletPath();path=path.substring(path.lastlndexOf(,7")+1,path.length()-3);〃取得要调用的Action对象(接口指向实现该接口类型的对象)Actionaction=getAction(path);if(action==null)//判断是否为null,否则返回{response.getWriter().print
8、(n");return;}〃调用Action的execute方法(次方法根据不同的Action有不同的实现,可以调用业务),并返回url链接Stringurl=action.execute(request,response);〃页面转向request.getRequestDispa
此文档下载收益归作者所有