项目发布与总结
分为。
1. 单元测试
- 引入Spring test 起步依赖。
- 保证测试方法的独立性。常用注解有:
@BeforeClass:在测试类加载之前执行
@AfterClass: 在测试类销毁时执行
@Before: 在测试方法执行前执行(创建测试数据)
@After: 在测试方法执行后执行(删除测试数据)
@Test:测试方法(执行需要测试的方法)
2. 项目监控
使用 Spring Actuator 进行监控。Endpoints:监控应用的入口。Spring Boot内置了很多端点,也支持自定义端点。
- 引入依赖,在application.properties里进行配置。
- DatabaseEndpoint 为自定义端点。在SecurityConfig中对 /actuator/** 进行权限配置,只有管理员可以访问。
- 通过 /community/actuator/database 等路径进行访问。同时还有 /health 等路径。
3. 项目部署
将项目部署到云服务器。云服务器需要在安全组添加8080/80/3306端口。
服务器上需要安装的各种配置,其余使用yum命令安装:
各种文件下载路径:
maven(官网): apache-maven-3.8.5-bin.tar.gz
tomcat(官网):apach-tomcat-9.0.63.tar.gz
elasticsearch(官网):elasticsearch-6.4.3.tar.gz
kafka(官网):kafka_2.12-2.3.0.tgz
mysql(官网):mysql80-community-release-el7-3.noa
其中按照老师方法,安装jre1.8(未安装最新版本)。然后需要使用 yum install java-devel 命令安装javac。
4. 项目总结
其中将静态资源部署到CDN上,用户的动态请求发给Nginx,静态请求访问CDN。文件服务器是存放头像等资源的七牛云服务器。
5. 常见面试题
Redis数据类型及最大存储数据量:
SpringMVC调用流程(其中HandlerExecutionChain是封装了Controller和拦截器):