2022年Java开发框架复习笔记 .pdf

上传人:C****o 文档编号:35805153 上传时间:2022-08-23 格式:PDF 页数:6 大小:183.68KB
返回 下载 相关 举报
2022年Java开发框架复习笔记 .pdf_第1页
第1页 / 共6页
2022年Java开发框架复习笔记 .pdf_第2页
第2页 / 共6页
点击查看更多>>
资源描述

《2022年Java开发框架复习笔记 .pdf》由会员分享,可在线阅读,更多相关《2022年Java开发框架复习笔记 .pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、学习好资料欢迎下载Java开发框架 复习笔记 2013/6/17 15 题填空 * 2=3010 题选择 *2=20100 分3 题简答 *10=301 题编程 *20=20一、基本概念1.软件分层的优点:伸缩性、可维护性、可拓展性、可重用性、可管理性。2.MVC 框架:模型 -视图 -控制器3.Structs2.x 实际上是另外一个框架Webwork 发展而来。4.关系模型( RMRelation Model )把世界看作是由实体 和联系 1:1、1:n、m:n构成的。5.面向对象三大特征:封装、继承(一般与特殊)、多态(覆盖与重载)6.对象关系映射(ORMObject Relational

2、 Mapping ) :ORM 是一种为了解决面向对象 与关系 数据库 存在的互不匹配的现象的技术。简单的说,ORM 是通过使用描述对象 和数据库之间映射的元数据 ,将 java 程序 中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。7.Spring 的主要功能:控制反转( Ioc) 、面向切面编程(AOP) 、持久层的封装和事物管理、提高对web 支持。二、 Structs 1.Struts 应用中的action 都被定义在struts.xml中,配置文件中action 主要包含有name 和class属性2.运行流程:1)浏览器发送请求2)核心控制器Filt

3、erDispatcher 根椐请求决定调用合适的Action 3)拦截器自动对应用运用通用功能4)回调用 Action 上的 execute 方法5)Action 的 execute()方法处理结果信息输出到浏览器3.Structs 体系结构:4.OGNL(Object Graph Navigation Language)对象图导航语言。优点:简单、直观。OgnlContext context = new OgnlContext();/ 创建 OGNL上下文Context.setRoot(user);/ 将 user 设置为 OGNL上下文的根对象名师归纳总结 精品学习资料 - - - - -

4、 - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 1 页,共 6 页 - - - - - - - - - 学习好资料欢迎下载如果获取user 的名字,直接表达式可以是“name” 。如果访问的不是user,需要在前面加上“ #manager.name” 。三、 Spring 1. 概念:开源框架,目的为了简化企业级系统开发。往小了说是容器,往大了说是框架。非侵入式。优点:松耦合、高度可配置、易测试、开发简单。2. 容器与框架1)容器:对其中的组件进行管理,负责实例化、初始化、销毁这些组件。2)框架:框架不仅要负责

5、管理某些Bean 的生命周期(容器的功能),还需要负责搭建某些基础设施(那些通用的部分)Structs、Spring、Hibernate 都是一个框架。但Spring 较其他两者涉及领域更广。3. 1)控制反转的概念:组件处于一个容器当中,所有组件的初始化和调用都是有容器负责。程序中各个组件之间的关系,不由程序代码直接操控,而由容器控制。控制权由应用代码中转到了外部容器,即所谓的反转。2) Bean的概念: 组成应用程序的主体及由Spring IoC容器所管理的对象, 被称之为bean。Bean由 Spring 容器初始化、装配及管理3)配置元数据:描述Bean的定义以及bean 相互间的依赖

6、关系4. BeanFactory 延迟加载所有bean,直到 getBean()方法被调用。ApplicationCotext 会在启动后预载入所有单例bean. 四、 Spring AOP 编程1.术语:AOP (Aspect Oriented Programming )面向切面编程。应用于系统安全、事务、日志、审计。切面 (Aspect) :描述的是一个应用系统的某一方面或领域。连接点 (Join Point) :指的是应用程序执行过程中插入切面的点。可能是方法的调用等。通知 (Advise) :指的是切面的具体实现。切入点 (Pointcut) :指定了通知应该应用到哪些连接点上。可根据

