小编cou*_*ech的帖子

限制JPQL中的结果数量

如何限制从数据库中检索的结果数量?

select e from Entity e /* I need only 10 results for instance */
Run Code Online (Sandbox Code Playgroud)

java jpa jpql

51
推荐指数
2
解决办法
5万
查看次数

maven :(使用-source 5或更高版本来启用静态导入声明)

我如何使用源5?我试过了

mvn -source 5 test
Run Code Online (Sandbox Code Playgroud)

但它不起作用:-)

当我用javac编译文件时,一切正常.

java maven-2

26
推荐指数
1
解决办法
9222
查看次数

Scala强调最小功能

让我们为这个问题创建一个值:

val a = 1 :: Nil
Run Code Online (Sandbox Code Playgroud)

现在,我可以证明匿名函数可以用这样的简写形式编写:

a.map(_*2)
Run Code Online (Sandbox Code Playgroud)

是否有可能写出这个功能的简写?:

a.map((x) => x)
Run Code Online (Sandbox Code Playgroud)

我的解决方案不起作用:

a.map(_)
Run Code Online (Sandbox Code Playgroud)

scala anonymous-function

23
推荐指数
3
解决办法
5756
查看次数

jsf一次验证两个字段

我可以用一个验证器验证两个相互依赖的字段吗?

     <h:form>
            <h:inputText value="#{logRegBean.person.name}" >
                <f:validator validatorId="loginCorrectValidator" />
            </h:inputText>
            <h:inputSecret value="#{logRegBean.person.password}" />
            <h:commandButton action="#{logRegBean.login}" />
        </h:form>
Run Code Online (Sandbox Code Playgroud)

我想在数据库中搜索用户,如果有用户,我将测试密码(在db和输入中)是否匹配.但是如何在一个验证器中访问密码字段呢?我试图通过评估其他字段中的int值createValueExpression(),但看起来我无法在那段时间访问该值,因为我总是得到空字符串.

validation jsf

18
推荐指数
2
解决办法
3万
查看次数

什么用于属性测试

我想知道什么是物业测试目标,它的甜点是什么,应该在哪里使用.让'有一个我想测试的示例函数:

f :: [Integer] -> [Integer]
Run Code Online (Sandbox Code Playgroud)

这个函数f采用一个数字列表,并将奇数数字平方并滤除偶数.我可以陈述一些关于函数的属性,比如

  1. 给出偶数列表,返回空列表.
  2. 给定奇数列表,结果列表将具有与输入相同的大小.
  3. 鉴于我有偶数列表和奇数列表,当我加入它们时,随机传递并传递给函数,结果的长度将是奇数列表的长度.
  4. 鉴于我提供了一个正奇数列表,那么同一索引的结果列表中的每个元素都将大于原始列表中的元素
  5. 鉴于我提供奇数和偶数的列表,加入并随机播放它们,然后我将得到一个列表,其中每个数字都是奇数
  6. 等等

没有属性测试,该函数适用于最简单的情况,例如我可以做一个简单的情况,如果我实现f错误将传递这些属性:

f = fmap (+2) . filter odd
Run Code Online (Sandbox Code Playgroud)

所以,如果我想介绍一些简单的情况,看起来我需要在属性规范中重复算法的基本部分,或者我需要使用基于值的测试.重复算法的第一个选项可能是有用的,如果我打算改进算法,如果我计划改变它的实现,例如速度.通过这种方式,我有一个参考实现,我可以用来再次测试.

如果我想检查一下,算法不会因某些微不足道的情况而失败,我不想在规范中重复算法,看起来我需要一些单元测试.我会写例如这些检查:

f ([2,5]) == [25]
f (-8,-3,11,1) == [9,121,1]
Run Code Online (Sandbox Code Playgroud)

现在我对算法有了更多的信心.

我的问题是,基于属性的测试是否意味着要取代单元测试,还是它是互补的?是否有一些一般性的想法,如何编写属性,所以它们是有用的还是完全取决于对函数逻辑的理解?我的意思是,可以说,以某种方式写出属性特别有益吗?

