小编fab*_*ous的帖子

使用Arrays.asList初始化List <>

为什么这样做:

String[] array = {"a", "b", "c"};
List<String> list = Arrays.asList(array);
Run Code Online (Sandbox Code Playgroud)

但这不是:

List<String> list = Arrays.asList({"a","b","c"});
Run Code Online (Sandbox Code Playgroud)

java arrays collections list array-initialization

40
推荐指数
3
解决办法
6万
查看次数

如何自动重启节点服务器?

我们正在完成一个项目的开发,客户端已经在使用它,但偶尔会出现一些错误 - 崩溃服务器.

我知道我可以在linux上注册一个服务作为'upstart'脚本,以便在崩溃时重启我的节点服务.

但我们的服务器运行其他东西,所以我们无法重启它.好吧,实际上,在写作的时候,我意识到我有两个问题:

  • 'upstart'工作而不必重启吗?有些东西只是对我说悄悄话:)
  • 如果没有,我的节点服务器崩溃时还有什么其他选项可以'重新生成'?

restart upstart node.js

30
推荐指数
3
解决办法
6万
查看次数

分布式哈希表技术和比特币区块链之间有什么区别?

这个问题可以进入比特币论坛,但我试图从编程的角度来理解.

存在用于分布式存储的技术,例如分布式哈希表(例如kademlia或类似的).比特币区块链与分布式哈希表有何不同?或者是支持比特币区块链的分布式哈希表技术?或者为什么比特币区块链被称为与DHT相比这样的突破?

distributed hashtable dht bitcoin blockchain

22
推荐指数
1
解决办法
8219
查看次数

git:"更新被拒绝,因为您当前分支的提示已落后......"但如何看待差异?

我刚刚完成了一段代码.想要推动并获得已经很有名的:

提示:更新被拒绝,因为当前分支的提示背后提示:它的远程对应物.在再次推送之前集成远程更改(例如提示:'git pull ...').

现在我已经在这里多次看过这个问题,例如

更新被拒绝,因为您当前分支的提示背后提示:它的远程对应物.整合远程变更(例如

更新被拒绝,因为您当前分支的提示落后

根据具体情况,解决方案要么是

  • git pull,所以远程更改合并到我的本地工作,或
  • git push -f,强制推动更新远程(原点)分支.

现在,我已经有一段时间没有在这个分支上工作了.我不一定想远程更改合并到我当前的工作中!我也不知道我是否可以安全地强制更新原始分支...

我怎样才能看出差异并决定哪种情况最适合我的情况?

git

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

REST API错误代码500处理

我们正在构建一个新的REST API.

我争辩说永远不应该返回错误代码500(内部服务器错误).

现在,当然,如果您知道客户端的参数是错误的,或者您可以控制所有内容并且可以返回一些适当的错误代码(例如422).

因此,如果发生意外错误,服务器可以:

  1. 不捕获意外错误,以便500个气泡到客户端
  2. 捕获任何意外错误并返回一些错误代码,表示"意外情况"(老实说,我找不到任何此类错误代码!)

还有其他选择吗?

api rest error-handling http error-code

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

带角度的标签:仅使用$ http加载标签内容

我有大量数据的大表单,所以我想要为每个选项卡添加大量数据的选项卡.

我希望在单击选项卡标题时延迟加载选项卡内容,然后在以后再次选择时不需要再次重新加载.

我认为这个例子涉及到我想要的方向: angular-ui tabs在tab-content中加载模板

但这似乎加载了一个静态模板:

<tabs>
    <pane active="pane.active"
          heading="{{pane.title}}"
          ng-repeat="pane in panes">
        <div ng-include="pane.content"></div>
    </pane>
</tabs>
Run Code Online (Sandbox Code Playgroud)

如何使用$ http.get()动态加载窗格的内容?注意:这已经是通过ng-view路由加载的页面了,所以我不能做嵌套路由.

编辑:每个标签的内容都大不相同,所以理想情况下我会为每个标签或类似的东西提供一个功能和模板......

我想angular-ui是一个很好的方法来解决这个问题?

ajax tabs angularjs angular-ui

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

"合并"字段是两个相同类型的结构

看着这个struct:

type Config struct {
  path string
  id   string
  key  string
  addr string
  size uint64
}
Run Code Online (Sandbox Code Playgroud)

现在,我有一个DefaultConfig初始化的一些值和一个从文件加载,让我们说FileConfig.我希望两个结构都合并到一起,这样我就得到了Config两个结构的内容.FileConfig应该覆盖设置的任何内容DefaultConfig,而FileConfig 可能没有设置所有字段.(为什么这样?因为潜在用户可能不知道默认值,所以删除该条目相当于设置默认值 - 我认为)

我以为我需要反思这个:

 func merge(default *Config, file *Config) (*Config) {
  b := reflect.ValueOf(default).Elem()
  o := reflect.ValueOf(file).Elem()

  for i := 0; i < b.NumField(); i++ {
    defaultField := b.Field(i)
    fileField := o.Field(i)
    if defaultField.Interface() != reflect.Zero(fileField.Type()).Interface() {
     defaultField.Set(reflect.ValueOf(fileField.Interface()))
    }
  }

  return default
 }
Run Code Online (Sandbox Code Playgroud)

在这里我不确定:

  • 如果需要反思的话
  • 可能有更简单的方法来做到这一点

我在这里看到的另一个问题是检查零值可能很棘手:如果覆盖结构打算用零值覆盖怎么办?幸运的是,我不认为它适用于我的情况 …

struct go

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

我需要删除fork的提交

好的,我做了一些蠢事.

  • 我分了一个我应该贡献的回购.
  • 所以我然后逐字地创建了一个名为"blafile"的文件来检查我是否可以提交(显然我不明白fork是什么)并且使用"check my can commit"消息进行提交.
  • 我推到了我的github分叉回购并忘了它.
  • 我开始在第二天修复一个bug.
  • 我提交了我的修复并推送到我的分叉回购消息"fixed bug xyz".

现在我想发出一个拉取请求,突然间我看到了"检查我可以提交"提交.我宁愿不喜欢那样出现在拉动请求中.:)

