MVC三层架构(后端架构模型)

MVC三层架构(后端架构模型)

View(视图层/数据展示层JSP)

Controller(控制器层/请求与响应 Controller)

Model(数据模型层Service,Dao/Mapper)

Spring框架俩大核心模块

IOC&DI

inversion Of Control   控制反转 (基于注解和反射发现组件类和注册对象的过程)

           发现:运行时让IoC容器发现组件类

                    1.组件类的包层级不能高于启动类,只能小于等于

                    2.组件类上需要有IoC注解

           注册:发现后就会触发注册,注册就是创建对象放入IoC容器的过程

Dependency injection  依赖注入 (赋值的过程)

          注入:在运行时,从IoC容器中找到与指针相匹配的对象赋值给指针的过程

发现---》zhuce---》注入

具有IoC功能的注解

1.@Controller/@RestController

(1)用于控制器的发现和注册

2.@Service

 (1)用于Service层类的发现和注册

3.@Repository(用到框架就不会有Dao层)

(1)用于Dao层的发现和注册

4.@Component

(1)用于任意一个普通类的发现和注册

5.@MapperScan

(1)用于扫描mapper包,在运行时创建接口的实现类,并注册对象到IoC容器

什么控制权?

创建对象的控制权 new 构造方法()

为什么要反转?

高内聚低耦合

耦合=依赖(工程依赖工程,类依赖类)

Component组件(组成工程的原件,指的是类)

Bean/JavaBean咖啡否/组成(指的对象/被Ioc容器发现后创建的对象)

IoC&DI的实现方式有三种

发现----注册----注入

发现/注册UserController

发现/注册UserServiceImpl

在UserController注入

1.基于xml文件实现(已经淘汰)

2.基于注解实现()

3.基于配置类实现

AOP(日志管理)

面向切面编程

AOP为Aspect Oriented Programming的缩写

Lomcok 三方库提供的注解

@Data=(@Getter+@Setter+@EqualsAndHashCode+@ToString)
@Getter

@Setter

@EqualsAndHashCode

@AllArgsConstructor

@NoArgsConstructor

@ToString

@Slf4j

(编译后的字节码文件中会出现一个私有的静态变量,类型是Logger,指针名为log,这个就是用来打印日志的对象,需要在哪个类中打印日志,只需要给这个类添加@Slf4j注解,这个类中就会有一个log指针

private static final Logger log = LoggerFactory.getLogger(UserController.class);

在使用log对象打印日志之前,需要先配置打印日志的规则

1.将日志配置文件放在resources目录中

日志配置文件log.xml可以复用,需要了解里面如何配置日志打印规则

 2.在application.properties中告诉Lombok框架配置文件在哪里

 使用log打印日志来替代System.out.println()

写Demo

System.out.println()

写项目

使用log打印

1.log打印的信息更多

日志打印时间 所在线程 所在类 日志信息

2.Log可以按级别打印日志,可以通过级别控制哪些打印,哪些不打印

3.Log可以打印到控制台,还可以打印到文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值