此外,是否应该努力使属性测试算法的每个部分?我可以把算法放在一边,然后在其他地方进行测试,让属性只测试过滤部分,它看起来很好,它可以很好地覆盖它.

f :: (Integer -> Integer) -> [Integer] -> [Integer]
f g = fmap g . filter odd
Run Code Online (Sandbox Code Playgroud)

然后我可以通过单独Prelude.id测试来测试g其他地方.

haskell unit-testing quickcheck property-based-testing

17
推荐指数
1
解决办法
309
查看次数

为什么java注释?

我想问为什么java注释使用了这么多...我知道他们替换了例如jpa中的xml配置,但为什么这种配置会被使用呢?考虑一下这段代码:

@Entity 
class Ent{
   // some fields
}
//... somewhere in the other file far far away
class NonEnt{
   // whatever here
}
Run Code Online (Sandbox Code Playgroud)现在,当我尝试将其置于持久化上下文中时,使用EntityManager's persist方法,我会在尝试持久化NonEnt实例时遇到运行时错误(更好的是获得编译错误).对我来说有明显的解决方案,强制实体实现一些无方法接口,而不是使用@Annotations.但这在框架设计师中并不流行,这个解决方案的缺点是什么?
谢谢回答...

java annotations marker-interfaces

15
推荐指数
2
解决办法
5052
查看次数

用scalaz'|>切换函数和对象

scalaz |>想在切换功能和对象时使用操作符,这样可以获得更多的可读性.我来介绍一个模型函数:

def length2(x:String) = x.length * 2
Run Code Online (Sandbox Code Playgroud) 现在,我可以用两种方式编写它:
"aoeu" |> length2
length2("aoeu")
Run Code Online (Sandbox Code Playgroud) 但是,如果我将此函数定义为更通用,它将停止工作.
def length2(x:SeqLike[_,_]) = x.length * 2
length2("aoeu") // ok
"aoeu" |> length2 // doesn't work
Run Code Online (Sandbox Code Playgroud) 为什么编译器不理解这个?肯定有一种隐含的转换,从String某种类混合到特质中SeqLike.

scala scalaz

13
推荐指数
1
解决办法
1713
查看次数

IntelliJ IDEA代码重新格式化选项

当我按Ctrl+ Alt+时L,IDEA删除未使用的导入.我想关闭此功能,将未使用的导入保留在那里.我在哪里可以影响这个设置?

code-formatting intellij-idea

13
推荐指数
2
解决办法
4297
查看次数

j在不同情况下使用相同的异常

我正在为一个解析String的构造函数编写一个jUnit测试,然后检查很多东西.当存在错误数据时,对于每个事物,都会抛出一些带有不同消息的IllegalArgumentException.所以我想为它编写测试,但是我如何识别抛出的错误?这是我该怎么做的:

@Test(expected=IllegalArgumentException.class)
public void testRodneCisloRok(){
    new RodneCislo("891415",dopocitej("891415"));
}
Run Code Online (Sandbox Code Playgroud)

这就是我想要的方式,但我不知道是否有可能以某种方式编写它:

@Test(expected=IllegalArgumentException.class("error1"))
public void testRodneCisloRok(){
    new RodneCislo("891415",dopocitej("891415"));
}
Run Code Online (Sandbox Code Playgroud)

java junit unit-testing

11
推荐指数
2
解决办法
4699
查看次数

使用@Valid进行弹簧验证

我正在验证传入属性,但验证程序甚至可以捕获未注释的其他页面 @Valid

 @RequestMapping(value = "/showMatches.spr", method = RequestMethod.GET)
    public ModelAndView showMatchPage(@ModelAttribute IdCommand idCommand) 
//etc
Run Code Online (Sandbox Code Playgroud)

当我访问页面时,/showMatches.spr我收到错误org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalStateException: Invalid target for Validator [cz.domain.controller.Controllers$1@4c25d793]: cz.domain.controller.IdCommand@486c1af3,
验证器不接受它,但我不想让它验证!通过此验证器:

 protected void initBinder(WebDataBinder binder) {
        binder.setValidator(new Validator() {
  // etc.
}
Run Code Online (Sandbox Code Playgroud)

validation spring spring-mvc

11
推荐指数
1
解决办法
1万
查看次数