1.@Autowired注解如何理解?
它是属于spring的容器配置的一个注解,与它同属容器配置的注解还有@Required,@Primary, @Qualifier等等。因此@Autowired注解是一个用于容器(container)配置的注解。将Spring容器中的bean自动的和我们需要这个bean的类组装在一起协同使用。
2.如何理解Spring的使用
第一,所有的类都需要配置到bean。第二,所有的bean都需要通过通过Spring容器去取。第三,Spring取出的bean就是一个对象,可以直接调用。
2.代理模式
真实类和代理类要实现同一个接口,在代理类中实现真实类的方法同时可以进行真实类方法的增强处理
参考
3.AOP详解面向切面编程
通过预编译和运行期间动态代理来实现程序功能的统一维护的一种技术。在 OOP 中, 我们以类(class)作为我们的基本单元, 而 AOP 中的基本单元是 Aspect(切面),AOP是软件行业的热点,也是Spring框架中的一个重要内容,是函数式编程的一种延伸范式,
一般而言,将切入到指定类指定方法的代码片段称为切面,而切入到哪些类、哪些方法则叫切入点。有了AOP,我们就可以把几个类共有的代码,抽取到一个切片中,等到需要时再切入对象中去,从而改变其原有的行为。
从技术上来说,AOP基本上是通过代理机制实现的。
4.MVC三层架构
Controller:控制层 接收客户端的请求,然后调用Service层接口控制业务逻辑,获取到数据,传递数据给页面;
Service:业务逻辑层 接收Controller层的请求,然后调用Dao层,获取到数据
Dao:数据访问层 连接数据库,对数据库进行操作,具体到对于某个表的增删改查,也就是说某个DAO一定是和数据库的某一张表一一对应的,其中封装了增删改查基本操作
5.@Controller
在 Spring MVC 中,@Controller 注解用于标识一个 Java 类是一个控制器。控制器负责接收请求、处理请求,并返回响应。具体来说,使用 @Controller 注解的类将会被 Spring MVC 自动扫描,并注册为一个控制器。
@RequestMapping
@RequestMapping注解是一个用来处理请求地址映射的注解,可用于映射一个请求或一个方法,可以用在类或方法上。
通过 RequestMapping 注解来来指定控制器可以处理哪些URL请求。
@GetMapping
@GetMapping用于处理请求方法的GET类型
@ResponseBody 注解的作用是将Controller的方法返回的对象,通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据。
@ResponseBody的作用其实是将java对象转为json格式的数据,然后直接写入HTTP response 的body中;一般在异步获取数据时