亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

使用java的注解(用在java類的方法上的注解)方法

2024-07-14 08:43:33
字體:
來源:轉載
供稿:網友

場景:根據方法上的注解,通過java反射方式找到需要執行的的方法。

1.注解類

/**注解作用在方法上*/@Target({ElementType.METHOD}) /**注解的生命周期一直程序運行時都存在VM運行期間保留注解,可以通過反射機制讀取注解信息*/@Retention(RetentionPolicy.RUNTIME)/**注解包含在Javadoc中*/@Documented public @interface Item {	String value();}

2.在類的方法上使用注解

public class WorkService { 	private static Logger logger = LoggerFactory.getLogger(WorkService.class); 	@Item("1001")	public int getItem1001Info(GirlVo girl) { 		logger.info("getItem1001Info輸出:");		logger.info(girl.toString());		return 1;	}	@Item("1002")	public int getItem1002Info(GirlVo girl) { 		logger.info("getItem1002Info輸出:");		logger.info(girl.toString());		return 1;	}	@Item("1003")	public int getItem1003Info(GirlVo girl) {		logger.info("getItem1003Info輸出:");		logger.info(girl.toString());		return 1;	}	@Item("1004")	public int getItem1004Info(GirlVo girl) {		logger.info("getItem1004Info輸出:");		logger.info(girl.toString());		return 1;	}	@Item("1005")	public int getItem1005Info(GirlVo girl) {		logger.info("getItem1005Info輸出:");		logger.info(girl.toString());		return 1;	}	@Item("1006")	public int getItem1006Info(GirlVo girl) {		logger.info("getItem1006Info輸出:");		logger.info(girl.toString());		return 1;	}}

3.實體類,作為參數傳遞

public class GirlVo implements Serializable { 	private static final long serialVersionUID = -8545755852948661858L;	/**ID號*/	private String girlId;	/**姓名*/	private String girlName;	/**年齡*/	private Long age;	/**身高*/	private Double height;	/**罩杯*/	private String cupSize;	public String getGirlId() {		return girlId;	}	public void setGirlId(String girlId) {		this.girlId = girlId;	}	public String getGirlName() {		return girlName;	}	public void setGirlName(String girlName) {		this.girlName = girlName;	}	public long getAge() {		return age;	}	public void setAge(long age) {		this.age = age;	}	public double getHeight() {		return height;	}	public void setHeight(double height) {		this.height = height;	}	public String getCupSize() {		return cupSize;	}	public void setCupSize(String cupSize) {		this.cupSize = cupSize;	} 	@Override	public String toString() {				return "GirlVo [girlId=" + girlId				+",girlName=" + girlName				+",age=" + age				+",height=" + height				+",cupSize=" + cupSize				+"]";	}}

4.反射調用方法注解的類

		 List<Method> methods = MethodUtils.getMethodsListWithAnnotation(clazz,Item.class);		 for (Method method : methods) {			 for (Annotation annotation : method.getDeclaredAnnotations()) {				 if (annotation instanceof Item){					 String code = ((Item) annotation).value();					 if (Objects.equals(item, code)){						 try {								logger.info("注解號:" + code +" 執行開始...");							method.invoke(clazz.newInstance(), girlVo);							logger.info("注解號:" + code +" 執行結束...");						} catch (Exception e) {							e.printStackTrace();							logger.info("拋異常...");						}					 }				 }			 }		 } 	} }

5.main方法測試類

