对ssm框架里面的一些常用注解的理解
@Componcnt :作用就是把当前类对象存入spring容器中
属性:value 用于指定bean的id 当我们不写的时候默认就是当前类名,并且首字母要小写
----------------------------------------------------------------------------------
@Controller 一般用在表现层
@Service 一般用在业务层
@Repository 一般用在持久层
他们三个是spring 框架为我们提供的注解,使我们的三层对象更加的清晰
-------------以上四个注解都是用来创建对象的------------------------------------
用于注入数据的
他的作用就是和在xml配置文件中的bean标签中写一个<property>标签的作用是一样的
@Autowired
作用:自动按照类型注入,只要容器中有唯一一个bean对象类型和要注入的变量类型匹配,就可以成功注入
位置:变量或者方法上
细节:set方法就不需要必须的了
@Qualifier
作用:按照类中注入的基础上再按照名称注入。给类成员注入时不能单独使用 要和@Autowired一起使用
属性: value 用于指定bean的id
@Resource
作用:直接按照bean的id注入 可以独立使用
· 属性:name用于指定bean的id
以上三个都只能注入其他bean类型的数据,基本的string类型的不能进行注入 ;集合类型的只能用xml注入
-----------------------------------------------------------------------------------------------------------------------
用于改变作用范围的
作用就是在bean标签中使用scope属性实现的功能是一样的
scope
作用:用于指定bean的作用范围
属性: value 指定范围取值 singleton(单例) prototype(多例)
-----------------------------------------------------------------------------------------------------------------------
和生命周期有关的
作用就是和在bean标签中使用init-method和destroy-methode的作用一样
@PostConstruct 初始化方法
@PreDestroy 销毁方法
----------------------------------------------------------------------------------------------------------------------------
在service中
@Service 的作用就是创建对象自动注入到spring容器中 代表在底层创建一个bean节点
@Transactional 的作用就是 事务操作 在需要事务管理的地方加@Transactional 注解。@Transactional 注解可以被应用于接口定义和接口方法、类定义和类的 public 方法上。
@Autowired
自动按照类型注入,只要容器中有唯一一个bean对象类型和要注入的变量类型匹配,就可以成功注入
项目启动 全局扫描包!扫描带有注解的地方,找到@Service 将创建好的对象自动注入到spring容器当中,然后 再通过@Autowired注入 调用里面的方法。 controller调用service层写了@Service而 service调用mapper层,mapper层没有写@Service是因为在springMVC.xml 里面第七步配置了 扫描mapper
对ssm框架里面的一些常用注解的理解的更多相关文章
- Spring框架系列(七)--Spring常用注解
Spring部分: 1.声明bean的注解: @Component:组件,没有明确的角色 @Service:在业务逻辑层使用(service层) @Repository:在数据访问层使用(dao层) ...
- SSM框架—Spring AOP之基于注解的声明式AspectJ(Demo)
项目结构 XML <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http ...
- SSM框架——实现分页和搜索分页
登录|注册 在路上 在路上,要懂得积累:在路上,要学会放下:我在路上!Stay hungry,Stay foolish. 目录视图 摘要视图 订阅 [公告]博客系统优化升级 ...
- maven springMVC SSM框架中 出现的406 (Not Acceptable)
首先,需要清楚,http state 406代表什么意思: 406是HTTP协议状态码的一种,表示无法使用请求的特性来响应请求的网页.一般指客户端浏览器不接受所请求页面的MIME类型. 出现这样的错误 ...
- SpringMVC--从理解SpringMVC执行流程到SSM框架整合
前言 SpringMVC框架是SSM框架中继Spring另一个重要的框架,那么什么是SpringMVC,如何用SpringMVC来整合SSM框架呢?下面让我们详细的了解一下. 注:在学习SpringM ...
- SSM框架之SpringMVC(3)常用注解
SpringMVC(3)常用注解 1. RequestParam注解 1.作用:把请求中指定名称的参数传递给控制器中的形参赋值 2.属性: 1.value:请求参数的每次 2.required ...
- SSM框架之Mybatis(7)延迟加载、缓存及注解
Mybatis(7)延迟加载.缓存及注解 1.延迟加载 延迟加载: 就是在需要用到数据时才进行加载,不需要用到数据时就不加载数据.延迟加载也称懒加载. **好处:**先从单表查询,需要时再从关联表去关 ...
- SSM框架——以注解形式实现事务管理
上一篇博文<SSM三大框架整合详细教程>详细说了如何整合Spring.SpringMVC和MyBatis这三大框架.但是没有说到如何配置mybatis的事务管理,在编写业务的过程中,会需要 ...
- SSM框架中的注解,配置和控制器相关笔记
常规SSM实例 探索SSM理论的前提,应该是在对框架基础的运作方式有一定了解,以下是个人Android后台项目,用SSM框架快速搭建,以下是代码,主要 观察结构. 代码结构: model实体类 Ida ...
随机推荐
- Prometheus(三):Prometheus监控交换机(snmp)
默认已安装Prometheus服务,服务地址:192.168.56.200 一.获取交换机snmp信息 snmp服务IP(交换机IP):172.20.2.83 snmp community:dfete ...
- 设置进程的cpu亲和性
在busybox中提供了一个名叫taskset的命令用于设置进程的cpu亲和性,让指定的进程或者程序在指定的cpu上面运行,该程序是通过调用sched_getaffinity和sched_setaff ...
- 使用PSCI机制的SMP启动分析
其他core的入口 文件:arch/arm64/kernel/head.S secondary_entry: 在从bl31切到EL1上的Linux Kernel后: 第595行,在el2_setup中 ...
- dapi 基于Django的轻量级测试平台六 怎样使用压测功能
QQ群: GitHub:https://github.com/yjlch1016/dapi JMeter非GUI模式下: jmeter -n -t jmx脚本 -l jtl文件 -e -o 测试报告目 ...
- 201671010459 张旭辉 实验十四 团队项目评审&课程学习总结
项目 内容 这个作业属于哪个课程 [教师博客主页链接] 这个作业的要求在哪里 [作业链接地址] 作业学习目标 (1)掌握软件项目评审会流程(2)反思总结课程学习内容 github仓库地址链接 [Git ...
- JRebel激活教程
JRebel的官方地址(https://zeroturnaround.com/software/jrebel),土豪可以自行去官网购买. 安装 打开IDEA-->setting-->plu ...
- A Comparison of Serverless Frameworks for Kubernetes: OpenFaas, OpenWhisk, Fission, Kubeless and more
The term Serverless has become synonymous with AWS Lambda. Decoupling from AWS has two benefits; it ...
- Kinect for Windows V2开发教程
教程 https://blog.csdn.net/openbug/article/details/80921437 Windows版Kinect SDK https://docs.microsoft. ...
- arduino驱动步进电机
https://learn.adafruit.com/adafruit-motor-shield-v2-for-arduino/install-software 1安装库 Adafruit_Motor ...
- 操作excel文件爬取nvd.nist数据
#!/usr/bin/env python # encoding: utf-8 #@author: jack import random from time import sleep import p ...