小编Chr*_*sch的帖子

Java,如何在netbeans中添加库文件?

我是Netbeans IDE和Java的新手.我有一个java项目,显示了很多编译错误:

can not import "org.apache.commons.logging.Log"
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这些错误吗?如何在Netbeans IDE中添加库文件?

java include-path netbeans-6.9

21
推荐指数
2
解决办法
14万
查看次数

如何有效地维护传递闭包表?

我的关系数据库(Firebird)中有一个DAG,有两个表edgenode(邻接列表模型).我想以递归方式查询它们,但发现递归查询非常低效.因此,我试图在Dong et.al之后实现触发器以维持传递闭包.论文http://homepages.inf.ed.ac.uk/libkin/papers/tc-sql.pdf.

SELECTs现在非常快,但是DELETEs非常慢,因为几乎整个图形被复制用于单个删除.更糟糕的是,并发更新似乎不可能.

有没有更好的方法来实现这个?

编辑

我做了一些实验并向TC表引入了一个参考计数器.有了这个,删除很快.我写了一些简单的测试用例,但我不确定我做得对.这是我到目前为止:

CREATE GENERATOR graph_tc_seq;

CREATE TABLE EDGE (
    parent DECIMAL(10, 0) NOT NULL,
    child DECIMAL(10, 0) NOT NULL,
    PRIMARY KEY (parent, child)
);

CREATE TABLE GRAPH_TC (
    parent DECIMAL(10, 0) NOT NULL,
    child DECIMAL(10, 0) NOT NULL,
    refcount DECIMAL(9, 0),
    PRIMARY KEY (parent, child)
);

CREATE TABLE GRAPH_TC_TEMP (
    session_id DECIMAL(9, 0),
    parent DECIMAL(10, 0),
    child DECIMAL(10, 0)
);

CREATE PROCEDURE GRAPH_TC_CREATE (p_parent DECIMAL(10, 0), c_child …
Run Code Online (Sandbox Code Playgroud)

sql firebird directed-acyclic-graphs transitive-closure-table

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

ImageMagick将色彩空间缩小为灰色

我使用RGB转换RGB和CMYK TIFF图像为RGB JPEG

convert a.tif -colorspace rgb a.jpg
Run Code Online (Sandbox Code Playgroud)

如果TIFF图像仅包含灰色像素,则生成的JPEG的颜色空间为灰色,而不是RGB.

如何强制ImageMagick始终使用RGB?

rgb imagemagick grayscale

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

继承AngularJS指令以创建可重用的组件

我已经在AngularJS工作了一段时间并且已经研究了很多.我正在使用AngularJS指令构建可重用的自定义组件/小部件.我在这方面非常成功.但是,我希望在做同样的事情时坚持继承.让我举个例子来解释一下.

我创建了一个指令myButton,创建一个包含所有样式和功能的按钮.现在我想扩展/继承它myButton以创建一个myToggleButton具有一些附加功能的功能.我不想myButton再次重写功能.

我已经探索了各种选择.

  1. 正如https://gist.github.com/BrainCrumbz/5832057中所建议的那样,我创建了一个工厂/服务并将其注入指令中.但这不允许我充分利用遗产.我仍然需要重写大部分属性.

  2. 我尝试使用普通的面向对象的JavaScript进行继承,但在这种情况下我不会使用AngulrJS指令.我想严格遵循Angular概念.

所以任何建议都会受到欢迎.

inheritance components directive angularjs

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

使用不可变数据进行延迟初始化是否始终是线程安全的?

我有两个类AB:

class A {
    private final String someData;
    private B b;

    public String getSomeData() { return someData; }

    public B getB() {
        if (b == null) {
             b = new B(someData);
        }
        return b;
    }
}
Run Code Online (Sandbox Code Playgroud)

where B是不可变的,只从一个实例计算其数据A.A具有不可变的语义,但它的内部结构是可变的(如hashCodein java.lang.String).

当我getB()从两个不同的线程调用,并且调用重叠时,我假设每个线程都有自己的实例B.但由于构造函数B只获取不可变数据,因此两个实例B应该相等.

那是对的吗?如果没有,我必须getB()同步以使其线程安全吗?

假设B实现了equals(),它比较了B的所有实例变量.对于hashCode()

java multithreading immutability thread-safety lazy-initialization

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