小编Eri*_* B.的帖子

无论如何在Eclipse中使用带有EGit的外部差异编辑器?

无论如何,在进行差异/合并时,是否要将Eclipse/EGit配置为使用外部差异编辑器和合并工具?我一直在寻找一种方法来使用像BeyondCompare或DiffMerge或Kaleidoscope这样的东西,但到目前为止还没有找到配置它的方法.

我意识到BC有自己的插件,但它在Egit上下文中不起作用(即:查看历史记录并与工作树进行比较等).

我正在运行Eclipse 3.7SR2(Indigo)和eGit 2.1.0.我已经尝试将东西放在我的.gitconfig中以使用外部差异工具,但Eclipse仍然在自己的比较窗口中打开文件.

eclipse git compare external egit

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

哪里可以下载Spring Roo 1.2.4运行时?

我正在运行Eclipse Juno 4.2(从Indigo 3.7升级),安装了Spring Tool Suite工具.前段时间我安装了Spring Roo 1.2.2.RELEASE,并将Roo插件配置为指向1.2.2.RELEASE运行时.

我现在想升级到Spring 1.2.4.RELEASE,但无法在任何地方找到运行时.我查看了Spring网站,但似乎无法在任何地方找到它的下载链接.

所以有几个问题:

1)运行时是否仍然需要单独下载,是否仍需要将Eclipse配置为单独指向它?

2)我在哪里可以下载运行时?

3)为什么我需要单独的运行时?为什么STS/Eclipse不够聪明,无法使用我的maven项目中包含的Roo工件?

eclipse spring-roo eclipse-juno spring-tool-suite

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

如何在jUnit设置测试上下文之前推迟调用@PostConstruct

我有一个带有受保护的@PostConstruct方法的静态Spring 3.2.4 bean,它在初始化时从DB加载数据.

在创建jUnit测试时,在我的测试方法中,我想在DB中设置数据以适当地测试bean.但是,鉴于bean在我的测试方法之前被实例化,我不知道如何在方法完成之前请求Spring推迟bean的实例化.

鉴于@PostConstruct方法受到保护,我不能直接调用它来重新初始化bean,除非我使用反射.

还有另一种方法可以做到这一点,还是反思唯一的方法?Spring是否有任何Util类使其更容易,或者我是否必须使用标准的java反射?

reflection junit spring postconstruct

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

有没有办法在包级别使用 Spring @Profile 注解?

我试图将特定配置文件的所有 bean 定义放在一起,并且不想将它们全部推入一个巨大的 AppConfig.java 类中。我想知道是否有一种方法可以使用 package-info.java 在包级别进行注释,并使该包中的所有配置文件继承该配置文件。

我在 package-info.java 中尝试了以下操作:

@Profile("test")
package com.system.configuration.test;
import org.springframework.context.annotation.Profile;
Run Code Online (Sandbox Code Playgroud)

但是@Configuration无论是否是“测试”配置文件,包中的类似乎都会被使用。

单独注释每个类是唯一的选择吗?

configuration spring spring-java-config

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

休眠自引用实体作为非空列

我正在使用 Hibernate 5 和 Spring 3.2.4。我正在设计一个用户实体,我想在其中包含对创建实体的用户的引用 - 所以是自我引用。自引用本身并没有太大问题,但我想将该字段指定为非空。这可能吗?如果该字段不为空,因为引用的实体不存在,如何在数据库中创建第一个条目?

前任:

@Entity
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "id")
    private Long User.id;

    @NotNull
    private String username;

    private String password;

    @NotNull
    private User user;


    // getters and setters omitted for brevity
}
Run Code Online (Sandbox Code Playgroud)

如果我尝试:

User u = new User();
u.setUsername("username");
u.setCreatedBy(u);
Run Code Online (Sandbox Code Playgroud)

并尝试坚持u,我收到以下错误消息:

Caused by: org.hibernate.TransientPropertyValueException: Not-null property references a transient value - transient instance must be saved before current operation: com.domain.User.createdBy -> com.domain.User
Run Code Online (Sandbox Code Playgroud)

我知道 Hibernate 抱怨它无法引用瞬态实例(即:)u,但 …

java persistence hibernate jpa hibernate-5.x

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

直接在 JPA/JPQL 中将行插入连接表?

JPA 中有没有办法将行直接插入连接表?我有以下合同和附件实体:

public class Contract implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "id")
    private Long id;

    @Version
    @Column(name = "version")
    private Integer version;

    private String number;
    private String volume;

    @ManyToMany
    @JoinTable(joinColumns = @JoinColumn(name = "contract_id", referencedColumnName = "id"), inverseJoinColumns = @JoinColumn(name = "attachment_id", referencedColumnName = "id"))
    private List<Attachment> attachments;
}
Run Code Online (Sandbox Code Playgroud)

Attachment 实体:

