代码生成(springboot系统提出确认功能)
时间: 2023-07-12 18:39:39 浏览: 130
代码生成器:代码生成springboot
以下是一个简单的 Spring Boot 应用程序,在关闭应用程序时会提示用户确认是否关闭。
首先,你需要在 `pom.xml` 文件中添加以下依赖项:
```xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
</dependencies>
```
然后,在应用程序的主类中,添加以下代码:
```java
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
ApplicationContext context = SpringApplication.run(Application.class, args);
// 添加一个关闭钩子
context.registerShutdownHook();
// 监听关闭事件
context.addApplicationListener(new ApplicationListener<ContextClosedEvent>() {
@Override
public void onApplicationEvent(ContextClosedEvent event) {
// 提示用户确认是否关闭
System.out.print("确定要退出吗?(Y/N) ");
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine().trim();
if (input.equalsIgnoreCase("y")) {
System.exit(SpringApplication.exit(context));
} else {
// 取消关闭
context.getApplicationName();
}
}
});
}
@Bean
public ExitCodeGenerator exitCodeGenerator() {
return () -> 0; // 自定义退出码
}
}
```
这里我们添加了一个事件监听器,用于监听应用程序关闭事件。在事件发生时,会提示用户确认是否关闭。如果用户输入 `Y`,则调用 `System.exit()` 方法关闭应用程序,否则取消关闭。
你也可以根据需要修改提示信息和判断条件。
现在,当你使用 `Ctrl + C` 或其他方式关闭应用程序时,会输出以下消息:
```
2021-07-02 09:10:59.048 INFO 4288 --- [ Thread-2] o.s.b.a.ApplicationShutdownListeners : Closing application...
确定要退出吗?(Y/N) y
```
阅读全文