public class TestAnnotation {		private static Logger logger = LoggerFactory.getLogger(TestAnnotation.class);	 	public static void main(String []args) throws ClassNotFoundException{		logger.info("測試開始......");		HashMap<String,Object> map = (HashMap<String,Object>) getData();		/**遍歷hashMap*/		for(Entry<String,Object> entry : map.entrySet()){			String item = entry.getKey();			GirlVo girlVo = (GirlVo) entry.getValue();			ReflectCallMethodAnnotation.annotationMethod(item,girlVo);		}				logger.info("測試結束......");	}  	public static Map getData() { 		HashMap<String ,Object> data = new HashMap();		 		GirlVo girlVo1 = new GirlVo();		girlVo1.setGirlId("1001");		girlVo1.setGirlName("張一");		girlVo1.setAge(27);		girlVo1.setHeight(169);		girlVo1.setCupSize("F");				GirlVo girlVo2 = new GirlVo();		girlVo2.setGirlId("1002");		girlVo2.setGirlName("王二");		girlVo2.setAge(29);		girlVo2.setHeight(175);		girlVo2.setCupSize("B");				GirlVo girlVo3 = new GirlVo();		girlVo3.setGirlId("1003");		girlVo3.setGirlName("劉五");		girlVo3.setAge(24);		girlVo3.setHeight(160);		girlVo3.setCupSize("B");				GirlVo girlVo4 = new GirlVo();		girlVo4.setGirlId("1004");		girlVo4.setGirlName("陳六");		girlVo4.setAge(21);		girlVo4.setHeight(168);		girlVo4.setCupSize("C");				GirlVo girlVo5 = new GirlVo();		girlVo5.setGirlId("1005");		girlVo5.setGirlName("趙七");		girlVo5.setAge(25);		girlVo5.setHeight(169);		girlVo5.setCupSize("C");				GirlVo girlVo6 = new GirlVo();		girlVo6.setGirlId("1006");		girlVo6.setGirlName("張八");		girlVo6.setAge(26);		girlVo6.setHeight(165);		girlVo6.setCupSize("A");				data.put("1001", girlVo1);		data.put("1002", girlVo2);		data.put("1003", girlVo3);		data.put("1004", girlVo4);		data.put("1005", girlVo5);		data.put("1006", girlVo6);				return data;	} }

