小编Yah*_*hor的帖子

如何在Java 8编译时确保方法签名"实现"功能接口

Java 8中是否存在implements方法关键字的任何模拟?

假设我有一个功能界面:

@FunctionalInterface
interface LongHasher {
    int hash(long x);
}
Run Code Online (Sandbox Code Playgroud)

一个包含3个静态方法的库"实现"这个功能接口:

class LongHashes {
    static int xorHash(long x) {
        return (int)(x ^ (x >>> 32));
    }
    static int continuingHash(long x) {
        return (int)(x + (x >>> 32));
    }
    static int randomHash(long x) {
         return xorHash(x * 0x5DEECE66DL + 0xBL);
    }
}
Run Code Online (Sandbox Code Playgroud)

在将来,我希望能够互换地使用对这3种方法的任何引用作为参数.例如:

static LongHashMap createHashMap(LongHasher hasher) { ... }
...
public static void main(String[] args) {
    LongHashMap map = createHashMap(LongHashes::randomHash);
    ...
}
Run Code Online (Sandbox Code Playgroud)

我如何能确保在编译时间LongHashes::xorHash, …

java java-8 functional-interface

10
推荐指数
2
解决办法
1044
查看次数

覆盖跨域请求的XMLHttpRequest

我想知道是否有一个JavaScript库,它覆盖XMLHttpRequest并允许透明地处理所有跨域请求,并通过我的同源服务器端代理无缝转发它们.

我想要的是有一个通用的解决方案,可以与任何 JavaScript库一起使用来制作跨域请求(例如,使用跨域jQuery.ajax()).

使用此类库存在任何缺点(安全问题,HTTPS访问等)吗?

更新:

如果这样的库已经由某人创建,那么我只是不想重新发明轮子并再次处理所有角落情况.

javascript cross-domain

2
推荐指数
1
解决办法
1053
查看次数

JSF 2.0中新标签的完整列表

在哪里可以找到JSF 2.0中引入的所有标签的完整列表?是的,我可以打开1.2和2.0引用并逐个比较标签,但也许有人之前做过它?

我知道该清单包括:

h:body
h:button
h:head
h:link
h:outputScript
h:outputStylesheet
Run Code Online (Sandbox Code Playgroud)

别的什么?

更新:除了上面提到的JSF HTML标签之外,该列表还包括(根据JSF 2.0 Refcard):

核心标签:

f:ajax
f:event
f:validateBean
f:validateRequired
f:viewParam
f:metadata
Run Code Online (Sandbox Code Playgroud)

Facelets标签:

ui:component
ui:composition
ui:debug
ui:decorate
ui:define
ui:fragment
ui:include
ui:insert
ui:param
ui:remove
ui:repeat
Run Code Online (Sandbox Code Playgroud)

java jsf-2

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