JavaWeb后端基础(1)

我直接从后端开始做笔记,前面的HTML、CSS、JS、Vue、Ajax先跳过,直接从maven开始

我只是简单的记录大致 帮助回想 不适合进行学习

Maven

Maven的作用:依赖管理、项目构建、统一项目结构

依赖管理:方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题 在pom.xml文件进行配置 项目构建:通过Maven中的命令,就可以很方便的完成项目的编译、测试、打包、发布(deploy) 等统一项目结构:提供标准的java项目目录

Maven三个模型

  • 项目对象模型 (Project Object Model)

  • 依赖管理模型(Dependency)

  • 构建生命周期/阶段(Build lifecycle & phases)

项目对象模型,就是将我们自己的项目抽象成一个对象模型,有自己专属的坐标。坐标的组成部分

  • groupId: 组织名

  • arfitactId: 模块名

  • Version: 版本号

Maven的项目目录结构

maven-project01

|--- src (源代码目录和测试代码目录)

|--- main (源代码目录)

|--- java (源代码java文件目录)

|--- resources (源代码配置文件目录)

|--- test (测试代码目录)

|--- java (测试代码java目录)

|--- resources (测试代码配置文件目录)

|--- target (编译、打包生成文件存放目录)

然后可以看一下pom.xml里边每一个标签什么意思

生命周期

Maven的生命周期就是为了对所有的构建过程进行抽象和统一。 描述了一次项目构建,经历哪些阶段。Maven从大量项目和构建工具中学习和反思,然后总结了一套高度完美的,易扩展的项目构建生命周期。

生命周期划分为3套(相互独立)

  • clean:清理工作。

  • default:核心工作。如:编译、测试、打包、安装、部署等。

  • site:生成报告、发布站点等。

单元测试

测试方法包括三个:

1). 白盒测试

清楚软件内部结构、代码逻辑。

用于验证代码、逻辑正确性。

2). 黑盒测试

不清楚软件内部结构、代码逻辑。

用于验证软件的功能、兼容性、验收测试等方面。

3). 灰盒测试

结合了白盒测试和黑盒测试的特点,既关注软件的内部结构又考虑外部表现(功能)。

JUnit单元测试

使用JUnit单元测试框架进行测试,优势:

  1. 测试代码与源代码分开,便于维护。

  2. 可根据需要进行自动化测试。

  3. 可自动分析测试结果,产出测试报告。

值得注意的是,测试类的命名规范为:XxxxTest 测试方法的命名规定为:public void xxx(){...}

JUnit提供了一些辅助方法,用来帮我们确定被测试的方法是否按照预期的效果正常工作,这种方式称为断言

|-------------------------------------------------------|---------------------------|
| 断言方法 | 描述 |
| assertEquals(Object exp, Object act, String msg) | 检查两个值是否相等,不相等就报错。 |
| assertNotEquals(Object unexp, Object act, String msg) | 检查两个值是否不相等,相等就报错。 |
| assertNull(Object act, String msg) | 检查对象是否为null,不为null,就报错。 |
| assertNotNull(Object act, String msg) | 检查对象是否不为null,为null,就报错。 |
| assertTrue(boolean condition, String msg) | 检查条件是否为true,不为true,就报错。 |
| assertFalse(boolean condition, String msg) | 检查条件是否为false,不为false,就报错。 |
| assertSame(Object exp, Object act, String msg) | 检查两个对象引用是否相等,不相等,就报错。 |

在Junit中提高注解以增强其功能

|--------------------|-----------------------------------|
| @Test | 测试类中的方法用它修饰才能成为测试方法,才能启动执行 |
| @BeforeEach | 用来修饰一个实例方法,该方法会在每一个测试方法执行之前执行一次。 |
| @AfterEach | 用来修饰一个实例方法,该方法会在每一个测试方法执行之后执行一次。 |
| @BeforeAll | 用来修饰一个静态方法,该方法会在所有测试方法之前只执行一次。 |
| @AfterAll | 用来修饰一个静态方法,该方法会在所有测试方法之后只执行一次。 |
| @ParameterizedTest | 参数化测试的注解 (可以让单个测试运行多次,每次运行时仅参数不同) |
| @ValueSource | 参数化测试的参数来源,赋予测试方法参数 |
| @DisplayName | 指定测试类、测试方法显示的名称 (默认为类名、方法名) |

相关推荐
逸狼3 分钟前
【JavaEE进阶】Spring Boot 日志
java·spring boot·后端
spencer_tseng3 分钟前
apache-maven-3.2.1
java·maven·apache
计算机毕设定制辅导-无忧学长3 分钟前
Maven 生命周期与构建命令(二)
java·服务器·maven
m0_748252234 分钟前
maven导入spring框架
数据库·spring·maven
chen2017sheng23 分钟前
Spring Framework测试工具MockMvc介绍
java·后端·spring
中东大鹅39 分钟前
Tomcat 目录结构和应用实现
java·tomcat·firefox
鹿说-40 分钟前
Spring基础01
java·spring
Aphelios38044 分钟前
Linux 权限系统和软件安装(二):深入理解 Linux 权限系统
java·linux·运维·服务器·tomcat
JIU_WW1 小时前
Netty内置的空闲检测机制
java·服务器·前端·websocket·netty
dokii11 小时前
leetcode541 反转字符串2
java·数据结构·算法