1、什么是SpringMVC
首先:MVC
M:Model 模拟层,业务逻辑判断,数据存储
V:VIEW 视图层,呈现数据的方式(html,图片,文本)
C:Controller 控制器 负责接收用户请求,并对不同的请求其作出对应的响应(根据请求调用响应模型唉处理业务逻辑)
注:SpringMVC 是基于MVC模式的Web框架,它是Spring框架下面的子项目
2、什么是SSM框架?
SSM:Spring+SpringMVC+MyBatis
使用Spring实现业务对象管理,使用SpringMVC负责请求的转发和视图管理,MyBatis作为数据的持久化引擎
SSM框架一般分为四层:
持久层dao层(mapper)
主要做数据持久化的操作,负责与数据库进行联络的一些任务都封装在这里
业务层(Service)
Service主要做业务的逻辑判断处理
表现层(Controller层或Handle层)
负责具体业务模块的流程控制
View层
主要和控制层(Controller)紧密结合,主要负责前台jsp页面的表示
3、Spring Boot如何定义多套不同环境配置?
基于properties或者yml配置文件
第一步
创建个环境对应的properties配置文件
Application.properties/yml
(初始项目配置文件,整个项目开发过程中保持不变的参数可以放在里面)
Application-dev.properties/yml
(开发环境)
Application-test.properties/yml
(测试环境)
Application-prod.properties/yml
(生产环境)
第二步
然后再application.properties/yml文件中制定当前的环境:
Spring.profiles.active=test(测试环境),这时候读取的就是基于application-test.properties文件,此属性可以读多个文件,以逗号隔开,
注:如果同时激活多个配置文件,出现相同的属性不同的配置,以后面配置文件的为准
4、在项目中为什么使用分页查询? 【以PageHelper作为讲解】
首先,在分页查询中我用到的是PageHelper框架,PageHelper帮我们做了分页查询,处理了很多细节问题,还封装了其他数据。
(比如:每页显示多少条,总页数,总条数,最大页码等)
封装之前做了两次查询(一次是总数据查询,一次是当前页码数据[limit]查询)
别人做两次查询之间可能会增删数据,就会产生安全问题,PageHelper也帮我们解决了这个问题。
PageHelper既帮我们解决了数据问题,也解决了安全问题,所以我们使用PageHelper框架
5、Redis的五大类型
五大类型:String(字符串)、Hash(散列)、List(列表【数据有序,可以重复】)、Set(集合【数据无序,不可重复】)、SortedSet【zSet】(有序集合【可排序】)
6、什么是SpringBoot
Spring Boot是由pivotal团队提供的基于Spring的全新框架,指在简化Spring应用的初始搭建和开发过程,该框架使用了特定的方式来进行配置,从而使开发人员不在需要定义样板化的配置,约定大于配置(重点)
7、SpringBoot的Run方法做了什么事?
IOC(控制反转)初始化的一个操作
8、@ComponentScan注解是干什么的?
这里指具体要扫描哪个类,如果要扫描多个包,可以用逗号来区分
如果没有指定具体的扫描路径,实际上默认扫描路径就是当前JAVA类所在路劲及其子路径,都是被扫描的范围
9、@EnableAutoConfiguration注解是干什么的?
开启自动装配的一个核心注解
10、SpringBoot的优点
1.独立运行
Spring Boot而且内嵌了各种servlet容器,Tomcat、jetty等,现在不再需要打成war包部署的容器中,Spring Boot只要打成一个可执行的jar包就能独立运行,所有的依赖包都在jar包内
2.简化配置
Spring-boot-starter-web启动器自动依赖其他组件,减少了maven的配置
3.自动配置
如添加一个spring-boot-starter-web启动器就拥有了web的功能,无需其他配置
4.无代码生成和XML配置
Spring Boot配置过程中无代码生成,也无需XML配置文件就能完成所有配置工作,这一切是借助于条件注解完成的,这也是Spring4.x的核心功能之一
5.应用监控
Spring Boot提供一系列端点可以监控服务及应用,做健康检测