小编RAY*_*RAY的帖子

我如何找出maven正在使用的settings.xml文件

我最近更改了密码,必须更改我的maven settings.xml文件才能反映出来.但是,无论我在settings.xml文件中执行什么操作,更改的密码都不会被提取.出于绝望,我用-s switch(mvn -s <my intended settings.xml file>)运行了maven,一切都刚刚开始工作.似乎默认情况下maven使用的是"错误的"settings.xml

有没有办法让我弄清楚maven正在使用的settings.xml文件的位置?

configuration-files maven

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

Guava的Optional课程有什么意义

我最近读过这篇文章并看过有人使用这个课程,但在几乎所有情况下,使用它null都会起作用 - 如果不是更直观的话.有人能提供一个具体的例子Optional来实现null无法或更清洁的方式吗?我唯一能想到的就是使用Maps不接受null密钥的东西,但即便如此,也可以使用null值的"映射"来完成.任何人都可以给我一个更有说服力的论点吗?谢谢.

java generics guava

87
推荐指数
4
解决办法
2万
查看次数

为什么许多SWT控件不允许子类化?

我经常发现自己想要这样做.当您想要存储一些有用的信息或额外的状态时,它会非常有用.

所以我的问题是,是否有一个非常好的/强有力的理由为什么这是被禁止的?

谢谢

编辑:非常感谢所有这些答案.所以听起来对此没有正确或错误的答案.

假设我接受这些类不是子类的事实,那么标记Control类的最终结果是什么,但是禁止子类化 - 有效地将异常/错误从编译时降级到运行时?

编辑^ 2:看到我自己的答案:显然,这些类是可重写的,但需要由覆盖者明确确认.

谢谢

java swt

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

以编程方式水平滚动SWT表

类似的问题,但不完全一样.

table.showColumn()很有帮助,但滚动只有列宽的粒度.但我希望更精确地控制滚动位置.

考虑以下用例.我知道有两个表宽度相同且列宽相同的表.我想实现某种滚动同步器,以便当用户滚动一个表(水平)时,另一个表滚动到同一位置.

编辑:

在Eclipse论坛上似乎有同样的问题和一些工作思路,但没有解决方案.

编辑:我在Windows上发现了这种行为

java swt

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

Oracle USING子句的最佳实践

免责声明:我是开发人员,而不是DBA.

我一直是Oracle中USING子句的忠实粉丝,因为我不小心偶然发现它并且用它来代替老式的ON子句从那时起就将事实表与维度表连接起来.对我来说,它创建了一个更简洁的SQL,并生成了更简洁的结果集,没有不必要的重复列.

但是,昨天我被一位同事要求将我的所有USING条款转换为ON.我会和他核实一下,问他原因是什么.他与数据库的工作比我更密切,所以我认为他有一些很好的理由.

我没有收到他的回复(我们在不同的时区工作),但我想知道是否有关于使用"使用"条款的指导方针或最佳做法?我已经搜索了很多,但没有找到任何确定的东西.事实上,我甚至都没有在任何地方进行过很好的辩论.

有人可以对此有所了解吗?或者提供一个关于该主题的良好讨论的链接?

谢谢!

oracle join using natural-join

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

"下载"而不是"打开"文本文件

在GWT应用程序中,我希望有一个按钮,单击该按钮将下载给定URL的文件.它是带有.out后缀的纯文本日志文件(不是html).

我的第一次尝试是使用"window.open()"(尝试了gwt和本地javascript window.open)

不幸的是,浏览器(试过chrome和firefox等)试图变得聪明,并注意到文件是文本文件,因此在弹出窗口中显示内容,而不是下载它.更糟糕的是,似乎浏览器正在渲染.out文件,好像它是html一样,并且弄乱了所有的换行符和标签(基本上是任何空格).

我无法控制为.out文件提供服务的http服务器.所以我正在寻找客户端解决方案.

有人可以为我建议一个解决方案吗?

谢谢.

javascript gwt

9
推荐指数
2
解决办法
7608
查看次数

Java的类依赖工具

我知道很多关于SO的问题,但是我找不到任何完全令人满意的问题 - 可能是因为我的要求与提出的每个问题略有不同.

我有一个巨大的代码库,我想分解成更小的逻辑单元.为此,我需要找到所有纠结/循环依赖关系并解决它们.由于现有意大利面条的大小,唯一可行的策略似乎是分而治之,所以我需要先将大项目分成小块或剥离独立部分并分别处理较小的部分.

我可以找到的大多数工具似乎只适用于类或包级别,但它们似乎不支持子包的概念.例如,如果我有一个root包,下面有3个包,然后是3个下面的5个子包,那么我将得到1 + 3 + 15 = 19个包,这将给我一个疯狂复杂的图.现在我希望能够做的是首先分析3个顶级包之间的依赖关系(传入/传出包的数量,以及哪些类发起这些依赖关系),然后在这个级别上进行清理,然后再深入了解这些级别包可以在下一级工作.

现在,我已经将Structure 101用于此目的,并且效果很好,但是当试用期到期时,产品的价格对我的预算来说有点陡峭.那里有免费/开源的解决方案吗?

提前致谢!

java dependencies

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

DBCP连接池loginTimeout

根据DBCP文档,BasicDataSource不支持setLoginTimeout().我的问题是如何设置LoginTimeout来创建Connection对象?我知道我可以在池上设置maxWait,但我的理解是,这只会在池耗尽并且等待现有连接释放时使用.它不会让我免于需要创建新连接的情况,但是连接/登录到数据库会挂起.

任何帮助表示赞赏.谢谢.

database apache oracle connection jdbc

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

getDeclaredMethods()和隐藏的超类静态方法

根据http://download.oracle.com/javase/1.4.2/docs/api/java/lang/Class.html#getDeclaredMethods%28%29,Class.getDeclaredMethods()应该只包含"由类声明的方法" ".但是,我在下面的测试代码中得到了一些非常令人惊讶的结果:

import java.util.Arrays;

class A {
 public static A m1() { return null; }
 public static A m2() { return null; }
 public static A m3() { return null; }
}

class B extends A {
 public static A m1() { return null; }
 public static B m2() { return null; }
// public static Object m3() { return null; } won't compile
}


public class Scratch {
 public static void main(final String[] args) {
  System.out.println(Arrays.asList(B.class.getDeclaredMethods()));
 } …
Run Code Online (Sandbox Code Playgroud)

java reflection static static-methods method-hiding

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

Java:子类构造函数完成后的后处理

我想为一组类定义一些常见的构造后行为.当您在不同的类中共享行为时,Java会告诉我们将它们提取到父类中.

从概念上讲,我们说,对于这种类型的对象(及其子类),在它构造之后进行一些后处理是有道理的;

实际上,这很难做到.您显然不能将它放在父类构造函数中,因为在子类构造函数之前调用父构造函数.我可以在父类中编写一个postInit()方法,并要求所有子类将它作为构造函数中的最后一个语句来调用,但它看起来不是很干净,因为没有办法强制执行它,人们会忘记.

是否有一些我不知道的语言结构可以解决我的问题?

谢谢

关于要求的更多背景知识.下面的许多答案(我已经投票)提出的工厂方法等都是好主意,但我并没有那么奢侈.实际情况是这样的,我有这个父类,它由几十个子类扩展,这些子类又在许多其他地方使用.因此,重新设计如何使用这些子类是不可能的,并且更改所有子类是可能的边界.理想情况下,我只需要更改父类,这就是我所要求的.

java inheritance constructor subclass

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