一、MVC

  1.使用Spring有一个非常大的好处,那就是能够实现完全面向接口编程,传统的使用Dao、Service并不能实现完全的面向接口编程。

  2.示例:https://github.com/kdyzm/day45_spring_mvc

二、注解示例

  1.定义注解方法示例:

package com.kdyzm.spring.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target; @Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE,ElementType.METHOD,ElementType.FIELD})
public @interface MyAnnotation {
String value() default "默认值";
}

  2.使用注解方法示例

package com.kdyzm.spring.annotation;

@MyAnnotation
public class Person {
@MyAnnotation("name属性")
public String name; @Override
@MyAnnotation("toString方法!!!")
public String toString() {
return "Person [name=" + name + "]";
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} }

  3.解析注解方法示例

package com.kdyzm.spring.annotation;

import java.lang.reflect.Field;
import java.lang.reflect.Method; public class Test {
public static void main(String[] args) {
Class<Person> clazz=Person.class;
if(clazz.isAnnotationPresent(MyAnnotation.class)){
MyAnnotation annotation=(MyAnnotation) clazz.getAnnotation(MyAnnotation.class);
System.out.println(annotation.value());
}
Field [] fields=clazz.getFields();
for(Field field:fields){
System.out.println(field.getName());
if(field.isAnnotationPresent(MyAnnotation.class)){
MyAnnotation annotation=field.getAnnotation(MyAnnotation.class);
System.out.println(annotation.value());
}
} Method[]methods=clazz.getMethods();
for(Method method:methods){
System.out.println(method.getName());
if(method.isAnnotationPresent(MyAnnotation.class)){
MyAnnotation annotation = method.getAnnotation(MyAnnotation.class);
System.out.println(annotation.value());
}
}
}
}

  4.解析结果:

默认值
name
name属性
toString
toString方法!!!
getName
setName
wait
wait
wait
equals
hashCode
getClass
notify
notifyAll

【Java EE 学习 49 下】【Spring学习第一天】【MVC】【注解回顾】的更多相关文章

  1. MongoDB和Java(5):Spring Data整合MongoDB(注解配置)

    最近花了一些时间学习了下MongoDB数据库,感觉还是比较全面系统的,涉及了软件安装.客户端操作.安全认证.副本集和分布式集群搭建,以及使用Spring Data连接MongoDB进行数据操作,收获很 ...

  2. Java架构师之路 Spring学习笔记(一) Spring介绍

    前言 这是一篇原创的Spring学习笔记.主要记录我学习Spring4.0的过程.本人有四年的Java Web开发经验,最近在面试中遇到面试官总会问一些简单但我不会的Java问题,让我觉得有必要重新审 ...

  3. 【Java面试】介绍下Spring IoC的工作流程

    Hi,我是Mic 一个工作了4年的粉丝,在面试的时候遇到一个这样的问题. "介绍一下Spring IOC的工作流程" 他说回答得不是很好,希望我能帮他梳理一下. 关于这个问题,我们 ...

  4. Spring学习总结(19)——Spring概念详解

    Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建.简单来说,Spring是一个分层的JavaSE/EEfull-stack(一 ...

  5. 201521123006 《Java程序设计》第1周学习总结

    1. 本章学习总结 (1)java在使用的过程中可以发现其本身有着许多为了节约资源而作的设计,而java根据其应用领域分为了三大平台:Java SE.Java ME与Java EE.在本周的学习中我们 ...

  6. Java ee第一周的作业

    这学期目标:对Java ee 进行一定程度的学习,希望最后自己能尽可能掌握Java ee的知识 企业及应用的特点:企业级的应用通常比较庞大,而且其中的数据需要保密. Java ee 框架图

  7. 【转载】开发者眼中的Spring与Java EE

    转载自:http://www.infoq.com/cn/news/2015/07/spring-javaee 在Java社区中,Spring与Java EE之争是个永恒的话题.在这场争论中,来自两个阵 ...

  8. 最重要的 Java EE 最佳实践

    參考:IBM WebSphere 开发人员技术期刊: 最重要的 Java EE 最佳实践 IBM WebSphere 开发人员技术期刊: 最重要的 Java EE 最佳实践 2004 年 IBM® W ...

  9. Java EE发展史

    前言 最近的这段时间一直在学习Java EE,刚刚完成了从0到1的蜕变,所以顺便整理一下我所了解到的Java EE,给刚入门学习的新人一些头绪,而所谓“启示录”,就是这个意思. 一.Java EE是什 ...

随机推荐

  1. Linux 命令积累

    1, su root 切换到root用户 su user 切换到普通用户 2, mkdir / touch 创建文件夹 /文件 3, vi 打开编辑文件 按insert进入编辑模式 编辑完成后 按es ...

  2. WebView·开发指南

    WebView·开车指南 作者:凌俊琦链接:https://zhuanlan.zhihu.com/p/22247021来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. T ...

  3. JS:offsetWidth\offsetleft 等图文解释

        网页可见区域宽: document.body.clientWidth;网页可见区域高: document.body.clientHeight;网页可见区域宽: document.body.of ...

  4. IntelliJ IDEA 常用设置讲解

    说明 IntelliJ IDEA 有很多人性化的设置我们必须单独拿出来讲解,也因为这些人性化的设置让我们这些 IntelliJ IDEA 死忠粉更加死心塌地使用它和分享它. 常用设置 IntelliJ ...

  5. Level Of Management Protocols - SNMP Tutorial

    30.2 The Level Of Management Protocols Originally, many wide area networks included management proto ...

  6. IO流 FileOutputSteam在fos.txt写出hello

    package cn.idcast2; import java.io.FileNotFoundException; import java.io.FileOutputStream; import ja ...

  7. 记录-div绝对定位针对手机浏览器的区别

    最近搞个wap ,有一个需求就是一些文字描述定位到一张图片上的某个地方,按照以往的方式直接通过定位div position: absolute; PC chrome 模拟手机显示没问题! 但是,在ip ...

  8. CentOS 7 上安装 redis3.2.3安装与配置

    前一段时间写过一篇codis集群的文章,写那篇文章主要是因为当时的项目不支持redis自身集群的功能. 而现在最新的项目是需要redis集群的,这篇文章我们就来介绍下有关redis的安装与配置. 一. ...

  9. tyvj1034 尼克的任务

    描述 尼克每天上班之前都连接上英特网,接收他的上司发来的邮件,这些邮件包含了尼克主管的部门当天要完成的全部任务,每个任务由一个开始时刻与一个持续时间构成.尼克的一个工作日为N分钟,从第一分钟开始到第N ...

  10. CentOS6.3编译安装Nginx1.4.7 + MySQL5.5.25a + PHP5.3.28

    [准备工作] #在编译安装lnmp之前,首先先卸载已存在的rpm包. rpm -e httpd rpm -e mysql rpm -e php yum -y remove httpd yum -y r ...