草庐IT

CREATED_BY

全部标签

Java 垃圾收集器 : top object classes promoted (by size)?

请告诉我在每次年轻GC事件之后确定提升到老年代的年轻代内存组成的最佳方法是什么?理想情况下,我想知道负责的类名,比如每个“年轻一代->老一代”提升block中80%的堆;例子:我有600M的younggen,每个tenure提升6M;我想知道这个6M是由哪些对象组成的。谢谢。 最佳答案 没有简单的方法可以做到这一点,但是,我最近一直在分析大型java应用程序的内存性能,并且可以分享一些经验。以下是我如何找到哪些对象被提升到老一代:首先,您需要确定“旧/永久”空间中有哪些对象。这基本上就是标准的Java堆分析。为此,我推荐jmap。它

java - JPA OneToMany映射异常: Field XXX cannot declare that it is mapped by another field

在我的项目中,我在下面报告了类,它们具有双向关系映射。当我尝试通过JPA读取DataProviderImpl类型的对象时,出现以下异常:org.apache.openjpa.persistence.ArgumentException:Field"persistence.entity.DataProviderImpl.methods"cannotdeclarethatitismappedbyanotherfield.Itsmappingstrategy(org.apache.openjpa.jdbc.meta.strats.HandlerCollectionTableFieldStrat

java - 接缝问题 : Could not set field value by reflection

我的Seam代码有问题,我似乎无法弄清楚我做错了什么。它正在做我的头:)这是堆栈跟踪的摘录:Causedby:java.lang.IllegalArgumentException:Cannotsetjava.lang.Longfieldcom.oobjects.sso.manager.home.PresenceHome.customerIdtojava.lang.String我正在尝试将我的URL上的参数集传递到我的一个bean中。为此,我在pages.xml中进行了以下设置:我的bean是这样开始的:@Name("presenceHome")@Scope(ScopeType.CONV

java - 卡夫卡 : No message seen on console consumer after message sent by Java Producer

我是Kafka的新手。我在我的本地机器上创建了一个java生产者,并在网络上的另一台机器上设置了一个Kafka代理,比如M2(我可以ping、SSH、连接到这台机器)。在Eclipse控制台的生产者端,我收到“消息已发送”。但是当我检查机器M2上的控制台消费者时,我看不到这些消息。我的java生产者代码是:importorg.apache.kafka.clients.producer.KafkaProducer;importorg.apache.kafka.clients.producer.ProducerConfig;importorg.apache.kafka.clients.pr

java - 亚马逊 SQS : The same message is consumed by two current consumers

我有四个当前消费者在AmazonAWS上收听同一个队列。从队列中拉取消息时,有时会出现同一条消息被两个不同的消费者消费的情况。请看下面的日志:18:01:46,515[jmsContainer-2]DEBUG-从队列中收到消息:ID:3698a927-930b-4d6a-aeca-f6692252879218:02:12,825[jmsContainer-3]DEBUG-从队列中收到消息:ID:3698a927-930b-4d6a-aeca-f66922528792我有一个包含4个并发使用者的JMS容器设置。我将可见性超时设置为30秒。既然container2收到了消息,怎么conta

java - Spring 安全 : Ignore login page by using a special URL parameter

我目前有一个看起来像这样的设置:spring-security.xml:web.xml:springSecurityFilterChainorg.springframework.web.filter.DelegatingFilterProxyspringSecurityFilterChain/*这一切似乎都按预期工作,但是,在特殊情况下,如果用户传入特殊token,我希望绕过登录页面。因此,目前,如果用户转到诸如/dog之类的url,他们将看到登录页面,如果他们传入foo/bar的凭据,那么他们将登录后看到/dog对应的页面。我希望能够使用诸如/dog?token=abcd这样的URL

java - Elasticsearch : Sorting by nested documents' values

我在为我的Java应用程序使用ElasticSearch时遇到了问题。我自己解释一下,我有一个映射,类似于:{"products":{"properties":{"id":{"type":"long","ignore_malformed":false},"locations":{"properties":{"category":{"type":"long","ignore_malformed":false},"subCategory":{"type":"long","ignore_malformed":false},"order":{"type":"long","ignore_malf

java - 在谷歌应用引擎数据存储中查询聚合 ("group by"的替代策略

无法查询AppEngine数据存储以获取聚合结果。例子:我有一个名为“Post”的实体,其中包含以下字段:Keyid,Stringnickname,StringpostText,intscore我的数据存储中有许多不同的昵称和每个昵称的许多帖子。如果我想要一个总分前十昵称的排行榜,我通常会有如下sql:selectnickname,sum(score)assumscorefromPostgroupbynicknameorderbysumscorelimit10这种类型的查询在googleappenginedatastorejavaapi(jdo或jpa)中是不可能的。我可以使用哪些替代

java - Apache HttpClient : How to auto close connections by server's keep-alive time?

ApacheHttpClient4.3b2,HttpCore4.3。我使用PoolingHttpClientConnectionManager同时管理5个连接:PoolingHttpClientConnectionManagerconnectionManager;HttpClienthttpclient;connectionManager=newPoolingHttpClientConnectionManager();connectionManager.setDefaultMaxPerRoute(5);httpclient=HttpClientBuilder.create().setC

java - 在 Java 8 中使用 group by 进行计数的实现

我正在寻找groupby的实现,然后根据lambda表达式中的计数进行过滤。selectCOUNT(employee_id),department_idfromemployeeGROUPBYdepartment_idHAVINGCOUNT(employee_id)>1是否有使用lambda表达式实现此目的的任何简单实现。 最佳答案 您可以将groupingBy收集器与counting()和collectingAndThen结合使用:importstaticjava.util.stream.Collectors.collectingA