J2EE复习

第一章 Spring入门
1.Spring框架概述:一个轻量级的控制反转和面向切面的容器框架。
2.Spring框架特征:①轻量级②反向控制③面向切面④容器⑤框架
3 控制反转的概念:应用本身不负责依赖对象的创建与维护,依赖对象的创建及维护由外部容器负责。
4 依赖注入的概念:在运行期,由外部容器动态地将依赖对象注入到组件中。
第二章 Spring基础语法
1.依赖注入类型:
(1)设值注入 <property…/> 调用不含参数的构造函数
(2)构造方法注入 <constructor-arg…/>标签 调用含参数的构造函数
2.依赖注入的配置方式:构造器注入,设值注入
设值注入配置方式:
A 普通属性值<property… value=””/>




Person zhang = (Person)act.getBean(“zhang”);
System.out.println(“小张的信息:”+zhang);
B 合作者Bean <property… ref=””/>






C集合属性值



2019090901
张三
18



Student stu = (Student) act.getBean(“stu”);
System.out.println(stu);
3.Bean的其他用法:
(1)自动装配:(autowire):使用bean标签里面的autowire属性
no(不自动装配,必须通过ref元素指定依赖,是默认设置)
byName(根据bean的属性名匹配spring核心文件中的id值)
byType(根据bean的属性类型匹配spring核心文件中的class值 )
(2)Bean的作用域范围: 使用scope属性
Singleton:单实例模式,每次获取到的都是同一个对象。默认范围
Prototype:原型模式,每次都会产生一个新的对象
第三、四章 AOP
1.AOP概念: 面向切面编程, 是一种编程思想,是面向对象编程的一种补充和完善。
2.Spring aop中的定义:
(1)Advice (通知): 切面的具体实现。
(2)Joinpoint(连接点): 通知在应用程序中被执行的时机
(3)Pointcut(切入点): 一组连接点的集合
(4)Target(目标对象):一个通知被应用的对象。
(5)Weave(织入):通知被应用于目标对象上的过程。
3.能够开发及部署AOP的应用程序
第五章 Spring中的事务管理
1.事务的概念:就是将一系列的数据库操作作为一个整体来执行
2.事务的隔离级别:隔离级别从低到高依次为: read uncommitted、read committed、repeatable read、serializable)逐个解决脏读、不可重复读、幻读这几类问题。
3.spring事务管理的实现方式:编程式事务管理、声明式事务管理
第一章 MyBatis入门
1.MyBatis的优点:简单、生产效率高、性能好、关注分离点、可移植、开源
2.与传统JDBC和Hibernate的比较:
 减少了62%的代码量
 最简单的持久化框架
 架构级性能增强
 SQL代码从程序代码中彻底分离,可重用
 增强了项目中的分工
 增强了移植性
3.MyBatis的工作流程 : (※※掌握※※)
1、读取Mybatis配置文件
2、根据读取到的配置文件生成SqlSessionFactory
3、创建SqlSession对象(开启事务)
4、操作目标数据库
5、提交事务
6、关闭SqlSession
第二讲:基于Mybatis的CRUD
1.基于MyBatis的CRUD的开发
(※※掌握※※)
(视频:MyBatis中的CRUD-MyBatis中的增删改.wmv)
2.MyBatis的结果类型-resultMap和resultType :
resultMap:属性值是已经定义好的元素的id
示例

resultType:
属性值有以下情况:
单一类型,例如

组合类型,一般都是pojo类,需要注意查询语句的列名或别名必须要和pojo类的属性名称一致,否则无法映射,
例如
Map类型,列值会自动封装为键值对Map集合,键为列名,值为列值,例如

