redis 不用每次去查询mysql mysql比较慢
solr 其实也算是一种数据库 只不过我们用它来作为搜索引擎
多台tomcat(四大业务/web模块):
biz:主业务,酒店管理 机票 攻略
search:搜索服务
trade:支付
auth:用户认证服务 注册 登录
前后端分离原因:
单体式项目会有弊端 未来如果想要换在安卓平台 那么你写的web项目就不能用
分离以后 可以换到别的平台 手机app等
后端分离的原因:
因为模块都聚集在一起 如果未来比如说search经常使用 我们想给他提升一下性能 考虑配置多台(集群) 因为以前是单体式 四个业务模块是在一起的 你不能单独的给单个模块进行集群 本来你给一个提升性能就可以 但是不分离的话 你就需要给4个进行集群 浪费性能
maven多模块项目管理
在eclipse中 搜maven
跳过骨架
多模块管理 打包方式变为pom
当你创建好以后 src都可以删除
开始创建子工程
但其实 你搭建好以后 真实的在eclipse的工作空间中 你只有一个文件夹 没有maven-biz ,maven-biz是在maven-multi-model下面 只不过eclipse在显示的时候是分开显示的
maven多模块管理 类似于面向对象中的继承
1.创建父工程(打包方式pom)
2.在父工程下创建模块(子工程)(打包成war jar)
优点:
模块拆分以后 易于团队开发 扩展管理
子工程中的公有依赖 可以在父工程统一配置
父工程可以锁定依赖版本 未来子工程的依赖版本是统一管理的
idea ctrl+alt+l格式化
在eclipse中 maven打成war包出错 因为webapp下面缺少web.xml
选中项目 右键 java ee tools选择第二个
在多个子工程中导入相同的依赖 但是版本还不一样
所以我们可以在父工程中添加版本锁定
他看着着和添加依赖差不多 大那是他不是在添加依赖 而是锁定版本的
他是先把依赖写清楚 如果子工程中需要这个依赖 就用我这个版本
在eclispe中导入maven
在idea中开始搭建环境
一般父工程的名字 xxx-project /parent/backend后端/framework
前端fronten
在idea中创建的项目 默认创建是java工程类的 但是没有关系 后面在改
packaging如果不写 默认是jar
创建好以后的src可以删掉
选中你建立的项目 开始创建子项目 右键 new model 当你创建好以后 packaging自动改为pom
爱旅行项目 三大基础模块 四大业务模块
dao utils beans----->jar
auth trade search biz ------------->war
有的时候idea里面也会报错 但是只要右边圈住的黄色区域没有红色下划线的话 可以忽略错误
maven的传递依赖 谁离他近 他就依赖谁
parent父项目
beans是最基础的
dao依赖于utils mybatis+mysql+dbcp
auth依赖于dao
biz依赖于dao
trade依赖于dao
search依赖于utils
依赖弄好 接下来是配置
dao----mybatis
auth biz trade search --springmvc spring
代码生成器
1.准备一个模板 JSP就是一个模板 tomcat里面的Jasper组件 就是给这个模板进行转换用的
2.准备动态的数据
3.合成机制
FreeMarker模板引擎-----apache提供的
lom-bok
板进行转换用的
2.准备动态的数据
3.合成机制
FreeMarker模板引擎-----apache提供的
.ftl结尾的就是模板
lom-bok
<!--开发工具lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
</dependency>
@AllArgsConstructor生成带参构造
@NoArgsConstructor生成无参构造
@toString(exclude="name")生成的toString不要name
可以帮你自动关流
在idea中需要装一个插件:
idea中你是拿不到set方法的 需要配置一插件
第一个
全部设置好以后 点击右侧maven 建议先执行一次清理 其次是编译