小编mos*_*aab的帖子

Chain of Map方法参考

我正在使用Twitter4J.但我问的问题更为笼统.我想访问给定推文的用户ID.目前,我有以下两种选择:

//Option 1
stream.map(status -> status.getUser().getId())
      .forEach(System.out::println);

//Option 2:
stream.map(Status::getUser)
      .map(User:getId)
      .forEach(System.out::println);
Run Code Online (Sandbox Code Playgroud)

我不喜欢第一个选项中的lambda表达式,也不想在第二个选项中强制调用两个maps.有没有办法建立一系列方法参考?我知道这Status::getUser::getId不起作用,但我想知道是否有替代品.

java lambda java-8

27
推荐指数
2
解决办法
6433
查看次数

终端操作是否关闭了流?

dirPath包含200k文件.我想逐个阅读它们并做一些处理.以下代码片段会导致java.nio.file.FileSystemException: dirPath/file-N Too many open files.终端操作是否forEach()应该在移动到下一个之前关闭开放流(即打开文件)?换句话说,我是否必须为流式文件添加try-with-resources?

Files.list(dirPath)
     .forEach(filePath -> {
              Files.lines(filePath).forEach() { ... }
              });
Run Code Online (Sandbox Code Playgroud)

java-8 java-stream

20
推荐指数
2
解决办法
3799
查看次数

Youtube完整的Java Regex

我需要解析几个页面才能获得所有的Youtube ID.

我在网上发现了很多正则表达式,但是:Java不完整(它们除了ID之外还给我垃圾,或者他们错过了一些ID).

我发现似乎完整的那个是在这里托管的.但它是用JavaScript和PHP编写的.不幸的是我无法将它们翻译成JAVA.

有人可以帮我在Java中重写这个PHP正则表达式或以下的JavaScript吗?

'~
    https?://         # Required scheme. Either http or https.
    (?:[0-9A-Z-]+\.)? # Optional subdomain.
    (?:               # Group host alternatives.
      youtu\.be/      # Either youtu.be,
    | youtube\.com    # or youtube.com followed by
      \S*             # Allow anything up to VIDEO_ID,
      [^\w\-\s]       # but char before ID is non-ID char.
    )                 # End host alternatives.
    ([\w\-]{11})      # $1: VIDEO_ID is exactly 11 chars.
    (?=[^\w\-]|$)     # Assert next char is non-ID or EOS.
    (?!               # Assert URL is not …
Run Code Online (Sandbox Code Playgroud)

java regex youtube

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

Lucene 4.0中的术语矢量频率

我正在从Lucene 3.6升级到Lucene 4.0-beta.在Lucene 3.x中,IndexReader包含一个方法IndexReader.getTermFreqVectors(),我可以用它来提取给定文档和字段中每个术语的频率.

此方法现在替换为IndexReader.getTermVectors(),返回Terms.我如何利用这个(或可能是其他方法)来提取文档和字段中的术语频率?

lucene

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

合并排序gzip压缩文件

我有40个文件,每个2GB,存储在NFS架构上.每个文件包含两列:数字ID和文本字段.每个文件都已经过排序和gzip压缩.

如何合并所有这些文件,以便生成的输出也被排序?

我知道sort -m -k 1应该为未压缩文件做诀窍,但我不知道如何直接使用压缩文件.

PS:我不想要将文件解压缩到磁盘,合并它们以及再次压缩的简单解决方案,因为我没有足够的磁盘空间.

unix linux bash

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

带参数的方法引用

我正在寻找一种方法将制表符分隔的String映射到数组.目前,我正在使用lambda表达式:

stream.map(line -> line.split("\t"));
Run Code Online (Sandbox Code Playgroud)

有没有办法用方法参考做到这一点?我知道这stream.map(String::split("\t"))不起作用,但我想知道是否有替代品.

java currying java-8

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

LSTM遵循均值池

我正在使用Keras 1.0.我的问题与此问题相同(如何在Keras中实现Mean Pooling层),但对我来说这里的答案似乎不够.

我想实现这个网络: 在此输入图像描述

以下代码不起作用:

sequence = Input(shape=(max_sent_len,), dtype='int32')
embedded = Embedding(vocab_size, word_embedding_size)(sequence)
lstm = LSTM(hidden_state_size, activation='sigmoid', inner_activation='hard_sigmoid', return_sequences=True)(embedded)
pool = AveragePooling1D()(lstm)
output = Dense(1, activation='sigmoid')(pool)
Run Code Online (Sandbox Code Playgroud)

如果我没有设置return_sequences=True,我打电话时会收到此错误AveragePooling1D():

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/PATH/keras/engine/topology.py", line 462, in __call__
    self.assert_input_compatibility(x)
  File "/PATH/keras/engine/topology.py", line 382, in assert_input_compatibility
    str(K.ndim(x)))
