《Java高级编程》节课作业

《Java高级编程》节课作业

ID:41032594

大小:172.00 KB

页数:15页

时间:2019-08-14

《Java高级编程》节课作业_第1页
《Java高级编程》节课作业_第2页
《Java高级编程》节课作业_第3页
《Java高级编程》节课作业_第4页
《Java高级编程》节课作业_第5页
资源描述:

《《Java高级编程》节课作业》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、《Java高级编程》结课大作业题目:分别谈谈你对Struts2、Hibernate和Spring框架的理解,并举例说明。1、Struts2的理解:Struts2这个框架,struts1是世界上第一个mvc框架,现在的MVC框架很多最著名的是Strutsspringmvc等Struts2的体系结构和struts1差别巨大,它明确的说它不是一个新的MVCweb框架,它不是从struts1升级过来的,它是基于webwork的xwork的,是xwork2的升级版,Struts2吸取了struts1和xwork2的两者的优点,Strus2是以w

2、ebwork为核心。所以struts2更加优秀的,更加整洁的MVC框架,采用拦截器的机制处理用户的请求这样的设计能够与原生的servletAPI完全脱离,在struts2中有一个核心类它就是StrutsPreparedAndExecuteFilterstruts2准备执行过滤器我们要想使用Struts2对用户的请求处理我们必须在web.xml中进行配置这个核心过滤器。基本上是过滤所有请求的。一般的Struts2框架的处理流程:1、加载类StrutsPrepareAndExecuteFilter会执行准备操作执行操作准备操作:使用Aci

3、onMapper进行读取对URL进行映射,执行操作:会交给actionproxy来调用配置管理器,来读取struts.xml等读取完毕actionproxy交给第三者:actionInvocation来递归调用一组拦截器,基本上就是我们使用的拦截器栈进行预处理操作2、等预处理操作完毕之后,第三种进行调用我们的action和result在依次递归反向调用我们的那组拦截器进行后处理操作最后发出response给浏览器2、hibernate的理解hibernate是一个持久层框架,又是一个ORM框架,通俗的来讲就是一个对象关系映射框架。使应

4、用程序的持久化类到数据库中的表之间的关系的映射;hibernate其实就是是对jdbc的封装,减轻了程序员使用jdbc操作数据库的繁琐工作。让程序员操作数据库关心的不再是数据库中的表而是我们的持久化对象javabean,比如:进行保存操作的时候仅仅使用一个save()的方法,删除一条记录的时候仅仅调用delete()方法就能方便的完成对数据库中的数据的增加、删除操作。使用Hibernate的基本的流程是配置Configuration对象,产生SessionFactory创建session对象,开启事务完成增加删除修改查询的操作提交事务

5、关闭session在使用hibernate的时候要先配置hibernate.cfg.xml文件其中配置数据库连接信息和方言【不过这些固定的可以配置在hibernate.properties属性配置文件中,在应用程序启动的时候,会先加载src目录下的hibernate.properties再加载src目录下的hibernate.cfg.xml再加载对应的持久化配置映射文件*.hbm.xml等加载完成后开始创建sessionFactory】3、对spring的理解说起spring,spring实现了工厂模式的工厂类--beanFactor

6、y这是一个轻量级框架,其中在spring中包含有三个重要的技术IOC、DI、AOP。IOC:控制反转这个IOC是一种编程思想,也是一种架构的艺术,利用这个技术可以很好的实现模块与模块之间的解耦,耦合性降低。如使用了Spring的IOC技术,对自己想使用的对象进行实例化的时候,不需要你自己进行new操作了,而是交给Spring容器帮你实例化对象。那什么是DI呢?其实IOC也成为DIDI是英文的缩写依赖注入这这个名词更能说明IOC的设计理念。就是将服务注入到使用它的地方中,组件之间的依赖关系由容器在应用系统运行前来决定。【依赖注入的方式一

7、般分为4个:通过gettter和setter方法进行注入,和通过构造函数进行注入通过对象工厂进行注入和通过静态工厂进行注入】。AOP是面向切面编程,这解决了在整个系统中很多毫不相干的模块或者具体的类添加相同的功能,比如输出日志信息,权限设置,和事务管理等。实现AOP功能就是实现了代理功能,对目标类进行代理,动态的代理可以分为两种:jdk的动态代理和CGLIB的动态代理,它们之间的区别是,使用jdk的动态代理代理对象必须实现一个接口,而cglib没有必要,对字节码也可以动态代理了。很强大不过我们一般在做应用程序的开发的时候面向接口的编程

8、,减少类与类之间的耦合,所以我们用jdk的动态代理。Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合,其数据服务层用来存放数据。一个良好的框架可以让开发人员减轻重新建立解决复杂问题

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。