10 changed files with 141 additions and 6 deletions
@ -0,0 +1,15 @@ |
|||
//package com.epmet.config;
|
|||
//
|
|||
//import lombok.Data;
|
|||
//import org.springframework.boot.context.properties.ConfigurationProperties;
|
|||
//
|
|||
//@ConfigurationProperties(prefix = "spring.datasource.druid")
|
|||
//@Data
|
|||
//public class DatabaseProperties {
|
|||
//
|
|||
// private String driverClassName;
|
|||
// private String url;
|
|||
// private String username;
|
|||
// private String password;
|
|||
//
|
|||
//}
|
@ -0,0 +1,29 @@ |
|||
//package com.epmet.config;
|
|||
//
|
|||
//import org.flywaydb.core.Flyway;
|
|||
//import org.springframework.beans.factory.annotation.Autowired;
|
|||
//
|
|||
//import javax.annotation.PostConstruct;
|
|||
//
|
|||
///**
|
|||
// * 数据库迁移配置
|
|||
// */
|
|||
//@Configuration
|
|||
//public class DbMigrationConfig {
|
|||
//
|
|||
// @Autowired
|
|||
// private DatabaseProperties databaseProperties;
|
|||
//
|
|||
// @PostConstruct
|
|||
// public void migrate() {
|
|||
// Flyway flyway = Flyway.configure().dataSource(
|
|||
// databaseProperties.getUrl(),
|
|||
// databaseProperties.getUsername(),
|
|||
// databaseProperties.getPassword())
|
|||
// .baselineOnMigrate(true)
|
|||
// .load();
|
|||
//
|
|||
// flyway.migrate();
|
|||
// }
|
|||
//
|
|||
//}
|
@ -0,0 +1,64 @@ |
|||
package com.epmet.controller; |
|||
|
|||
import com.epmet.commons.tools.utils.Result; |
|||
import com.epmet.commons.tools.validator.ValidatorUtils; |
|||
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; |
|||
import lombok.Data; |
|||
import org.springframework.web.bind.annotation.PostMapping; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
@RestController |
|||
@RequestMapping("demo") |
|||
public class DemoController { |
|||
|
|||
@PostMapping("adduser") |
|||
public Result addUser(@RequestBody UserFormDTO form) { |
|||
ValidatorUtils.validateEntity(form, UserFormDTO.AddUserShowGroup.class, UserFormDTO.AddUserInternalGroup.class); |
|||
System.out.println(form); |
|||
return new Result(); |
|||
} |
|||
|
|||
} |
|||
|
|||
@Data |
|||
class UserFormDTO { |
|||
//>>>>>>>>>>>>>>>>>校验分组开始>>>>>>>>>>>>>>>>>>>>>
|
|||
/** |
|||
* 添加用户操作的内部异常分组 |
|||
* 出现错误会提示给前端7000错误码,返回信息为:服务器开小差... |
|||
*/ |
|||
public interface AddUserInternalGroup {} |
|||
|
|||
/** |
|||
* 添加用户操作的用户可见异常分组 |
|||
* 该分组用于校验需要返回给前端错误信息提示的列,需要继承CustomerClientShowGroup |
|||
* 返回错误码为8999,提示信息为DTO中具体的列的校验注解message的内容 |
|||
*/ |
|||
public interface AddUserShowGroup extends CustomerClientShowGroup {} |
|||
|
|||
// <<<<<<<<<<<<<<<<<<<校验分组结束<<<<<<<<<<<<<<<<<<<<<<<<
|
|||
|
|||
/** |
|||
* 该字段在查询用户和添加用户的时候都要校验,所以在groups中会添加2个分组,校验器会优先校验继承了CustomerClientShowGroup |
|||
* 的分组 |
|||
* 1.该分组校验出错,直接将信息返回客户端,(多个字段有错误,多个字段的错误信息 |
|||
* 拼接起来,逗号分隔,详见ValidatorUtils#validadtorEntity()方法) |
|||
* 2.该分组校验成功,则继续往下,校验内部错误,若出现内部错误,则返回7000,服务器开小差... |
|||
*/ |
|||
@NotBlank(message = "请输入姓名信息", groups = { AddUserInternalGroup.class, AddUserShowGroup.class }) |
|||
private String name; |
|||
|
|||
/** |
|||
* 用户别名,只在内部传输,因此它所属的分组不能继承CustomerClientShowGroup |
|||
*/ |
|||
@NotBlank(message = "用户别名不能为空", groups = { AddUserInternalGroup.class }) |
|||
private String alias; |
|||
|
|||
@NotBlank(message = "请输入地址信息", groups = { AddUserShowGroup.class }) |
|||
private String address; |
|||
|
|||
} |
@ -0,0 +1,4 @@ |
|||
-- CREATE TABLE epmet_gov_access.device_t ( |
|||
-- device_id bigint(11) primary KEY auto_increment, |
|||
-- device_name varchar(20) NOT NULL |
|||
-- ) |
Loading…
Reference in new issue