我可以完全删除该提交吗?我可以在一次提交时发出拉取请求,还是会提取我的所有提交?

我知道我可以在本地git reset --hard HEAD~1(这是一个我可以快速重做的小修复),但这只能修复我的本地仓库,而不是我的github(分叉)仓库.

git github

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

BatchUpdateException:批处理不会终止

我有一个应用程序,它处理一个非常大的文件并将数据发送到oracle数据库(使用Java 6,oracle 9).

在循环中,我使用a PreparedStatement ps并创建生成的所有SQL语句ps.addBatch().

我有一种情况BatchUpdateException bue是在某个地方抛出一个ps.executeBatch().此时,批处理停止执行.

我希望批处理执行继续,以便我可以检查方法中的失败更新processUpdateCounts(bue.getUpdateCounts()).

关于类BatchUpdateException的javadoc说:

在批量更新中的命令无法正确执行并且抛出BatchUpdateException之后,驱动程序可能会也可能不会继续处理批处理中的其余命令.

有没有办法强制执行继续,还是我需要改变我的程序,以便它将单独执行语句?

java oracle exception-handling jdbc

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

angular,使用自定义指令设置动态tabindex

这很令人尴尬.我无法弄清楚如何做一些看似微不足道的事情.

tr.row(ng-repeat="user in users")
  td
    div(input-inline-edit="user.name" tabindex="{{ $index*10 + 1 }}")
  td
    div(input-inline-edit="user.surname" tabindex="{{ $index*10 + 2 }}")
  td
    div(tabindex="{{ $index*10 + 3 }}")
Run Code Online (Sandbox Code Playgroud)

由于我有行,我需要能够逐行遍历tabindex.因此,我认为最好的是第一排1,2,3,4接下来的11,12,13,14然后是21,22,23,24

等等

我很尴尬我没能做到这一点,上面的代码不起作用,我试过了

{{$index *10 + 1}}
Run Code Online (Sandbox Code Playgroud)

{{getIndex($index, 1)}}")在控制器中:

$scope.getIndex = function(index,i) {
      return index*10 + i;
    }
Run Code Online (Sandbox Code Playgroud)

还有无数其他的组合......我无法相信自己没有做过看似简单的事情

编辑:好的,事实证明我对信息很贪心.我有一个自己的内联编辑指令,"输入内联编辑".我已在上面相应地编辑了代码.因此,如果我有该指令,则tabindex不起作用,但如果我有一个普通的div(上例中的第三个),那就是!!! 所以对于前两个我得到tabindex = null,对于第三个我得到一个有效的数字.我很困惑.

angularjs ng-repeat

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