小编bfo*_*our的帖子

Java泛型构造函数<X,Y>(C <Y>)和接口C <Y>的意外行为

我有以下代码:

一个模拟a ValueContainer<P>和实体之间映射的类E.(例如,一个复选框(ValueContainer)和一个具有布尔值的东西):

public abstract class ObjValContainerMapper<E, P> {

    private ValueContainer<P> provider;

    public ObjValContainerMapper(ValueContainer<P> provider) {
        this.provider = provider;
    }

    public abstract P getValue(E entity);

    public abstract void setValue(E entity, P value);

    ...

}
Run Code Online (Sandbox Code Playgroud)

界面ValueContainer<P>:

public interface ValueContainer<T> {
        T getValue();
        void setValue(T value);
}
Run Code Online (Sandbox Code Playgroud)

自定义复选框:

public class AdvancedCheckBox extends JCheckBox implements ValueContainer<Boolean>
Run Code Online (Sandbox Code Playgroud)

并且一些代码意外地不起作用:

AdvancedCheckBox chckbxBindToDrive = new AdvancedCheckBox(
            "Bind to Drive");

ObjValContainerMapper<IndexSpec, Boolean> bindToDriveMapper = 
        new ObjValContainerMapper<IndexSpec, Boolean>(chckbxBindToDrive) {
    @Override
    public Boolean getValue(IndexSpec entity) …
Run Code Online (Sandbox Code Playgroud)

java eclipse generics

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

如何使用Java Document API为OrientDB数据库创建自动递增索引/序列?

我通过其Document API使用OrientDB和Java.我有一个简单的类叫items有一个属性ID.我明确地声明了这样的架构:

    OSchema schema = db.getMetadata().getSchema();
    OClass itemsClass = schema.createClass("items");
    itemsClass.createProperty("ID", OType.LONG);
Run Code Online (Sandbox Code Playgroud)

然后在ID:创建索引:CREATE INDEX items.ID ON items (ID) UNIQUE.

现在,当我创建一个新项目(类似ODocument doc = new ODocument("items")等)时,我希望在数据库上生成新项目的ID(类似于RDBMS中的序列).如何使用OrientDB的Java Document API执行此操作?

java orientdb

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

标签 统计

java ×2

eclipse ×1

generics ×1

orientdb ×1