小编par*_*rkr的帖子

避免并行继承层次结构

我有两个并行的继承链:

Vehicle <- Car
        <- Truck <- etc.

VehicleXMLFormatter <- CarXMLFormatter
                    <- TruckXMLFormatter <- etc.
Run Code Online (Sandbox Code Playgroud)

我的经验是,并行继承层次结构随着它们的增长而成为一种维护问题.

即不向toXML(), toSoap(), toYAML()我的主要类添加方法.

如何在不违反关注点分离概念的情况下避免并行继承层次结构?

java oop inheritance anti-patterns

33
推荐指数
2
解决办法
4840
查看次数

缺少Java中的不可变对象?

Java中不可变对象的优点似乎很清楚:

  • 一致的状态
  • 自动螺纹安全
  • 简单

您可以通过使用私有final字段和构造函数注入来支持不变性.

但是,在Java中支持不可变对象的缺点是什么?

  • 与ORM或Web演示工具不兼容?
  • 设计不灵活?
  • 实施复杂性?

是否有可能设计一个主要使用不可变对象的大规模系统(深层对象图)?

java immutability

32
推荐指数
2
解决办法
7968
查看次数

Drupal是否已为企业做好准备?

是否有人使用Drupal进行大规模,关键业务的企业应用程序?

Drupal缺乏数据库事务支持是否会阻止潜在用户?

是否有其他基于动态语言的轻量级Web框架,人们正在使用这些类型的应用程序?那些Java门户网站如JBossPortal或Jetspeed作为替代或Drupal + J2EE混合架构呢?

php comparison enterprise drupal java-ee

28
推荐指数
4
解决办法
7691
查看次数

为什么Java BigDecimal会返回1E + 1?

为什么这个代码有时会返回1E + 1,而对于其他输入(例如17),输出不会以科学计数法打印?

BigDecimal bigDecimal = BigDecimal.valueOf(doubleValue).multiply(BigDecimal.valueOf(100d)).stripTrailingZeros();
System.out.println("value: " + bigDecimal);
Run Code Online (Sandbox Code Playgroud)

java floating-point bigdecimal

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

具有可变延迟的ScheduledExecutorService

假设我有一个从java.util.concurrent.BlockingQueue中提取元素并处理它们的任务.

public void scheduleTask(int delay, TimeUnit timeUnit)
{
    scheduledExecutorService.scheduleWithFixedDelay(new Task(queue), 0, delay, timeUnit);
}
Run Code Online (Sandbox Code Playgroud)

如果可以动态更改频率,如何安排/重新安排任务?

  • 我们的想法是获取数据更新流并将它们批量传播到GUI
  • 用户应该能够改变更新的频率

java concurrency executorservice blockingqueue

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

使用依赖注入时是否存在"新"的情况?

依赖注入是否意味着您不需要'new'关键字?或者直接创建简单的叶子类如集合是否合理?

在下面的示例中,我注入了比较器,查询和dao,但是SortedSet是直接实例化的:

public Iterable<Employee> getRecentHires()
{
    SortedSet<Employee> entries = new TreeSet<Employee>(comparator);
    entries.addAll(employeeDao.findAll(query));
    return entries;
}
Run Code Online (Sandbox Code Playgroud)

java oop spring dependency-injection guice

16
推荐指数
2
解决办法
1433
查看次数

Java中的线程是否应该被命名以便于调试?

Java中线程命名的最佳实践是什么?是否有任何命名约定?

java multithreading naming-conventions

15
推荐指数
2
解决办法
3200
查看次数

Maven中的代码生成

我想从接口自动生成一些java类.我的第一个想法是编写代码生成器,并将其集成为maven插件.

我正在考虑创建一个maven插件,其中包含在构建过​​程中调用的codegen目标.

因此,如果我选择此路由,如何为插件提供要处理的接口?应该在哪里生成文件?

是否有任何现有的插件可以配置为生成默认的类实现?

java plugins maven-2 code-generation

11
推荐指数
1
解决办法
7244
查看次数

Scala中的聚合列表值

从包含两个参数名义和货币​​的对象列表开始,我如何汇总每种货币的总名义?

鉴于:

case class Trade(name: String, amount: Int, currency: String)

val trades = List(
  Trade("T150310", 10000000, "GBP"),
  Trade("T150311", 10000000, "JPY"),
  Trade("T150312", 10000000, "USD"),
  Trade("T150313", 100, "JPY"),
  Trade("T150314", 1000, "GBP"),
  Trade("T150315", 10000, "USD")
)
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到:

Map(JPY -> 10000100, USD -> 10010000, GBP -> 10001000)
Run Code Online (Sandbox Code Playgroud)

functional-programming scala scala-collections

11
推荐指数
2
解决办法
9500
查看次数

访问远程MBean服务器

我正在使用JBoss运行客户端/服务器应用程序.

如何连接到服务器JVM的MBeanServer?我想使用MemoryMX MBean来跟踪内存消耗.

我可以使用JNDI查找连接到JBoss MBeanServer,但java.lang.MemoryMX MBean未在JBoss MBeanServer中注册.

编辑:要求从客户端以编程方式访问内存使用情况.

java jboss jmx mbeans

11
推荐指数
2
解决办法
3万
查看次数