3.MyBatis的参数类型parameterType:(1)单一类型(2)复合类型(3)集合类型
4.#和$两种语法(※※掌握※※)
#可以进行预编译,进行类型匹配,#{变量名} 会转化为 jdbc 的 类型
不 进 行 数 据 类 型 匹 配 , 不进行数据类型匹配, {变量名}就直接把 ${name}替换为 name的内容
例如:
select * from tablename where id = #{id} ,假设id的值为12,其中如果数据库字段id为字符型,那么#{id}表示的就是’12’,如果id为整型,那么#{id}就是 12 会转化为jdbc的 select * from tablename where id=?,把?参数设置为id的值。
select * from tablename where id = i d , 如 果 字 段 i d 为 整 型 , S q l 语 句 就 不 会 出 错 , 但 是 如 果 字 段 i d 为 字 符 型 , 那 么 S q l 语 句 应 该 写 成 s e l e c t ∗ f r o m t a b l e w h e r e i d = ′ {id} ,如果字段id为整型,Sql语句就不会出错,但是如果字段id为字符型,那么Sql语句应该写成 select * from table where id = ' ididSqlidSqlselectfromtablewhereid={id}’ 。
第三章:动态SQL
MyBatis中动态SQL元素的使用
(1)If
(2)choose(when,otherwise)
(3) trim:
(4)set(作用类似于where)
(5)Foreach(迭代 循环)属性和用法:
第四章 使用动态代理实现dao接口的实现类:
MyBatis允许只声明一个dao接口,无需写dao实现类的方式实现数据库操作。前提是必须保证Mapper文件中的标签的namespace属性值必须要和dao接口的类路径一致,MyBatis容器会自动通过动态代理生成接口的实现类。
第五章 Mybatis与Spring的整合
1.Mybatis与Spring整合所带来的好处:
既具有MyBatis简单、方便、快捷的优势,又可以利用Spring的Ioc和AOP的优点。
2.Mybatis与Spring的整合过程
第一章 SpringMVC入门
1.Spring Web MVC是一种轻量级的、基于MVC的Web应用框架
Spring Web MVC用途:
进行更简洁的Web层的开发;
能简单的进行Web层的单元测试;
容易与其他视图技术集成
更加简单的异常处理;
对静态资源的支持;
2.Spring Web MVC有什么: (※※掌握※※)
Spring Web MVC使用了MVC架构模式的思想,将web层进行职责解耦。同样也是基于请求驱动的,也就是使用请求-响应模型。它主要包含如下组件
• DispatcherServlet :前端控制器(处理请求)
• HandlerMapping :处理器映射器(将请求映射到处理器)
• HandlerAdapter :处理器适配器(把处理器包装为适配器,用来支持多种类型的处理器)
• ViewResolver :视图解析器
• Controller接口:页面控制器/动作/处理器
3.Spring Web MVC处理请求的流程: (※※掌握※※)

具体执行步骤如下:
1、首先用户发送请求到前端控制器,前端控制器根据请求信息来决定选择哪一个页面控制器进行处理并把请求委托给它;
2、页面控制器接收到请求后,进行功能处理,首先收集和绑定请求参数到一个对象,并进行验证,然后将对象委托给业务对象进行处理;处理完毕后返回一个ModelAndView;
3、前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并传入模型数据;
4、前端控制器再次收回控制权,将响应返回给用户。
4.Spring Web MVC的核心架构: (※※掌握※※)

核心架构的具体流程步骤如下:
1、 用户发送请求到前端控制器,前端控制器初始化Spring IOC容器,将所有的Bean加载到IOC容器中。前端控制器收到请求后委托给其他的解析器进行处理。
2、 处理器映射器将请求映射为一个对象;
3、 处理器适配器将处理器包装为适配器,从而支持多种类型的处理器;
4、 处理器适配器根据适配的结果调用处理器的功能处理方法,完成功能处理;并返回一个ModelAndView对象;
5、 视图解析器将逻辑视图名解析为具体的View,从而更容易更换其他视图技术;
6、 View根据传来的模型数据进行渲染;
7、返回控制权给前端控制器,由前端控制器返回响应给用户。
5.POST中文乱码解决方案(中文乱码的解决方案是在web.xml中加入过滤器):
 具体配置如下:

CharacterEncodingFilter

org.springframework.web.filter.CharacterEncodingFilter

encoding
utf-8



CharacterEncodingFilter

/*

建议项目及所有页面的编码均为UTF-8
第二章 注解式开发
1.controller注解:
(1)@Controller将一个类声明为处理器:
使用@Controller注解定义处理器类,不再实现Contoller接口
(2)可以使用自动扫描配置取代原来的bean注册方式:
<context:component-scan base-package=“com”>
context:component-scan
2.RequestMapping请求映射:
(1)使用:
标注在方法上:将该方法定义为请求处理方法,方法在接收到对应请求时被调用
标注在类上:多加了一层请求url路径,【窄化】了请求映射
(2)常用属性:value,method,params
3.请求的转发和重定向操作:
直接返回视图:本方法中的model信息可以传到页面上
forward转发:调用进入页面的请求,本方法的model信息可以传到新页面
redirect重定向:调用了进入页面的请求,不会把model信息带到新页面上
第三章 数据绑定
数据绑定的注解RequestParam,该注解有两个属性: value、required;
第四讲:表单标签
(1) 表单标签需要使用taglib标签进行引入
(2) 表单标签可以支持控制器到页面的数据绑定
(3) 表单标签的使用
第五讲:数据验证
(1)文件解除错误信息硬编码的问题
第六讲:拦截器
*能够配置并使用拦截器(会写、会配置)

(2)配置拦截器

掌握拦截器的实现方式和待实现的方法
Spring Web MVC中提供了一个HandlerInterceptor接口实现拦截器功能,该接口提供了三个未实现的方法:
 preHandle:预处理回调方法,实现处理器的预处理。
 postHandle:后处理回调方法,实现处理器的后处理。
 afterCompletion:整个请求处理完毕回调方法,在视图渲染完毕时回调。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值