7、方法名确定连接点。引入( Introduction ) :允许你为已存在的类添加新的方法和属性。目标对象 (Target) :指被通知的对象。 使用 AOP可以使业务对象只关心核心业务逻辑代码。织入 (Weaving) : 把切面连接到其他的应用程序类型或者对象上,并创建一个被通知的对象。Spring 的 AOP采用的是运行期织入。代理 (Proxy) :指将通知应用到目标对象后形成的新的对象。2. AOP实现:纯Java实现,目前仅支持使用方法调用作为连接点。3.四种通知类型:1) 【 Around】接口 Org.springframework.aop.MethodInterceptor 拦

8、截对目标方法调用2) 【 Before】Org.springframework.aop.MethodBeforeAdvice在目标方法前调用3) 【 After】Org.springframework.aop.AfterReturningAdvice在目标方法后调用4) 【 Throws】Org.springframework.aop.ThrowsAdvice在目标方法抛出异常是调用4.Spring 中建立 AOP应用的基本步骤1)建立目标类及业务接口2)Spring 中注册目标类实例3)建立通知类实现具体的通知接口4)Spring 中注册通知类实例名师归纳总结 精品学习资料 - - - -

9、- - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 2 页,共 6 页 - - - - - - - - - 学习好资料欢迎下载5)配置目标类的代理对象(织入通知形成代理对象) 6)获取代理对象,调用其中的业务方法5. 在切入点中经常使用的正则表达符号:. 匹配任何单个字符,例如:add.表示以 add 开头以任意一个字符结尾的方法。+ 匹配一个字符的一次或多次,例如:add.+表示以 add 开头的任意方法。* 匹配 0 次或多次,例如:delete.* 表示 delete 或以 delete 开头的方法。6.S

10、pring 产生代理对象的两种方式(1)利用 jdk 中的 proxy实现要求我们的被代理对象必须要去实现一个代理接口,代理对象和被代理对象本质是是实现了统一接口的两个对象(2)利用 cglib来实现被代理对象不需要去实现一个代理接口,被代理类和代理类之间本质是父子类的关系使用中的区别:在配置文件中指定是以哪种方式生成代理对象 false 默认情况下是false ,用的 jdk 中 proxy 实现的方式。为true 则为 cglib 的方式五、 Hibernate 1.JDBC的缺点:2. 相同点:两者都是 JAVA的数据库操作中间件。两者对于数据库进行直接操作的对象都不是线程安全的,都需要

11、及时关闭。两者都可以对数据库的更新操作进行显式的事务处理。不同点:使用的 SQL语言不同: JDBC使用的是基于关系型数据库的标准SQL语言, Hibernate使用的是 HQL(Hibernate query language) 语言操作的对象不同:JDBC操作的是数据,将数据通过SQL语句直接传送到数据库中执行, Hibernate 操作的是持久化对象,由底层持久化对象的数据更新到数据库中。数据状态不同:JDBC操作的数据是“瞬时”的,变量的值无法与数据库中的值保持一致,而 Hibernate 操作的数据是可持久的,即持久化对象的数据属性的值是可以跟数据库中的值保持一致的。名师归纳总结 精

12、品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 3 页,共 6 页 - - - - - - - - - 学习好资料欢迎下载3. ORM(Object relationship mapping )对象关系映射4. 使用 Hibernate 的 7 个步骤:1)创建 Configuration 实例(根据hibernate.cfg.xml )Configuration configuration = new Configuration().configure();2)创建 Sessio

13、nFactory(User.hbm.xml)SessionFactory sessionFactory = configuration.buildSessionFactory(); 3)打开 Session Session session = sessionFactory.openSession(); 4)开始一个事务Transaction tx = session.beginTransaction(); 5)持久化操作(sava 、 delete 、update 、find、load)6)提交事务mit(); 7)关闭 Session Session.close(); 5. Hibernat

14、e 的五个核心接口:1)Configuration接口配置 Hibernate, 启动 Hibernate,创建 sessionFactory 对象2)SessionFactory 接口它保存了对当前数据库配置的所有映射关系,它是将某个数据库的映射关系经过编译之后全部保存在内存中的。它还是生成Session的工厂, 它在进行实例化的过程中将会用到 ConnectionProvider 。一个SessionFactory对应一个数据库连接,当数据库连接改变时需要修改SessionFactory3)Session接口是进行持久化操作的基础,所有的持久化操作都是在Session的基础上进行的。它相当