public class Attachment implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "id")
    private Long id;

    @Version
    @Column(name = "version")
    private Integer version;

    private String name; …
Run Code Online (Sandbox Code Playgroud)

java jpa jpql jpa-2.0 spring-data-jpa

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

如何使用 Javaconfig 在 Spring 应用程序中添加安全提供程序?

我正在尝试将 BouncyCastle 添加到我的 Spring 应用程序中,但我不确定如何java.security.Security使用 JavaConfig 将提供程序添加到提供程序列表中。

使用 XML 配置,我可以使用MethodInvokingFactoryBean类似以下内容:

<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
  <property name="staticMethod" value="java.security.Security.addProvider"/>
  <property name="arguments">
    <list>
      <bean class="org.bouncycastle.jce.provider.BouncyCastleProvider"/>
    </list>
  </property>
</bean>
Run Code Online (Sandbox Code Playgroud)

但是,我不确定使用 JavaConfig 执行此操作的正确方法。我还应该使用吗MethodInvokingFactoryBean?我想因为它是纯java,所以会有更直接的方法。目前,我已将该指令添加到@PostConstructJavaConfig 对象中的一个方法中,但对此并不太兴奋 - 对我来说这似乎有点“hacky”:

@Configuration
public class AppConfig {
    // other @Bean definitions

    @PostConstruct
    public void init(){
        Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
    }
}
Run Code Online (Sandbox Code Playgroud)

java security spring bouncycastle spring-java-config

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

与CouchDB和Couchbase混淆

我正在研究CouchDB和Couchbase,因为我正在为一个Web应用程序寻找一个数据库解决方案,我最终也可以将其制作成一个原生的Android/iOS应用程序.据我所知,CouchDB/Couchbase擅长脱机使用数据库,并在连接恢复后立即进行同步.

我进一步了解CouchDB和Couchbase是来自2个不同组织的2个不同产品 - CouchDB来自Apache,Couchbase来自Couchbase.在SO中有一个很好的回应,解释了一些差异.

Couchbase拥有Couchbase-Lite-Android和类似iOS的本机嵌入式数据库,适用于与Couchbase服务器同步的移动应用程序.

我迷路的地方是当我试图找到相当于CouchDB的时候.一切都指向TouchDB,然后说它不再是积极开发的,而是指向Couchbase-Lite-Android作为超越它的项目.但Couchbase-List-Android/iOS与CouchDB或Couchbase同步吗?根据Wiki,它表明它可以与CouchDB同步,但它是次要后端,它接收较低的优先级和/或错误修复.

那么应该用于Android/iOS的CouchDB的嵌入式/移动版本是什么?

android couchdb couchbase couchbase-lite

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

我可以使用Oracle Java 7 HotSpot VM安装DCEVM吗?

我在MacOS上运行Oracle Java 7(OSX 10.7.5)

java -version:

Java version "1.7.0_40"
Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
Java HotSpot(TM) 64-Bit Server VM (build 24.0-b56, mixed mode)
Run Code Online (Sandbox Code Playgroud)

我最近读到了有关DCEVM的内容,我非常好奇地试用它.但是,我对它的兼容性感到困惑.

根据二进制文件下载页面,有OpenJDK Java 7更新51,构建3的二进制文件.我不太确定这与我目前在我的机器上的Java版本有什么关系.

安装JRE是否需要与DCEVM Hotspot版本匹配?我是否需要安装OpenJDK 7_51_3才能使用有问题的DCEVM?或者我可以使用Oracle JRE安装热点VM吗?

我不完全确定JRE/JDK附带的所有实用程序如何与HotSpot VM交互,如果它们都必须具有相同的构建,那么编译后的字节代码应该能够在任何JVM上运行相同的主要版本号.

任何人都可以提供一些有关如何将所有这些组件组合在一起

作为后续,有没有人知道我是否可以找到OSX的OpenJDK兼容版本,我可以在其上运行DCEVM for Java 7 update 51,build 3?

java openjdk jvm-hotspot hotswap dcevm

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

iBeacon 可以有数据负载吗

我知道 iBeacon 的定义是它正在传输的广告数据包的固定规范:

  • 9 字节 iBeacon 前缀
  • 16 字节 UUID
  • 2 字节主要
  • 2 字节次要
  • 1 字节 TX 功率

话虽如此,是否有任何东西可以阻止信标既发送广告 iBeacon 数据包以唤醒手机的应用程序,又将实际数据内容作为 BLE 数据包的一部分传输?是否需要大量握手才能发送/传输附加数据?

信标是否有其他方式传输数据?我最大的担忧之一是欺骗我的信标以伪造我试图收集的数据。我希望能够与 iBeacon 数据包一起传输一些数据可以让我限制欺骗。

这样的事情甚至可行吗?

bluetooth-lowenergy ibeacon

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