ssm的一些概念

旧城冷巷雨未停 提交于 2019-11-27 02:26:18

xml Extensible Markup Language 可扩展标记语言,标准通用标记语言的子集,简称XML。是一种用于标记电子文件使其具有结构性的标记语言。

dtd DTD为英文Document Type Definition,中文意思为“文档类定义”可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。
DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。

junite
xUnit是一套基于测试驱动开发的测试框架
其中的断言机制:将程序预期的结果与程序运行的最终结果进行比对,确保对结果的可预知性

要求
1.测试方法上必须使用@Test
2.测试方法必须使用 public void进行修饰
3.新建一个源代码目录来存放测试代码
4.测试类的包应该和被测试类的包一样
5.测试单元中的每个方法一定要能够独立测试,其方法不能有任何依赖

mapper
MyBatis 通用 Mapper 是一个可以让开发人员更方便使用 MyBatis 的扩展,
通过简单的配置,可以方便的直接获取单表的常见操作,提供如 select, selectAll, selectCount,
delete, update 以及 Example 相关的方法。
开发人员不需要编写SQL,不需要在DAO中增加方法,只要写好实体类,就能支持相应的增删改查方法。

MyBatis
是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。
MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索。
MyBatis 可以使用简单的XML 或注解用于配置和原始映射,
将接口和 Java 的 POJO( Plain Old Java Objects,普通的Java 对象)映射成数据库中的记录.

map就是键对值一一对应

Maven
主要做了两件事:
统一开发规范与工具
统一管理jar包
Maven的核心功能便是合理叙述项目间的依赖关系,
通俗点讲,就是通过pom.xml文件的配置获取jar包,而不用手动去添加jar包
通过pom.xml的配置就可以获取到jar包

Spring 框架
是 Java 应用最广的框架,它的成功来源于理念,而不是技术本身,
它的理念包括 IoC (Inversion of Control,控制反转)
和 AOP(Aspect Oriented Programming,面向切面编程)。

IoC:Inverse of Control(控制反转)
读作“反转控制”,更好理解,不是什么技术,而是一种设计思想,
就是将原本在程序中手动创建对象的控制权,交由Spring框架来管理。
正控:若要使用某个对象,需要自己去负责对象的创建
反控:若要使用某个对象,只需要从 Spring 容器中获取需要使用的对象,
不关心对象的创建过程,也就是把创建对象的控制权反转给了Spring框架

AOP 即 Aspect Oriented Program 面向切面编程
首先,在面向切面编程的思想里面,把功能分为核心业务功能,和周边功能。
所谓的核心业务,比如登陆,增加数据,删除数据都叫核心业务
所谓的周边功能,比如性能统计,日志,事务管理等等
周边功能在 Spring 的面向切面编程AOP思想里,即被定义为切面
在面向切面编程AOP的思想里面,核心业务功能和切面功能分别独立进行开发,
然后把切面功能和核心业务功能 “编织” 在一起,这就叫AOP

JavaEE体系结构包括四层,
从上到下分别是应用层、Web层、业务层、持久层。
Struts和SpringMVC是Web层的框架,Spring是业务层的框架,Hibernate和MyBatis是持久层的框架。

mvc模式
首先用户的请求会到达 Servlet,然后根据请求调用相应的 Java Bean,
并把所有的显示结果交给 JSP 去完成,这样的模式我们就称为 MVC 模式。

M 代表 模型(Model)
模型是什么呢? 模型就是数据,就是 dao,bean

V 代表 视图(View)
视图是什么呢? 就是网页, JSP,用来展示模型中的数据

C 代表 控制器(controller)
控制器是什么? 控制器的作用就是把不同的数据(Model),显示在不同的视图(View)上,
Servlet 扮演的就是这样的角色。

Spring MVC 的架构
为解决持久层中一直未处理好的数据库事务的编程,又为了迎合 NoSQL 的强势崛起,
Spring MVC 给出了方案:
传统的模型层被拆分为了业务层(Service)和数据访问层(DAO,Data Access Object)。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!