15、与 JDBC中的 Connection 。它是 Hibernate 的持久化管理器的核心,提供了一系列的持久化操作方法。 另外, 它还持有一个针对持久化对象的一级缓存,在遍历持久化对象或者根据持久化标识查找对象的时候会用到。4)Transaction接口功能上和数据库中的事务完全一样,通过它实现对数据库中事务的控制。Transation 对象是 Session对象产生的,所以他的生命周期比Session短。一个Session的生命周期中可以有多个Transaction 对象。5)Query 和 Criteria 接口执行数据库查询6. SessionFactory 接口一个 sessionFa

16、ctory 实例对应一个数据存储源,应用从SessionFactory 中获得 Session实例。1)它是 线程安全 ,这意味着它的同一个实例可以被应用的多个线程共享。2)它是 重量级 ,这意味不能随意创建或销毁它的实例。如果应用同时访问多个数据库,则需要为每个数据库创建一个单独的SessionFactory实例。7. Session接口提供操作数据库的方法:save()、update() 、delete() 、find()、 load(). 8. Hibernare 的关联映射A.单向多对一【多条街道对应一个区县】 只在 many 一方,即街道配置关联。名师归纳总结 精品学习资料 - -

17、- - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 4 页,共 6 页 - - - - - - - - - 学习好资料欢迎下载B.单向一对多【一个区县有很多街道】在区县的 javabean 里,加上private Set jds = new HashSet();及 get/set() 方法。在 one 方,即区县的配置文件中加入: C.双向一对多【一个区县有很多街道,多条街道对应一个区县】结合A+B 即可。a)【增加一个区县】在 one 一方增加, Qx shannanqu = new Qx(); qx.

18、setName(“ shannanqu” ); super.add(qx);b)【增加山南区下属的三个街道:“和平路”、 “八一路”和“五四大道”】在 many 一方增加, Jd jd1 = new Jd(); jd.setname(“ hepinglu” ); jd.setQx(shannanqu); super.add(jd1); c)【删除“五四大道” 】配置 set 节点的 inverse(反转)属性。为true 时,表示由对方负责关联关系的添加和删除;为false时,表示由自己负责维护关联关系。为了保持对象模型和数据库数据一致,还要调用qx.getJds().remove(jd);

19、先从对象模型中删除。d)【划“和平路”到海淀区】对数据模型编码:分别取出和平路、海淀区、 和平路原来所属区县,进行添加和删除。对数据库进行编码:在控制方进行更新操作e)【删除山南区 】因为外键约束,应该先删除子表,再删除父表。如果 many 一方数据较多,可移动过设置set节点 cascade可实现自己级联删除。cascade = all : 对所有操作都进行级联cascade = none : 对所有操作都不进行级联cascade = save-update : 执行更新操作时级联cascade = delete : 执行删除操作时级联D.多对多 名师归纳总结 精品学习资料 - - - -

20、- - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 5 页,共 6 页 - - - - - - - - - 学习好资料欢迎下载9. Hibernate 的检索方式1)立即检索策略lazy=” false”2)延迟检索策略lazy=” true”(只有打开session了 lazy才有效)3)迫切左外链接检索策略10.Hibernate 中的常用的查询方式有3 中: HQL、 QBC和本地 SQL查询方式。六、 SSH思想(建议:先整合spring+structs ,再整合spring+hibernate )1.

21、spring整合 structs (反之亦可)1)使用 Spring 的 ActionSupport (常用)2)覆盖 RequestProcesser (少用)3)使用 Spring 动作代理(将动作管理委托给spring) (配置麻烦,强调注入)评价第一种方法:优点:简单缺点:违反IOC 硬编码(解决: 可通过定义标识接口并继承,在需要的 getBea 方法的参数中用常量,常量在接口中定义,这样编码以后如果需要修改参数,只需改接口内的常量即可。)无法使用多方法的Action(解决:项目中无法使用多个action,但其实可以通过调用spring 的业务层完成。 )2. spring整合 Hibernate(核心是事物整合)步骤:1)配置数据源 ,有三种方式的数据源a)使用 Spring 框架自带的数据源类b)使用 DBCP提供的 BasicDataSource c)JNDI数据源 (涉及到服务器的配置,暂不介绍) 2)配置 sessionfactory 3)配置事务( AOP编程)代码题可能出在学生信息管理相关吧,做过的实验类似的。名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 6 页,共 6 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