Exception: ('Input 0 is incompatible with layer averagepooling1d_6: expected ndim=3', ' found ndim=2')
Run Code Online (Sandbox Code Playgroud)

否则,我打电话时会收到此错误Dense():

Traceback (most recent call last):
  File …
Run Code Online (Sandbox Code Playgroud)

machine-learning neural-network deep-learning keras recurrent-neural-network

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

WebView中的缩放比例不正确

我有一个建立在PrimeFaces之上的网站.我的问题是WebView上的内容和图像看起来比Chrome上的要大.我应该怎么做才能使WebView上的渲染与Chrome的渲染相同?

扩展似乎没有帮助,因为该网站具有响应式设计.我也试过wrap_content而不是fill_parent没有成功.

更新1:以下内容无效.我已将它们从下面的代码中排除,以保持最小化.

  • WebViewClient
  • ChromeViewClient
  • setLoadWithOverviewMode(true)
  • setUseWideViewPort(true)

更新2: setInitialScale()无效.

MyActivity.java

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    webView = (WebView) findViewById(R.id.web_engine);
    webView.setWebViewClient(new WebViewClient());
    webView.getSettings().setJavaScriptEnabled(true);
    if (savedInstanceState == null) {
        webView.loadUrl("http://www.primefaces.org/showcase/mobile/index.xhtml");
    }
}
Run Code Online (Sandbox Code Playgroud)

main.xml中

<RelativeLayout xmlns:a="http://schemas.android.com/apk/res/android"
            a:layout_width="fill_parent"
            a:layout_height="fill_parent"
            a:background="#ffffff"
            a:orientation="vertical" >

<WebView a:id="@+id/web_engine"
         a:layout_width="fill_parent"
         a:layout_height="fill_parent"
/>
Run Code Online (Sandbox Code Playgroud)

的WebView 铬

android webkit webview primefaces primefaces-mobile

6
推荐指数
1
解决办法
1868
查看次数

MySQL不使用可用内存

我正在从共享的网络托管公司转向VPS.我正在努力为我的系统找到最佳配置.

对于具有50万条记录的1个特定表,在前一个服务器上花费几秒钟的1个查询现在需要几分钟.

我正在努力改善服务器的响应时间,所以我购买了更多的内存(我有2GB的RAM,如果需要,我仍然可以购买更多的资源和2个内核).通过将旧公司的my.cnf复制到我的VPS,我也"作弊":

[mysqld]
read_buffer_size=8M
read_rnd_buffer_size=8M
sort_buffer_size=32M
innodb_additional_mem_pool_size=503M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=16M
innodb_buffer_pool_size=1007M
innodb_log_file_size=256M
innodb_thread_concurrency=8
innodb_autoextend_increment=128
max_connections=8059
max_user_connections=50
thread_cache_size=128
thread_stack=196608
binlog_cache_size=2M
net_read_timeout=30
net_retry_count=10
net_write_timeout=30
thread_concurrency=10
open_files_limit=9940
max_heap_table_size=32M
tmp_table_size=64M
key_buffer_size=512M
key_buffer=128M
myisam_sort_buffer_size=64M
join_buffer=16M
record_buffer=8M
wait_timeout=300
connect_timeout=10
max_allowed_packet=16M
max_connect_errors=100
table_cache=1024
query_cache_size=32M
query_cache_type=1
ft_min_word_len=4
datadir=/var/lib/mysql
tmpdir=/tmp
socket=/var/lib/mysql/mysql.sock
old-passwords=0
[mysqldump]
quick
max_allowed_packet=16M
[myisamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M
Run Code Online (Sandbox Code Playgroud)

问题是,查询仍然缓慢,而服务器也无法使用可用内存!

              total       used       free     shared    buffers     cached
Mem:          2002       1986         15          0          6       1079
-/+ buffers/cache:        901       1101
Swap:         1747          2       1745
Run Code Online (Sandbox Code Playgroud)

有什么建议?

问候

mysql memory-management

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

Tomcat当前线程数

Tomcat和appache2通过AJP连接.我有tomcat和apache的这些配置:

<Connector port="8009" protocol="AJP/1.3"
           URIEncoding="UTF-8"
           redirectPort="8443"
           connectionTimeout="20000"
           maxThreads="512" />


<IfModule mpm_event_module>
    StartServers          5
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadLimit          64
    ThreadsPerChild      25
    ServerLimit        1024
    MaxClients          512
    MaxRequestsPerChild   0
</IfModule>
Run Code Online (Sandbox Code Playgroud)

当我去tomcat经理时,我看到:

"ajp-bio-8009"
Max threads: 512 Current thread count: 256 Current thread busy: 231
Run Code Online (Sandbox Code Playgroud)

当前线程忙有时达到256.为什么当前线程数不是设置为512?

apache2 tomcat7

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