Java及spring 注解(反射原理)
java注解:
Java5.0以后引入了注解的概念
注解只在源码阶段保留(编译时忽略),不会影响程序内部的东西,决定运行级别 是一个标识
定义一个注解就可以在其他类中使用
1.元注解:注解上面的注解
(1)@ Retention(...)
(2)@Documented
(3).@Target------注解运行的地方(构造函数/属性/方法上)
(4).@Inherited
(5)@Repeatable(...) 可多次重复使用--可以将多个值重复赋给容器
注解的属性:也叫成员变量,注解只有成员变量,没有方法。
注解的成员变量在注解中以“无形参的方法”形式来声明,其方法名定义该成员变量的名字,其返回值定义了该成员变量的类型;
给注解的属性赋值:
(当一个注解(RunAnnotation2)没有属性---它只是一个标识 ()可以省略)
Java预用(本来就有)注解:
@Deprecated:过时的方法或者类(还可以用 只是有了更好的升级)
@Override:方法重载
@SuppressWarnings(“要忽略的内容”):阻止警告
@SafeVarargs:参数安全类型
@FunctionalInterface:函数式接口注解
注解与反射:
注解通过反射获取(通过反射获取注解信息), 通过类 方法名名字获取
mvc在运行时在handlemapping会读你的注解 拿到你的注解的值 拼成一个请求发送到DispaterServlet或者controller
自定义注解:可以定义一个static 方法获取注解,,然后控制程序的走向
package com.spring.annotation;@TestAnnotation(id="666",message = "wxx")
public class Test {//只有当id=666时才访问到这个方法private void test(){System.out.println("test run");}public void runTest(){//获取类的注解TestAnnotation t=this.getClass().getAnnotation(TestAnnotation.class);if(t.id().equals("666")){this.test();}}}
只要实例化对象就判断是否加了该注解????
使用注解--- 反射原理(需要把注解加到多个类或者多个方法)判断逻辑
spring 注解:
自动注入:成员变量上
@Autowired:自动注入 默认ByType (包/接口的实现类)找,如果找到有多个bean 再按ByName查找
(用你注入的类型去匹配你定义的bean 当匹配到多个时 根据 唯一的name再进行匹配 多个则异常)
@Qualifier("name"):名字注入
@Resource:成员变量
@Singleton:单例类
@RequestBody:可以放协议上的内容
@RequestParam:获取参数
@RequestMapping:请求映射
@ResponseBody:返回字符串 去掉后返回原先视图指定的页面
@Controller:声明控制器 控制层
@Service:service层
@Repository:相当于定义成bean 注入时便于分层
@Component:分层
ps:spring 的注解很强大,其应用机制主要就是反射原理 通过获取对象做判断逻辑;
Java及spring 注解(反射原理)相关推荐
- icop java,java基于spring注解AOP的异常处理的方法
一.前言 项目刚刚开发的时候,并没有做好充足的准备.开发到一定程度的时候才会想到还有一些问题没有解决.就比如今天我要说的一个问题:异常的处理.写程序的时候一般都会通过try...catch...fin ...
- java获取spring注解的实体_Spring 注解实体类中非数据库字段属性
今天要给一个实体类添加一个List集合属性! private List childList = new ArrayList(); 写完后get/set方法一写,启动就报错: org.hibernate ...
- java spring框架 注解_史上最全的java spring注解
史上最全的java spring注解,没有之一 注解是个好东西,但好东西我们也是看见过,整理过,理解过,用过才知道好.不求我们每个都记住,但求保有印象,在需要的时候能提取出来再查找相关资料,平时工作就 ...
- java注解接收上传文件,前台:Input type=file 后台获取文件内容用的是spring注解,当地环境上传图片是好的,发布到服务器上图片读取不到,求大神指点...
当前位置:我的异常网» Java Web开发 » 前台:Input type="file" 后台获取文件内 前台:Input type="file" 后台获取文 ...
- java中spring的注解_spring中的各种注解解析
Spring中的注解大概可以分为两大类: 1)spring的bean容器相关的注解,或者说bean工厂相关的注解: 2)springmvc相关的注解. spring的bean容器相关的注解,先后有:@ ...
- @async注解_史上最全的java spring注解
史上最全的java spring注解,没有之一 注解是个好东西,但好东西我们也是看见过,整理过,理解过,用过才知道好.不求我们每个都记住,但求保有印象,在需要的时候能提取出来再查找相关资料,平时工作就 ...
- java spring注解维护,从一次工程启动失败谈谈 spring 注解
原标题:从一次工程启动失败谈谈 spring 注解 檀宝权 Java 后端开发工程师,负责度假 App 后端和广告后端开发维护工作,熟悉 Tomcat,Spring,Mybatis,会点 Python ...
- java 获取bean的注解_如何获取spring 注解的bean
展开全部 不用e69da5e887aa62616964757a686964616f31333337613131配置xml,直接java代码实现,参考代码如下:public class GetAppli ...
- java 异步调用 事务_深入理解Spring注解@Async解决异步调用问题
序言:Spring中@Async 根据Spring的文档说明,默认采用的是单线程的模式的.所以在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的. 那么当多个任务的执行势必会相互影响. ...
最新文章
- 对国内云计算三个现象的思考
- unity3d android 回调,大神们,请问unity和Android交互的时候,为什么总是调用不到方法...
- 如何理解 inode
- Pytorch 各种模块:降低学习率,
- 78-spark2.2的编译
- node 创建静态服务器并自动打开浏览器
- 读取图片测试_精品:固态硬盘进阶知识:寿命篇:(一)22TB地狱级写入测试...
- c语言结构体tdl,计算机等级二级C笔试考前练习习题(21)
- 在后台运行程序/软件的Linux命令
- 异常:java.lang.NoSuchMethodError: org.apache.poi.ss.usermodel.Workbook.getCellStyleAt
- R爬虫小白入门:Rvest爬链家网+分析(三)
- 安装XAMPP遇到的问题(一)——要求关闭UAC以及权限问题
- 全电发票的最新进展:有关咨询整理(上篇)
- Javascript的事件冒泡
- 正则表达式匹配身份证号
- 4年产品点滴心路——谈谈形而上的3个产品素质
- html网页背景图片 菜鸟教程,CSS3 背景
- python人工智能要看哪些书籍_有趣的电影英文怎么读
- HCIE 面试资料-OSPF
- landesk桌面管理