我有一个ConstraintViolationException如下所示的处理程序类:
@Produces
@Singleton
@Requires(classes = {ConstraintViolationException.class, ExceptionHandler.class})
public class ConstraintsViolationsExceptionHandler
implements ExceptionHandler<ConstraintViolationException, HttpResponse> {
@Override
public HttpResponse
handle(HttpRequest request, ConstraintViolationException exception) {
return HttpResponse
.status(HttpStatus.FORBIDDEN)
.contentType(MediaType.APPLICATION_JSON)
.characterEncoding("UTF-8")
.body(new SignUpPhoneNumberErrorResponse<>(400,
"Wrong data used",
new ArrayList<>(exception.getConstraintViolations())));
}
}
Run Code Online (Sandbox Code Playgroud)
我的错误处理 POJO 在哪里SignUpPhoneNumberErrorResponse,它被序列化为 JSON 绝对没问题。
我的控制器看起来像这样:
@Controller(PhoneAuthAndLoginConstants.CONTROLLER_BASE_PATH)
@Validated
public class UserPhoneNumberRegistrationAndLoginController {
@Inject
MongoDbUserSignUpPhoneNumberDAO mongoDbUserSignUpPhoneNumberDAO;
@Post(uri = PhoneAuthAndLoginConstants.CONTROLLER_SIGN_UP_PATH,
consumes = MediaType.APPLICATION_JSON,
produces = MediaType.APPLICATION_JSON)
public Single<ResponseDataEncapsulate>
signUpForPhoneVerification(@Valid @Body UserSignUpPhoneNumberEntity phoneNumber) {
return mongoDbUserSignUpPhoneNumberDAO.sendVerification(phoneNumber);
}
@Post(uri = PhoneAuthAndLoginConstants.CONTROLLER_SIGN_UP_PATH
+
PhoneAuthAndLoginConstants.CONTROLLER_SIGN_UP_VERIFICATION_CODE_PARAM,
consumes …Run Code Online (Sandbox Code Playgroud) 我想在表中创建触发器。我使用Data Grip作为连接到数据库的接口。我在Google周围搜索,文档说它有一个类似“ Generate”的下拉列表,其中包含诸如功能和过程模板之类的东西。可用于创建。但是我没有这样的下拉列表,即使在右键单击表格后转到新选项,我也无法获得函数或过程的选项。我正在使用DataGrip 2017.1.2和MySQL数据源。
我正在尝试获取文本文件的内容,删除除字母之外的所有内容,然后将其转换为Strings 数组,以进行单词的单独处理。我这样做是为了获取文本文件:
String temp1= IOUtils.toString(FIS,"UTF-8");
String temp2=temp1.replaceAll("[,.!;:\\r\\n]"," ");
Run Code Online (Sandbox Code Playgroud)
然后将字符串标记化,我这样做:
String[] tempStringArray = temp2.split(" ");
Run Code Online (Sandbox Code Playgroud)
问题在于创建数组时String,各种索引处都有空白,这些空白String位于换行位置,多个空格,文本文件中的标点符号等。
我希望String从我的String数组中删除这些空的s,或者以某种无法进入String数组的方式删除它们。
如何才能做到这一点?
我写了一个程序,得到所有字节来自InputStream于Java的9与
InputStream.readAllBytes()
Run Code Online (Sandbox Code Playgroud)
现在,我想将其导出到Java 1.8 及以下版本。有等价的功能吗?找不到一个。
对于某些方法,我会收到警告。这就是扩展时所说的。以下代码(mkDirs())给出警告
if (!myDir.exists()) {
myDir.mkdirs();
}
Run Code Online (Sandbox Code Playgroud)
报告对特定方法的所有调用,其中调用的结果被忽略。检查检查设置中指定的两种方法以及用org.jetbrains.annotations.Contract(pure = true)注释的方法。对于许多方法,完全忽略结果是合理的,但是对于某些方法,几乎可以肯定是一个错误。可能忽略错误结果的方法示例包括java.io.inputStream.read()(返回实际读取的字节数),java.lang.String或java.math.BigInteger上的任何方法,因为所有这些方法都是无副作用的,因此如果被忽略,则毫无意义。
这是什么意思?如何避免呢?应该如何解决?
我试图在我的网络服务中反序列化一个 post 请求,但我最终得到一个 HTTP 500 说javax.json.bind.JsonbException: Error deserialize JSON value into type: class [C. 我正在使用 Jackson 来处理 JSON 内容。
这是我从 Postman 发送的 JSON 字符串:
{"firstName":"FirstName","middleName":"middleName","lastName":"LastName","name":"SomeName","password":"$0meR@nd0m","creationTimeStamp":1533950475466}
Run Code Online (Sandbox Code Playgroud)
这是我的 POJO :
@XmlRootElement
public class UserFormInterceptor {
@Pattern(regexp = "^[\\S][\\p{L} .'-]+$") @Size(min = 2, max = 64) @NotEmpty @NotNull
private String firstName;
@Pattern(regexp = "^[\\S][\\p{L} .'-]+$") @Size(min = 2, max = 64)
private String middleName;
@Pattern(regexp = "^[\\S][\\p{L} .'-]+$") @Size(min = 2, max = 64) @NotEmpty @NotNull
private String lastName;
@Pattern(regexp = …Run Code Online (Sandbox Code Playgroud) 我有一个生产应用程序,我有一些崩溃报告堆栈跟踪,它们来自以前的发布版本。我不知道我是否有ProGuard以前构建版本的映射文件。我有当前的。据我所知,不同版本的映射文件是不同的。
我的问题是:
如何获取以前构建的映射文件?
java ×5
android ×2
datagrip ×1
inputstream ×1
jackson ×1
java-8 ×1
jersey-2.0 ×1
json ×1
micronaut ×1
mysql ×1
proguard ×1
regex ×1
stack-trace ×1
string ×1
triggers ×1