库在Java Web App中集成Google的OAuth / OpenID混合?

我正在构建一个需要访问用户的Google日历数据的Java Web应用程序 – 因此我认为OAuth / OpenID混合是最好的方法。 什么是最好的库来处理这项工作 – 并减少我的代码量? 我尝试了openid4java和Spring Security OpenID (两者都不支持混合)以及dyuproject (无法将其集成)。 PS:GAE不是一种选择 有任何想法吗?

spring-data-rest发布的自定义jpa存储库方法

我已经在jpa存储库中添加了一个自定义方法,详见http://docs.spring.io/spring-data/data-jpa/docs/1.0.x/reference/html/#repositories.custom-implementations 据我所知,当我使用spring-data-rest时,这个方法不会暴露。 有没有什么办法可以将它作为spring-data-rest生成的REST API的一部分发布(不用自己创建Spring MVC Controller)?

Linux全屏幕Java – 如何覆盖任务栏?

我在“openSUSE 11.4(x86_64)”上以全屏模式运行Java应用程序时遇到问题。 我使用的是Java 1.6.0_26-b03。 我尝试运行两个全屏应用程序示例: Oracle站点示例: 显示模式测试 。 从Codealchemists下载的JDarkRoom.jar(简单文本编辑器)。 在这两种情况下,我都可以通过应用程序看到一个Linux任务栏。 它必须是系统设置/配置的东西?

Java – 在JPanel中设置不透明度

假设我想让JPanel%20的不透明度可见? 我不是指setOpaque(绘制或不绘制)或setVisible(显示或隐藏)……我的意思是让它透视JPanel ..你知道吗? 这可能吗?

连接运算符(+)与concat()

对于字符串连接,我们可以使用concat()或concat运算符(+) 。 我尝试了以下性能测试,发现concat()更快,并且是一种内存有效的字符串连接方式。 字符串连接比较100,000次 : String str = null; //————Using Concatenation operator————- long time1 = System.currentTimeMillis(); long freeMemory1 = Runtime.getRuntime().freeMemory(); for(int i=0; i<100000; i++){ str = "Hi"; str = str+" Bye"; } long time2 = System.currentTimeMillis(); long freeMemory2 = Runtime.getRuntime().freeMemory(); long timetaken1 = time2-time1; long memoryTaken1 = freeMemory1 – freeMemory2; System.out.println("Concat operator :" + "Time […]

Spring Data JPA:查询ManyToMany

我有实体User和Test @Entity public class User { private Long id; private String userName; } @Entity public class Test { private Long id; @ManyToMany private Set users; } 我可以通过用户实体获得所有测试: public interface TestRepository extends JpaRepository { List findAllByUsers(User user); } 但是我可以使用哪个查询来查找userName所有测试?

当我能够使用setter方法更改属性值时,封装的用途是什么?

我尝试了很多次,但我没理解这一点。 封装是一种将类中的字段设为私有并通过公共方法提供对字段的访问的技术。 如果某个字段被声明为私有,则该类之外的任何人都无法访问该字段,从而将该字段隐藏在该类中。 我们如何通过setter方法更改字段的值? 我们如何防止直接访问这些字段? 封装的真正用途是什么?

如何用mockito模拟一个构建器

我有一个建设者: class Builder{ private String name; private String address; public Builder setName(String name){ this.name = name; return this; } public Builder setAddress(String address){ this.address = address; return this; } } 在mockito中模拟构建器会使每个方法都为null。 因此,有一种简单的方法可以让构建器在每次函数调用时返回自己,而不使用when().thenReturn每个函数本身。

Java Collection在满磁盘时会分页到磁盘?

一位同事提到他听说过一个轻量级的集合,当它的内容太满时会自动翻页到磁盘 – 但是他记不住这个名字了。 我想它看起来像这样: PagingCollection pagingCollection = new PagingArrayList(); pagingCollection.setMaxSizeInMemory(500); for (int x = 0; x < 1000; x++) { pagingcollection.add("x="+x); } 然后将x = 0推到x = 500到磁盘。 关键是能够迭代它而不将整个内容加载到内存中。 这适用于内存容量较小的胖客户端。 有谁知道它(或类似的东西)?

使用long将指针从JNI传递到Java

我正在尝试将结构作为指针从JNI传递给Java,以便稍后可以将其从Java传递回JNI。 我已经读过这个post: 通过JNI传递C和Java之间的指针 ,但是我没有成功。 我有一个非常复杂的结构: struct myStruct_s myStruct; 从Java,我调用一个JNI函数来初始化结构并返回一个long(指向结构的指针): JNIEXPORT jlong JNICALL Java_example_ExampleJNI_getStruct(JNIEnv *jenv, jclass jcls) { struct myStruct_s mystruct; long *lp = (long*)&myStruct; return lp; } 然后我用一个长的参数调用一个Java方法。 在JNI中,我希望能够使用之前创建的strcuture。 我喜欢这个: JNIEEXPORT jint JNICALL Java_example_ExampleJNI_methode1(JNIEnv *jenv, jclass jcls, jlong jarg) { struct myStruct_s *arg = (struct myStruct_s *)&jarg; … } 好吧它不起作用。 我想我对结构的长期投射是错误的。 我该怎么办? 谢谢。 编辑 :感谢您的提示,这里是工作function […]