小编Ken*_*Liu的帖子

让制定者返回"这个"是不好的做法吗?

在java中使setter返回"this"是一个好主意还是坏主意?

public Employee setName(String name){
   this.name = name;
   return this;
}
Run Code Online (Sandbox Code Playgroud)

这种模式很有用,因为你可以链接这样的setter:

list.add(new Employee().setName("Jack Sparrow").setId(1).setFoo("bacon!"));
Run Code Online (Sandbox Code Playgroud)

而不是这个:

Employee e = new Employee();
e.setName("Jack Sparrow");
...and so on...
list.add(e);
Run Code Online (Sandbox Code Playgroud)

......但这有点违反标准惯例.我想这可能是值得的,因为它可以让那个setter做一些有用的东西.我已经看到这种模式使用了一些地方(例如JMock,JPA),但它似乎并不常见,并且通常仅用于定义良好的API,其中此模式随处可用.

更新:

我所描述的内容显然是有效的,但我真正想要的是关于这是否普遍可以接受,以及是否存在任何陷阱或相关最佳实践的一些想法.我知道Builder模式,但它比我描述的要多一些 - 正如Josh Bloch描述的那样,有一个关联的静态Builder类用于创建对象.

java oop api design-patterns

235
推荐指数
12
解决办法
6万
查看次数

如何在Oracle SQL Developer中将查询结果导出到csv?

我正在使用Oracle SQL Developer 3.0.试图找出如何将查询结果导出到文本文件(最好是CSV).右键单击查询结果窗口不会给我任何导出选项.

csv oracle export oracle-sqldeveloper

235
推荐指数
4
解决办法
60万
查看次数

删除git中的分支是否会从历史记录中删除它?

来自svn,刚刚开始熟悉git.

当在git中删除分支时,它是否从历史记录中删除了?

在svn中,您可以通过还原删除操作(反向合并)轻松恢复分支.与svn中的所有删除一样,分支永远不会被删除,它只是从当前树中删除.

如果实际上从git中的历史记录中删除了分支,那么从该分支合并的更改会发生什么?他们保留了吗?

git version-control branch revision-history

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

什么是"Groovy"和"Grails"以及使用它们构建了哪些类型的应用程序?

现在我听到很多关于"Grails上的Groovy"的内容,我想知道更多关于它的信息:

  • 什么是Groovy?
  • 什么是Grails?
  • 在Grails上使用Groovy构建了什么类型的应用程序?

grails groovy

94
推荐指数
3
解决办法
8万
查看次数

"mvn deploy"与本地仓库和"mvn install"有什么区别?

我的团队使用内部团队maven repo,它使用Apache从开发服务器共享.我们还在同一台机器上运行Continuum CI服务器.Continuum中的Maven构建以"安装"目标运行,该目标将最终工件直接复制到共享目录中.

问题是,使用mvn install和使用部署目标(mvn-deploy plugin)将文件添加到共享仓库有什么区别?

在我看来,使用mvn deploy会产生额外的配置麻烦,但我已经在某处读过,将文件安装到共享仓库中由于某些原因与maven的内部工作相关是一个坏主意.

更新:我得到了部署和安装之间的功能差异; 我实际上对maven repo中创建的文件的低级细节更感兴趣.

maven-2

86
推荐指数
3
解决办法
9万
查看次数

Maven - 如何在jar中添加任意类路径条目?

我有一个不寻常的情况,我需要在可执行jar的清单中添加一个任意的类路径条目(指向一个jar文件).(这适用于Swing桌面应用程序.)

maven-jar-plugin使用maven依赖项为jar清单生成"Class-Path"条目,并且似乎没有任何添加任意条目的方法.

我还看了使用"-classpath"参数将任意类路径条目硬编码到启动应用程序的批处理文件中,但我无法弄清楚如何让Maven将类路径过滤到批处理文件中.

maven-2 jar build classpath

62
推荐指数
3
解决办法
8万
查看次数

为什么在Glassfish或Tomcat面前使用Apache Web Server?

在GF或Tomcat前面使用Apache Webserver是个好主意吗?它是否提高了性能/安全性?

或者没有任何理由将Apache Web Server与GF一起使用?

apache tomcat glassfish

54
推荐指数
3
解决办法
4万
查看次数

问号在GSP/Grails中意味着什么?

我在生成的GSP页面中看到了这一点.那是什么意思?

<g:textField name="name" value="${phoneInstance?.name}" />
Run Code Online (Sandbox Code Playgroud)

grails groovy operators gsp

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

Google Analytics可以按小时向我显示访问次数吗?

我有兴趣看到我的网站上的访问按小时分解 - 有没有办法在Google Analytics中生成此报告?似乎所有指标都只按天细分.也许我可以通过GA API获取此信息?

google-analytics google-analytics-api

37
推荐指数
3
解决办法
5万
查看次数

如何从checkstyle配置生成Eclipse格式化程序配置?

我有一个checkstyle配置XML文件,并希望自动生成Eclipse格式化程序配置.有没有可以做到这一点的工具?

java eclipse code-formatting checkstyle

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