Java面试小练(十二)

1). @RequestParam、@RequestBody、@PathVariable 是 Spring MVC 中处理请求参数的三个注解。

  • @RequestParam:用于处理 URL 中的请求参数,如 ?name=value。通过 @RequestParam 注解,可以指定参数的名称、required、defaultValue 等属性。
  • @RequestBody:用于处理请求体中的数据,如 JSON、XML 等。通过 @RequestBody 注解,可以将请求体中的数据自动绑定到 Java 对象上。
  • @PathVariable:用于处理 URL 中的路径变量,如 /users/{id}。通过 @PathVariable 注解,可以指定路径变量的名称、value 属性等。

2). 请详细描述一下 什么是DI ? 常用注解是什么 ? 如果依赖注入时,IOC容器中同一个类型的bean有多个,该如何实现依赖注入(提示:三种方案)?

依赖注入(Dependency Injection,DI)是一种设计模式,它将对象的依赖关系从对象本身转移到了外部。在 Spring 中,IOC(依赖注入容器)负责管理所有的Bean,并负责将对象之间的依赖关系注入到各个Bean中。常用的注解有 @Autowired、@Inject、@Component、@Service、@Repository、@Controller 等。

如果依赖注入时,IOC容器中同一个类型的bean有多个,可以采用以下三种方案实现依赖注入:

  • @Primary 赋予bean优先级
  • @Autowired +@Qualifier
  • @Resource(name=".....") bean的名

3). 在项目开发中,处理异常通常有以下几种方式:

  • 使用 try-catch 语句:在可能抛出异常的代码块中使用 try-catch 语句捕获异常,并进行异常处理。
  • 使用 @ExceptionHandler 注解:使用 @ExceptionHandler 注解定义全局异常处理器,用于统一处理项目中所有的异常。
  • 自定义异常:如果需要在项目中自定义异常,可以创建一个新的类,继承自 Exception 或 RuntimeException,并重写其构造函数和toString 方法。

定义全局异常处理器的方法如下:

  • 创建一个全局异常处理类,继承自 ExceptionHandler 接口。
  • 重写 handleException 方法,定义全局异常处理逻辑。
  • 在配置类上使用 @EnableExceptionHandling 注解,开启全局异常处理功能。

如果项目中自定义异常,推荐继承自 Exception,而不是 RuntimeException,因为 Exception 可以传递给父类,而 RuntimeException 不可以。

posted @   奕帆卷卷  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示