0.概念

WEB

JSON
JavaScript Object Notation (JavaScript对象表示法) 是一种轻量级的数据交换格式。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。JSON语法格式
特点1: JSON 是一种轻量级的数据交换格式。
特点2: JSON采用完全独立于语言的文本格式,就是说不同的编程语言JSON数据是一致的。
特点3: JSON易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。

Fastjson
Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。
特点1: 能够支持将java bean序列化成JSON字符串code,也能够将JSON字符串反序列化成Java beancode
特点2: 顾名思义,FastJson操作JSON的速度是非常快的。
特点3: 无其他包的依赖, 使用比较方便。

Ajax
Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。
通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

SSM

SSM : springmvc + spring + mybatis

mybatis : Dao层JDBC的改进

三层架构 : 有着清晰的任务划分 持久层 + 业务层 + 表现层
持久层 : 主要完成与数据库相关的操作
业务层 : 主要完成业务逻辑的定义和实现 (根据功能需求)
表现层 : 主要完成与最终软件使用用户的交互,需要有交互界面(UI)。

框架 :
框架就是一套规范,既然是规范,你使用这个框架就要遵守这个框架所规定的约束。框架可以理解为半成品软件,框架做好以后,接下来在它基础上进行开发。
持久层框架 : mybatis 专注于解决数据持久化的框架
全线框架: spring 能在各层都给出解决方案的框架
表现层框架 : spring mvc 专注于解决与用户交互的框架

Mybatis :
MyBatis是一个优秀的基于ORM的半自动轻量级持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码

ORM(Object Relational Mapping)对象关系映射 (自动,手动)
ORM作为是一种思想,帮助我们跟踪实体的变化,并将实体的变化翻译成sql脚本,执行到数据库中去,也就是将实体的变化映射到了表的变化。
O(对象模型):实体对象,即我们在程序中根据数据库表结构建立的一个个实体javaBean
R(关系型数据库的数据结构):关系数据库领域的Relational(建立的数据库表)
M(映射):从R(数据库)到O(对象模型)的映射,可通过XML文件映射

Mybatis快速入门
1.创建数据库及user表
2.创建maven工程,导入依赖(MySQL驱动、mybatis、junit)code
3.编写User实体类
4.编写UserMapper.xml映射配置文件(ORM思想)code
5.编写SqlMapConfig.xml核心配置文件 code
 数据库环境配置
 映射关系配置的引入(引入映射配置文件的路径)
6.编写测试代码 code
 1.加载核心配置文件
 2.获取sqlSessionFactory工厂对象
 3.获取sqlSession会话对象
 4.执行sql
 5.打印结果
 6.释放资源

properties文件 : 实际开发中,习惯将数据源的配置信息单独抽取成一个properties文件,该标签可以加载额外配置的properties code

延迟加载 : 就是在需要用到数据时才进行加载,不需要用到数据时就不加载数据。延迟加载也称懒加载。

一级缓存 : 一级缓存是SqlSession级别的缓存,是默认开启的
二级缓存 : 二级缓存是namspace级别(跨sqlSession)的缓存,是默认不开启的

Spring
Spring是分层的 Java SE/EE应用 full-stack(全栈式) 轻量级开源框架。
full-stack(全栈式) : 它对各种主流技术和框架都进行了整合, 同时对三层架构都提供解决方案
轻量级 : 轻量级和和重量级的划分主要依据就是看它使用了多少服务,启动时需要加载的资源多少以及耦合度等等
提供了表现层 SpringMVC和持久层 Spring JDBC Template以及 业务层 事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的Java EE 企业应用开源框架。
两大核心 : 以 IOC(Inverse Of Control:控制反转)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。
IOC : 控制反转 : 把对象的创建权交给spring
AOP : 面向切面编程 : 在不修改原代码的情况下,对方法进行增强

控制反转 :(IOC Inverse Of Control)不是什么技术,而是一种设计思想。它的目的是指导我们设计出更加松耦合的程序。
控制:在java中指的是对象的控制权限(创建、销毁)
反转:指的是对象控制权由原来 由开发者在类中手动控制 反转到 由Spring容器控制

耦合 : 程序简的依赖关系 code
解耦 : 降低程序间的依赖关系 (体现 : 编译器不依赖,运行期才依赖)

Spring优势
1)方便解耦,简化开发
Spring就是一个容器,可以将所有对象创建和关系维护交给Spring管理
什么是耦合度?对象之间的关系,通常说当一个模块(对象)更改时也需要更改其他模块(对象),这就是耦合,耦合度过高会使代码的维护成本增加。要尽量解耦
2)AOP编程的支持
Spring提供面向切面编程,方便实现程序进行权限拦截,运行监控等功能。
3)声明式事务的支持
通过配置完成事务的管理,无需手动编程
4)方便测试,降低JavaEE API的使用
Spring对Junit4支持,可以使用注解测试
5)方便集成各种优秀框架
不排除各种优秀的开源框架,内部提供了对各种优秀框架的直接支持

Spring体系结构
Data Access/Integration : JDBC ORM(对象关系映射) Transactions(事务控制)
WEB :
AOP :
Core Container(地基) : Beans(对象) Core(注入) Context(IOC容器) SpEL(Spring表达式语言)

Spring快速入门
1.创建java项目,导入spring开发基本坐标 code
2.编写Dao接口和实现类
3.创建spring核心配置文件 applicationContext.xml code
4.在spring配置文件中配置 UserDaoImpl
5.使用spring相关API获得Bean实例 code

依赖注入 DI(Dependency Injection):它是 Spring 框架核心 IOC 的具体实现, 通过 spring 框架把持久层对象传入业务层。
在编写程序时,通过控制反转,把对象的创建交给了 Spring,但是代码中不可能出现没有依赖的情况。IOC 解耦只是降低他们的依赖关系,但不会消除。例如:业务层仍会调用持久层的方法。
那这种业务层和持久层的依赖关系,在使用 Spring 之后,就让 Spring 来维护了。简单的说,就是通过框架把持久层对象传入业务层,而不用我们自己去获取。

SpringMVC
SpringMVC 是一种基于 Java 的实现 MVC 设计模式的轻量级 Web 框架,属于SpringFrameWork 的后续产品,已经融合在 Spring Web Flow 中。

全限定名 = 包名 + 类型
POJO = 对象 (实体类)

405 请求方法不允许 post get
404 路径不匹配
200 成功

猜你喜欢

转载自blog.csdn.net/kimyundung/article/details/113610202