小结-单体架构

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shenzhen_zsw/article/details/89873388

在这里插入图片描述

1.1 技术选型

1.1.1 技术选型关注点

1.1.1.1 需求场景
1.1.1.2 优缺点
1.1.1.3 成熟性
1.1.1.4 稳定性
1.1.1.5 活跃度
1.1.1.6 技术栈

1.1.2 单体技术选型

1.1.2.1 SpringBoot
1.1.2.2 Mybatis
1.1.2.3 Freemarker
1.1.2.4 Redis
1.1.2.5 Druid
1.1.2.6 Guava
1.1.2.7 Nginx
1.1.2.8 Jquery

1.2 架构搭建

1.2.1 工程构建

1.2.1.1 Maven多模块的改造

1.2.2 Nginx

1.2.2.1 编译安装
1.2.2.2 nginx.conf配置

1.3 架构设计

1.3.1 框架组件

1.3.2 UI层

1.3.2.1 BootStrap
1.3.2.2 JQuery

1.3.3 业务逻辑层

1.3.3.1 房产模块
1.3.3.2 用户模块
1.3.3.3 经纪人模块
1.3.3.4 经纪机构模块
1.3.3.5 百科模块
1.3.3.6 评论模块

1.3.4 存储

1.3.4.1 Mysql
1.3.4.2 Redis

1.3.5 监控平台

1.3.5.1 SpringBoot Admin
1.3.5.2 SpringActuator

1.4 数据库设计

1.4.1 房产表
1.4.2 用户表
1.4.3 房产用户表
1.4.4 房产留言表
1.4.5 经纪机构表
1.4.6 百科表
1.4.7 评论表
1.4.8 小区表

1.5 环境准备

1.5.1 JDK8
1.5.2 Maven3.5
1.5.3 STS

1.6 Spring Boot

1.6.1 SpringBoot功能和特性

1.6.1.1 自动配置
1.6.1.2 起步依赖
1.6.1.3 内嵌容器
1.6.1.4 Actuator
1.6.1.5 打包插件

1.6.2 创建SpringBoot工程的两种方式

1.6.2.1 Spring Initializr创建
1.6.2.2 IDE创建

1.6.3 引入SpringBoot依赖的两种方式

1.6.3.1 pom中集成spring-boot-starter-parent
1.6.3.2 pom中引入spring-boot-dependencies

1.6.4 SpringBoot的依赖管理与坑

1.6.5 SpringBoot的目录结构

1.6.5.1 启动类与root package
1.6.5.2 配置文件
1.6.5.3 静态文件目录
1.6.5.4 模板引擎目录

1.6.6 内嵌Servlet容器引入与替换

1.6.6.1 内嵌tomcat
1.6.6.2 内嵌jetty
1.6.6.3 容器配置
1.6.6.4 内嵌容器的优势

1.6.7 创建Filter

1.6.7.1 FilterRegistrationBean
1.6.7.2 原生Filter
1.6.7.3 Spring JavaCofnig

1.6.8 SpringBoot整合Mybatis

1.6.8.1 整合Mybatis的步骤
1.6.8.2 通过起步依赖整合与通过xml整合对比
1.6.8.3 Mybatis配置文件、Mapper、Mapper SQL XML
1.6.8.4 用户查询演示

1.6.9 集成Druid数据库连接池

1.6.9.1 Druid的介绍
1.6.9.2 Druid Bean的属性配置
1.6.9.2.1 最大最小连接池
1.6.9.2.2 解决mysql8小时问题
1.6.9.2.3 获取连接最长等待时间
1.6.9.2.4 空闲连接检测间隔时间
1.6.9.2.5 最小可剔除空闲时间
1.6.9.3 Druid Bean的创建、自动注入
1.6.9.4 statFilter Bean打印慢日志
1.6.9.5 @ConfigurationProperites的含义与两种用法
1.6.9.6 Servlet Bean创建
1.6.9.7 开启SQL监控UI
1.6.9.7.1 应用信息
1.6.9.7.2 连接池信息
1.6.9.7.3 SQL执行次数、耗时、分布

1.6.10 SpringBoot整合Freemarker

1.6.10.1 整合Freemarker的步骤
1.6.10.2 通过起步依赖与通过XML配置的对比
1.6.10.3 Freemarker起步依赖属性配置
1.6.10.4 Freemarker结构化布局
1.6.10.4.1 macro(宏)的使用

1.6.11 深入起步依赖与自动配置

1.6.11.1 spring-boot-starter依赖树分解
1.6.11.2 spring-boot内置自动配置
1.6.11.3 Mybatis起步依赖树分解
1.6.11.4 @EnableAutoConfiguration、@ConditionOnClass、@Import、@ConditionOnBean、@ConditionOnProperty等条件注解含义
1.6.11.5 加载自动配置的几种方式
1.6.11.6 编写自定义自动配置HttpClientAutoConfiguration
1.6.11.7 调试自动配置的技巧:debug日志输出

1.6.12 SpringBoot错误页面

1.6.12.1 @ExceptionHandler
1.6.12.2 @ControllerAdvice

1.6.13 学习SpringBoot的技巧

1.6.13.1 借助IDE
1.6.13.2 查询文档
1.6.13.3 定位及调试源码
1.6.13.4 扩展实践

1.6.14 SpringBoot单元测试

1.6.15 SpringBoot CORS实现跨域

1.7 编码技巧

1.7.1 Guava工具类Joiner
1.7.2 Java8 Lambda表达式
1.7.3 Guva工具类Hashing
1.7.4 密码加盐操作
1.7.5 MultipartFile的持久化
1.7.6 Guava Cache
1.7.7 Mybatis动态SQL
1.7.8 HttpSession的操作
1.7.9 ThreadLocal的使用
1.7.10 分页组件
1.7.11 Redis的使用
1.7.12 Ajax的实现

1.8 Spring4.0框架

1.8.1 @Transaction注解
1.8.2 请求重定向
1.8.3 SpringMVC处理流程
1.8.4 使用@Async进行异步处理
1.8.5 Spring mail发送激活邮件
1.8.6 编写Spring Inteceptor
1.8.7 配置Spring Inteceptor

1.9 部署框架

1.9.1 SpringBoot Maven Plugin

1.9.1.1 SpringBoot工程打包

1.9.2 SpringBoot Actuator

1.9.2.1 /health
1.9.2.2 /autoconfig
1.9.2.3 /beans
1.9.2.4 /mappings
1.9.2.5 /env
1.9.2.6 /metrics
1.9.2.7 /configprops
1.9.2.8 /trace
1.9.2.9 /dump

1.9.3 SpringBoot Admin

1.9.3.1 搭建、接入SpringBoot Admin的步骤
1.9.3.2 SpringBoot Admin监控面板

猜你喜欢

转载自blog.csdn.net/shenzhen_zsw/article/details/89873388
今日推荐