理想情况下,它应该像一个命令列表,我想使用单个子进程调用来执行和执行所有这些命令。通过将所有命令存储为 shell 脚本并使用子进程调用该脚本,我能够做类似的事情,但我想要一个纯 python 解决方案。我将使用 shell=True 执行命令,是的,我理解风险。
我有一个由其他人编写的REST api,其中处理对特定url的请求的方法接受从路径参数填充的一堆参数.
@POST
@Path("/{classid}/{studentid}/details")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@SuppressWarnings("unchecked")
public Response processFile(@FormDataParam("sourceFile") InputStream aStream, @PathParam("classid") String classId, @PathParam("studentid") String studentId, @Context HttpServletRequest httpRequest) {
// Code to do stuff and return a response
}
Run Code Online (Sandbox Code Playgroud)
写这篇文章的人使用了DropWizard,我之前没有使用它的经验.我的任务是通过将studentId字段与db中的值进行比较来验证studentId字段.这将是非常简单的,但我被告知使用自定义验证器.我对编写注释很新,但经过多次挖掘写了这样的注释,
@Target(ElementType.PARAMETER)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Constraint(validatedBy = StudentIdValidator.StudentIdValidation.class)
public @interface StudentIdValidator {
String message() default "{Invalid Id}";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
class StudentIdValidation implements ConstraintValidator<StudentIdValidator, String> {
@Override
public void initialize(StudentIdValidator constraintAnnotation) {
System.out.println("Annotation initialize !!!!!!!!!");
}
@Override
public boolean isValid(String value, ConstraintValidatorContext context) …Run Code Online (Sandbox Code Playgroud)