如何让Spring 3.0控制器触发404?

我有一个具有@RequestMapping(value = "/**", method = RequestMethod.GET)的控制器,对于访问控制器的大约URLs个,我希望容器提供一个404.

推荐答案

从Spring3.0开始,您还可以抛出用@ResponseStatus注释声明的异常:

@ResponseStatus(value = HttpStatus.NOT_FOUND)
public class ResourceNotFoundException extends RuntimeException {
    ...
}

@Controller
public class SomeController {
    @RequestMapping.....
    public void handleCall() {
        if (isFound()) {
            // whatever
        }
        else {
            throw new ResourceNotFoundException(); 
        }
    }
}

Java相关问答推荐

ActivityCompat.请求收件箱自动拒绝权限

Mongo DB Bson和Java:在子文档中添加和返回仅存在于父文档中的字段?

Java 22模式匹配不适用于记录模式匹配.给出汇编问题

尽管类型擦除,instanceof与泛型在Java中如何工作?

Android Studio—java—在onBindViewHolder中,将断点和空白添加到BackclerView中

如何在访问完所有文件后加入所有线程?

Java记录的不同序列化/反序列化

我找不到&Quot;配置&的位置

编译多个.Java文件并运行一个依赖于用户参数的文件

当返回Mono<;Something>;时,不会调用Mono<;void>;.flatMap

有没有办法让扩展变得多态?

自定义批注的外推属性值

如何在Microronaut中将 map 读取为 map

搜索列表返回多个频道

如何在Jooq中获取临时表列引用?

一对多关系和ID生成

在JDK Flight Recorder中只记录单个线程

当我在Java中有一个Synchronized块来递增int时,必须声明一个变量Volatile吗?

在Spring Boot JPA for MySQL中为我的所有类创建Bean时出错?

Java.time.OffsetDateTime的SQL Server数据库列类型是什么?