application-dev.yml
spring: application: name: cleanHDFSFilesJob-dev hdfs: clean: hdfsCleanStrategies: - keepDays: 30 pathPattern: /strategy/hello1/(\d{12}) - keepDays: 30 pathPattern: /strategy/hello2/(\d{12}) - keepDays: 30 pathPattern: /strategy/hello3/(\d{12}) - keepDays: 30 pathPattern: /strategy/hello4/(\d{12})
public class HDFSCleanStrategy { private Integer keepDays; private String pathPattern; /** * */ public HDFSCleanStrategy() { super(); } /** * @param keepDays * @param pathPattern */ public HDFSCleanStrategy(Integer keepDays, String pathPattern) { super(); this.keepDays = keepDays; this.pathPattern = pathPattern; } /* * (non-Javadoc) * @see java.lang.Object#equals(java.lang.Object) */ @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } HDFSCleanStrategy other = (HDFSCleanStrategy) obj; if (keepDays == null) { if (other.keepDays != null) { return false; } } else if (!keepDays.equals(other.keepDays)) { return false; } if (pathPattern == null) { if (other.pathPattern != null) { return false; } } else if (!pathPattern.equals(other.pathPattern)) { return false; } return true; } /** * @return the keepDays */ public Integer getKeepDays() { return keepDays; } /** * @return the pathPattern */ public String getPathPattern() { return pathPattern; } /* * (non-Javadoc) * @see java.lang.Object#hashCode() */ @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((keepDays == null) ? 0 : keepDays.hashCode()); result = prime * result + ((pathPattern == null) ? 0 : pathPattern.hashCode()); return result; } /** * @param keepDays * the keepDays to set */ public void setKeepDays(Integer keepDays) { this.keepDays = keepDays; } /** * @param pathPattern * the pathPattern to set */ public void setPathPattern(String pathPattern) { this.pathPattern = pathPattern; } /* * (non-Javadoc) * @see java.lang.Object#toString() */ @Override public String toString() { return CommonUtils.toJSONString(this); } }
@Component @ConfigurationProperties(prefix = "hdfs.clean") public class HDFSCleanStrategyConfig { private List<HDFSCleanStrategy> hdfsCleanStrategies; /** * @return the hdfsCleanStrategies */ public List<HDFSCleanStrategy> getHdfsCleanStrategies() { return hdfsCleanStrategies; } /** * @param hdfsCleanStrategies * the hdfsCleanStrategies to set */ public void setHdfsCleanStrategies(List<HDFSCleanStrategy> hdfsCleanStrategies) { this.hdfsCleanStrategies = hdfsCleanStrategies; } /* * (non-Javadoc) * @see java.lang.Object#toString() */ @Override public String toString() { return CommonUtils.toJSONString(this); } }
@Service public class CleanHDFSServcieImpl implements CleanHDFSServcie { private static final Logger LOGGER = LoggerFactory.getLogger(CleanHDFSServcieImpl.class); @Autowired private HDFSCleanStrategyConfig hdfsCleanStrategyConfig; /* * (non-Javadoc) * */ @Override @PostConstruct public void start() { // TODO Auto-generated method stub LOGGER.info("start to cleanHDFS:{}", hdfsCleanStrategyConfig); } }
相关推荐
值得注意的是,YML文件不支持使用tab进行缩进,而是使用空格。同时,YML允许使用"-小写字母"或"_小写字母"来代替"大写字母",例如`userName`、`user-name`和`user_name`都是等价的。配置项的格式通常为`key: value`...
yml文件中的配置信息可以通过SpringBoot的@ConfigurationProperties注解来读取,并将其映射到JavaBean中。 @ConfigurationProperties注解的作用是将配置文件中的配置信息映射到JavaBean中的属性中。例如,以下是一...
- `src/main/resources`:配置文件(如application.properties或application.yml)、静态资源(如CSS、JavaScript)和模板文件(JSP)。 - `pom.xml`或`build.gradle`:构建文件,定义项目依赖。 通过上述知识点,...
3. **@ConfigurationProperties**:这是SpringBoot的一个强大的特性,允许将一组相关的配置属性绑定到一个JavaBean上,使得配置更易于管理和复用。通过`@ConfigurationProperties`注解,可以将属性值自动映射到对象...
1. **配置文件结构**:SpringBoot默认使用`application.properties`或`application.yml`作为主要配置文件。为了实现多环境配置,我们可以创建针对不同环境的配置文件,例如`application-dev.properties`(开发环境)...
`Student_test`可能是Java类的名称,代表一个学生实体类,它可能使用了JavaBean规范,并且与数据库中的学生表相对应。Spring Data JPA会根据这个实体类自动生成Repository接口,你可以通过这个接口来进行数据库操作...
2. `application.properties`或`application.yml`:SpringBoot的应用配置文件,用于设置应用的环境变量、数据库连接信息、服务器端口等。 3. `pom.xml`:Maven的项目管理文件,定义了项目的依赖关系,如SpringBoot...
3. **定义消息**:创建消息类,通常使用JavaBean表示,例如: ```java public class MyMessage { private String message; // getters and setters } ``` 4. **创建消息监听器**:创建一个实现了`RabbitListener`...
10. **日志管理**:SpringBoot默认使用Logback或Log4j2进行日志记录,可以在配置文件中调整日志级别。 11. **Actuator**:SpringBoot Actuator提供了一组端点,用于监控和管理应用,例如健康检查、应用信息、审计...
2. **配置文件**:application.properties或application.yml,用于配置SpringBoot的各种特性,如数据库连接、服务器端口等。 3. **模型(Model)**:定义业务对象,如商品、订单、用户等,通常使用JavaBean模式。 4....
首先,MyBatis Generator Plugin是MBG的扩展,它可以直接集成到SpringBoot项目中,通过配置文件定义数据库连接信息、生成策略等,实现一键式代码生成。在项目中引入MBG依赖后,需要在配置文件(如application.yml或...
6. **配置文件**:包括SpringBoot的application.properties或.yml,数据库连接配置,以及其他服务的配置。 7. **启动类**:应用的入口,启动SpringBoot应用。 此外,项目可能还包括测试代码、日志记录、异常处理、...
2. **配置文件**:在`application.properties`或`application.yml`中配置Freemarker的相关属性,例如模板路径、编码等。 ```properties spring.freemarker.template-loader-path=classpath:/templates/ spring....
接着,我们需要在 `application.yml` 配置文件中设置 MongoDB 的连接信息,例如: ```yaml spring: data: mongodb: uri: "mongodb://localhost:27017/test" ``` 这里的 `uri` 指定了连接到本地 MongoDB 服务器...
为了便于学习和调试,源码应该包含了配置文件(如application.properties或yml)、Maven或Gradle构建文件、数据库脚本等。开发者可以根据需求修改配置,如数据库连接信息、服务器端口等。同时,学习者应具备一定的...
然后,在application.yml配置文件中配置Thymeleaf的基本参数,例如关闭页面缓存、模板编码、页面映射路径、模板模式等。 在Controller中使用@RequestMapping注解来映射请求路径,并返回视图页面。例如,创建...
2. 配置文件:如application.properties或application.yml,用于设置SpringBoot的各种属性,如数据库连接、服务器端口等。 3. 控制器(Controller):处理HTTP请求,实现业务逻辑的入口,通常使用@RestController或...
SpringBoot提供了一种新的配置方式,如使用application.properties或application.yml文件来读取配置属性。SpringBoot的配置文件和配置中心是核心概念,其中包含了各种配置信息和环境变量。SpringBoot也支持事务管理...
2. **配置文件** (如:`application.properties`或`application.yml`) - 这里定义了Spring Boot应用的配置,包括服务器端口、数据库连接信息、日志级别等。 3. **Maven或Gradle构建文件** (如:`pom.xml`或`build....
抛弃传统spring xml的配置方式,利用springboot + javabean方式配置spring,极大简化了pom.xml配置和spring配置. Guns项目代码简洁,注释丰富,上手容易,同时Guns包含许多基础模块(用户管理,角色管理,部门管理,字典管理...