以上所述是小編給大家介紹的使用java的注解(用在java類的方法上的注解)方法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲自拍小视频免费观看| 欧美性xxxx在线播放| 韩曰欧美视频免费观看| 精品日本高清在线播放| 国产精品美女午夜av| 亚洲成人黄色网| 久久夜精品va视频免费观看| 精品国产自在精品国产浪潮| 久久国产精品电影| 久久视频在线视频| 最近2019年日本中文免费字幕| 最近的2019中文字幕免费一页| 日韩av最新在线| 日韩精品一区二区三区第95| 一区二区三区回区在观看免费视频| 欧美一区二区三区四区在线| 日韩精品中文在线观看| 亚洲免费影视第一页| 日韩人体视频一二区| 韩剧1988免费观看全集| 国外色69视频在线观看| 91中文精品字幕在线视频| 日韩中文av在线| 日韩欧美aaa| 日本一本a高清免费不卡| 国产噜噜噜噜噜久久久久久久久| 欧美日韩亚洲国产一区| 亚洲人在线视频| 国产成人高清激情视频在线观看| 国产婷婷色综合av蜜臀av| 国产欧美 在线欧美| 91国内免费在线视频| 中日韩午夜理伦电影免费| 欧美性猛交xxxx免费看| 国产在线观看不卡| 精品国产精品三级精品av网址| 日韩欧美一区二区三区| 91免费视频国产| 国产精品爽黄69| 久久亚洲影音av资源网| 岛国av午夜精品| 亚洲片在线观看| 91精品视频免费观看| 一本大道久久加勒比香蕉| 国模精品视频一区二区| 亚洲国产日韩精品在线| 亚洲欧洲免费视频| 九九久久精品一区| 国产精品18久久久久久麻辣| 亚洲精品福利免费在线观看| 乱亲女秽乱长久久久| 国产精品福利在线观看网址| 欧美黑人视频一区| 福利微拍一区二区| 日韩视频免费大全中文字幕| 国产69精品久久久久久| 国产精品香蕉在线观看| 欧美成人免费va影院高清| 欧美激情区在线播放| 亚洲a在线播放| 亚洲第一精品久久忘忧草社区| 日韩精品中文字幕在线观看| 疯狂做受xxxx欧美肥白少妇| 中日韩午夜理伦电影免费| 国产精品亚洲欧美导航| 午夜精品一区二区三区在线视| 久久免费视频在线| 自拍偷拍亚洲欧美| 久久久免费电影| 欧美美最猛性xxxxxx| 久久夜色精品亚洲噜噜国产mv| 欧美大片免费观看在线观看网站推荐| 国产aⅴ夜夜欢一区二区三区| 在线日韩av观看| 欧美亚洲成人免费| 亚洲另类图片色| 国产精品av网站| 欧美裸身视频免费观看| 法国裸体一区二区| 粗暴蹂躏中文一区二区三区| 国产精品视频永久免费播放| 日韩精品中文字| 91亚洲国产成人精品性色| 国产亚洲精品激情久久| 亚洲人成电影在线播放| 亚洲字幕在线观看| 亚洲第一综合天堂另类专| 2019中文字幕在线观看| 国产一区二中文字幕在线看| 欧美激情二区三区| 国产欧美va欧美va香蕉在线| 亚洲午夜精品久久久久久性色| 精品亚洲精品福利线在观看| 午夜剧场成人观在线视频免费观看| 日本国产精品视频| 精品女厕一区二区三区| 久久亚洲影音av资源网| 久久影视电视剧免费网站| 亚洲成人网av| 青青精品视频播放| 精品在线小视频| 欧美日韩一区二区三区在线免费观看| 欧美激情综合亚洲一二区| 国产精品高潮呻吟久久av野狼| 这里只有精品在线播放| 亚洲综合精品一区二区| 美女视频黄免费的亚洲男人天堂| 亚洲激情视频在线观看| 欧美激情按摩在线| 国产视频综合在线| 欧美成人免费在线视频| 国产成人亚洲综合91精品| 亚洲精品免费在线视频| 亚洲精品久久久久久久久久久久久| 亚洲春色另类小说| 黑人与娇小精品av专区| 亚洲欧洲美洲在线综合| 97视频在线观看亚洲| 久久久精品2019中文字幕神马| 日韩精品视频在线观看免费| 精品无码久久久久久国产| 亚洲精品视频免费在线观看| 亚洲色在线视频| 日韩电影免费观看中文字幕| 久久精品国产69国产精品亚洲| 中文字幕在线成人| 久久人91精品久久久久久不卡| 欧美疯狂做受xxxx高潮| 亚洲第一精品夜夜躁人人躁| 久久精品国产亚洲7777| 欧美丝袜美女中出在线| 精品亚洲精品福利线在观看| 国产一区二区欧美日韩| 欧美性猛交xxxx黑人| 日韩影视在线观看| 成人在线视频网| 久久人人97超碰精品888| 亚洲国产精品热久久| 亚洲精品v天堂中文字幕| 免费不卡欧美自拍视频| 欧美自拍大量在线观看| 一级做a爰片久久毛片美女图片| 亚洲精品videossex少妇| 日韩av电影在线播放| 在线电影av不卡网址| 国产欧美精品在线播放| 欧美成人午夜剧场免费观看| 最近2019免费中文字幕视频三| 亚洲国产精品久久精品怡红院| 97超级碰碰碰| 亚洲视频一区二区三区| 欧美日韩亚洲精品内裤| 黄色成人av在线| 亚洲欧美在线一区| 国产精品扒开腿做| 精品福利视频导航| 亚洲嫩模很污视频| 中文字幕九色91在线| 国产精品香蕉国产| 亚洲乱码国产乱码精品精| 中文在线资源观看视频网站免费不卡| 久久九九国产精品怡红院| 狠狠躁夜夜躁人人爽天天天天97| 日韩欧美在线一区|