我需要在每个月的最后一天开始工作.我尝试了以下cron表达式:
<property name="cronExpression" value="0 0 3 L * * *" />
Run Code Online (Sandbox Code Playgroud)
但得到了这个错误:
Caused by: java.lang.UnsupportedOperationException: Support for specifying both a day-of-week AND a day-of-month parameter is not implemented.
Run Code Online (Sandbox Code Playgroud)
它不喜欢它L
,但没有使用它,我怎么能在这个月的最后一天运行?
在我的应用程序中,我将数字处理为BigDecimal并将它们存储为NUMBER(15,5).现在我需要正确检查Java是否BigDecimal值适合列,以便我可以生成正确的错误消息而不执行SQL,捕获异常并验证供应商错误代码.我的数据库是Oracle 10.3,这样的错误导致错误1438.
经过一些谷歌搜索,我发现没有这样的代码,所以我想出了自己的.但是我对这段代码真的不满意......很简单,但同时又简单到足以怀疑它的正确性.我用很多值,随机和边界测试它,它似乎工作.但是由于我对数字非常不满意,我想要一些更强大且经过良好测试的代码.
//no constants for easier reading
public boolean testBigDecimal(BigDecimal value) {
if (value.scale() > 5)
return false;
else if (value.precision() - value.scale() > 15 - 5)
return false;
else
return true;
}
Run Code Online (Sandbox Code Playgroud)
编辑:最近的测试没有超出规模的数字的例外,只是默默地舍入,我不知道没有和我做这些第一次测试之间有什么不同.这样的舍入是不可接受的,因为应用程序是财务的,并且任何舍入/截断必须是显式的(通过BigDecimal方法).除了例外之外,这种测试方法必须确保数字对于期望的精度而言不是太大,即使是非有效数字.对于迟到的澄清感到抱歉.
谢谢你的时间.
我仍然对这个问题感到好奇.我的代码仍在运行,我没有得到正确或失败情况的一些"证据",或者这种测试的一些标准代码.
所以,我正在给它一个赏金,希望得到任何这些.
我有一个使用javax.validation
注释的 Spring Boot 应用程序,我试图返回指向违规字段的友好 JSON 错误消息,但从可用的“Java 对象”路径转换为 JSONPath 或 JSON 指针是我没有找到的办法。
SSCO示例:
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import javax.validation.Valid;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;
import javax.validation.constraints.Min;
import java.util.List;
public class Test {
public static void main(String[] args) throws JsonProcessingException {
ObjectMapper mapper = new ObjectMapper();
mapper.setPropertyNamingStrategy(PropertyNamingStrategy.SNAKE_CASE);
Data data = new Data();
System.out.println("Serialized: " + mapper.writerWithDefaultPrettyPrinter().writeValueAsString(data));
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
validator.validate(data).forEach(violation -> {
System.out.println("Path: " + violation.getPropertyPath());
});
}
public static …
Run Code Online (Sandbox Code Playgroud) 我基本上是在尝试进行表单验证.Evertyhing工作正常.除了一件事.首先,这是我的代码:
$('#submit_btn').click(function(){
$("input:not([type=radio],[type=checkbox])").each(function() {
if ($(this).val() == ""){
$('#'+$(this).attr("name")+'_error').show("");
}
else{
$('#'+$(this).attr("name")+'_error').hide("normal");
}
});
if(!($("div[id$=error]").is(":visible")))
alert("a");
});
Run Code Online (Sandbox Code Playgroud)
单击提交按钮后,它会检查不是单选按钮或复选框的输入.如果输入为空,则显示错误.
如果键入了某些输入,则会隐藏错误.
最后,我检查是否有任何错误消息,如果没有,我将提交表格.
我的问题是,我用一个带有.hide("normal")的小动画隐藏错误信息.所以我相信在躲藏期间的最后一个错误消息的过程中,我的最后一个if语句执行它认为有一个明显的错误信息(但是,它是隐藏的进程)
隐藏进程完成后如何执行if语句?
在我的情况下,当没有剩余错误消息时,我会在另一次点击提交按钮后收到警报.
我希望我清楚我的问题.如果不是,我会尝试重写它.
谢谢!
在我的公司,我们使用 JMeter 作为发布管道的一部分来运行各种测试(冒烟、负载等)。现在我正在创建更复杂的测试场景,我使用了很多 BeanShell,我担心 JMeter 似乎对失败的 BeanShell 脚本完全没问题,我想找到一种失败的方法当 BeanShell 失败时进行测试。
如果存在语法错误,脚本将失败,并向日志文件报告,但它不会阻止整个测试套件成功,只要缺少的 BeanShell 执行不会触发任何其他失败。示例(点击查看全尺寸图片):
如上所示,我有一个带有 BeanShell 后处理器的采样器,其中包含一个语法错误。执行时记录错误并增加顶部的错误计数器,仅此而已。如果用户没有注意到这一点,错误就会转移到我们的发布过程中,从而降低我们的测试可靠性。如果我使用命令行运行 JMeter,结果如下:
Writing log file to: /home/user/jmeter/jmeter.log
Creating summariser <summary>
Created the tree successfully using Bad BeanShell Test.jmx
Starting the test @ Fri Feb 24 12:23:11 CET 2017 (1487935391815)
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
summary = 2 in 00:00:01 = 1.9/s Avg: 382 Min: 29 Max: 736 Err: 0 (0.00%)
Tidying up ... @ Fri Feb 24 12:23:13 CET 2017 (1487935393168)
... …
Run Code Online (Sandbox Code Playgroud)