Eclipse+Maven搭建Springboot的Web工程和springboot注解实现定时任务、mvn打包可执行可依赖的jar包

本文主要是介绍Eclipse+Maven搭建Springboot的Web工程和springboot注解实现定时任务、mvn打包可执行可依赖的jar包,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、maven依赖来源:      

pom.xml如果使用官网的,依赖的包是从官网下载的;如果公司或者自己定制的maven仓库,可以使用自己的pom.xml,包从自己的仓库下载,往往这些是经过定制或者改造过的,符合自己的使用规范。

settings文件导入:点击Eclipse的菜单:windows->perferences->搜索setting

1)配置完成:菜单project-clean

2)工程右键-Maven-update project

 

2、工程建立步骤:

1)点击Eclipse的菜单:File->New->Other->Maven 选择 Maven Project 点击Next

参考:https://blog.csdn.net/u010086122/article/details/81563420  二. 创建Maven项目

工程目录:

 

右键项目-build path-config build path下可以配置几个项目

看到路径到src/main/java层,scheduled.test是包名,否则路径设置不对包名是从src开始。

2)添加到pom.xml中springboot依赖下载spring包,参考:https://blog.csdn.net/u010086122/article/details/81563420   四. 编写Hello World 1. 配置pom

添加之后会下载依赖的包。

 

3、几种定时任务的实现方式:

1)Timer:直接参考:https://blog.csdn.net/wqh8522/article/details/79224290

2)Spring注解@Scheduled注解配置定时任务:

在pom中添加依赖:

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!--spring.factories不全报错 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-autoconfigure</artifactId><version>1.5.4.RELEASE</version>
</dependency>
</dependencies>

 

3)实例

ScheduledService.Java

package scheduled.test;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.boot.builder.SpringApplicationBuilder;
/** 主类*/
@SpringBootApplication
@EnableScheduling
public class ScheduledService
{public static void main(String[] args){SpringApplication.run(ScheduledService.class, args);//占用端口//new SpringApplicationBuilder().sources(Application.class).web(false).run(args);//不占用端口启动}
}

 

ScheduledTasks.java

package scheduled.test;import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;@Component
@Configuration      //1.主要用于标记配置类,兼备Component的效果。
@EnableScheduling   // 2.开启定时任务
public class ScheduledTasks {@Scheduled(cron = "0/5 * * * * *")public void scheduled(){System.out.println("111111111");//log.info("=====>>>>>使用cron  {}",System.currentTimeMillis());}@Scheduled(fixedRate = 7000)public void scheduled1() {System.out.println("22222222");//log.info("=====>>>>>使用fixedRate{}", System.currentTimeMillis());}@Scheduled(fixedDelay = 5000)public void scheduled2() {System.out.println("26666662");//log.info("=====>>>>>fixedDelay{}",System.currentTimeMillis());}
}

 

启动验证:主类中右键-run as-java application  就启动起来了

报错:如果端口冲突8080被占,可以通过@Configuration注解来完成修改

https://blog.csdn.net/wsh900221/article/details/80521313

不占用端口启动:https://www.cnblogs.com/wujf/p/9458742.html

 

参考:

https://www.cnblogs.com/zy-l/p/9178704.html

https://www.jianshu.com/p/b6809b5a0c26

 

spring boot自动配置spring-boot-autoconfigure

在使用spring-boot-starter-web时只需要在pom.xml配置文件内添加依赖就可以了。

自定义starter并且通过spring-boot-autoconfigure完成自动化配置。

SpringBoot自动配置原理:

https://www.cnblogs.com/leihuazhe/p/7743479.html

https://blog.csdn.net/weixin_34208283/article/details/88323605

打jar包之后java -jar执行报错:

报错问题No auto configuration classes found in META-INF/spring.factories. If you are using a custom pack原因spring.factories中没有自动配置的内容

https://blog.csdn.net/trisonlu123/article/details/80070596

pom.xml增加依赖:版本号要一致

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-autoconfigure</artifactId><version>1.5.4.RELEASE</version></dependency>
</dependencies>

https://segmentfault.com/a/1190000011433487

 

mvn打包可执行可依赖的jar包:https://blog.csdn.net/chenxy02/article/details/80189833  (pom.xml指定main方法) mvn install     mvn clean

 

这篇关于Eclipse+Maven搭建Springboot的Web工程和springboot注解实现定时任务、mvn打包可执行可依赖的jar包的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/844124

相关文章

springboot集成easypoi导出word换行处理过程

《springboot集成easypoi导出word换行处理过程》SpringBoot集成Easypoi导出Word时,换行符n失效显示为空格,解决方法包括生成段落或替换模板中n为回车,同时需确... 目录项目场景问题描述解决方案第一种:生成段落的方式第二种:替换模板的情况,换行符替换成回车总结项目场景s

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

SpringBoot中@Value注入静态变量方式

《SpringBoot中@Value注入静态变量方式》SpringBoot中静态变量无法直接用@Value注入,需通过setter方法,@Value(${})从属性文件获取值,@Value(#{})用... 目录项目场景解决方案注解说明1、@Value("${}")使用示例2、@Value("#{}"php

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

Python的Darts库实现时间序列预测

《Python的Darts库实现时间序列预测》Darts一个集统计、机器学习与深度学习模型于一体的Python时间序列预测库,本文主要介绍了Python的Darts库实现时间序列预测,感兴趣的可以了解... 目录目录一、什么是 Darts?二、安装与基本配置安装 Darts导入基础模块三、时间序列数据结构与

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——