Java面试练习与总结第一回(spring+方法的重写与重载)

Java面试练习与总结第一回(spring+方法的重写与重载)


临近Java面试的练习与总结,范围可由JavaSE到数据库、Web前端再到JavaEE初级、各类框架、Linux系统等方面,包含知识点和疑难问题点,系列连载发文,可供求职者参阅。

1.SpringMVC的常用注解

  • @RequestMapping:处理请求地址映射的注解,常用在类和方法上,若用在类上表示作为类中方法的父路径;
    属性:
    • value:指定请求的实际 url;
    • method:指定请求的method类型(get、post、put、delete);
    • params:指定Request中必须包含的参数,该请求才生效;
    • header:指定Request的请求体中必须某些header的值,该请求才生效;
    • consumes:指定Request请求提交的内容类型(如:application/Json,text/html);
    • produces: 指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回。
  • @RequestParam:绑定单个请求参数值,request.getParameter(“xxx”);
    属性:
    • value:参数名称;
    • required:是否必须,默认true,表示请求中必须包含该参数,否则抛出异常;
    • defaultValue:默认值,指定请求中没有该参数时的值,此属性使得required的值改为false;
  • @PathVariable:绑定URI地址上的路径变量;
    属性:
    • value:参数值;
    • required:是否必须;
  • @ResponseBody:作用于Controller层的方法之上,可以整个返回结果以某种格式返回,如Json、text;
  • @ModelAttribute:被注释的参数或方法添加到Model中,当注释在方法时,请求处理方法Action会将该方法变成一个非请求处理的方法,但其它Action被调用时会首先调用该方法;
  • @SessionAttributes:注释在类上,可以将指定属性值存到Session作用域中;
  • @CookieValue:获取Cookie中的值;
  • @GetMapping:是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。该注解将HTTP Get 映射到 特定的处理方法上;
  • @PostMapping:与上同理;
  • @PutMapping:与上同理;
  • @DeleteMapping:与上同理;
  • @JsonFormate:将json、xml转换成Java对象,出自于Jackson;
  • @DateTimeFormat:是spring自带的处理框架,主要用于将时间格式化;
  • @JSONField:来源于fastjson,是阿里巴巴的开源框架,主要进行JSON解析和序列化。

2. 简述对Spring IoC的理解

IoC:Inversion of Control,即“控制反转”,是一种设计思想,在Java设计开发中,IoC意味着将对象的设计交给容器控制。

  • 为什么有IoC容器?Spring框架至于Java Bean的管理,是典型的工厂设计模式,而创建Bean的Factory就是IoC容器;所以IoC容器的出现为开发者提供了更多的便利和基础服务;
  • 什么是IoC?IoC是一种设计思想,主要是为了完成对象的创建和依赖的管理注入。
  • IoC技术实现原理?我们都知道IoC既是生成Bean的工厂,而要知道工厂是如何产生对象的,我们需要看具体的IOC容器实现,spring提供了许多IOC容器的实现。比如XmlBeanFactory,ClasspathXmlApplicationContext等。
  • IoC和DI之间的关系?DI—Dependency Injection,即“依赖注入”,IoC通过DI动态的向某个对象提供它所需要的其他对象。

3. 方法的重载与方法的重写

区别 重载 重写
英文名 Overloading Overiding
范围 同一类 不同类(继承关系)
方法名 相同 相同
参数列表 不同 相同
修饰符 无关 大于或等于父类
返回值类型 不同 相同(或小于父类)
面向对象思想 多态 继承
抛出父类没有的异常 可以 不可以

猜你喜欢

转载自blog.csdn.net/sinat_34045444/article/details/84786279
今日推荐