小编rd2*_*d22的帖子

什么是休眠中的分离,持久和瞬态对象?

什么是休眠中的分离,持久和瞬态对象?请举例说明.

java orm hibernate

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

Servlet 2.5和3之间有什么区别?

我正在推出符合Servlet 2.5的J2EE代码,我想知道2.5和3之间的主要区别是什么.官方Sun文档和个人经历的指针非常受欢迎.

如果我不应该暂时关注自己3,那就这么说吧.谢谢!

java servlets java-ee

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

了解Dijkstra算法的时间复杂度计算

根据我的理解,我使用下面给出的邻接表将Dijkstra算法的时间复杂度计算为big-O表示法.它没有像它应该的那样出来,这让我逐步理解它.

  1. 每个顶点可以连接到(V-1)个顶点,因此每个顶点的相邻边的数量是V-1.让我们说E代表连接到每个顶点的V-1边.
  2. 在最小堆中查找和更新每个相邻顶点的权重是O(log(V))+ O(1)或O(log(V)).
  3. 因此,从上面的步骤1和步骤2,更新顶点的所有相邻顶点的时间复杂度是E*(logV).或E*logV.
  4. 因此,所有V顶点的时间复杂度是V*(E*logV),即O(VElogV).

但是Dijkstra算法的时间复杂度是O(ElogV).为什么?

algorithm big-o graph dijkstra time-complexity

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

休眠中级联和反向有什么区别,它们用于什么?

如何在休眠中使用级联和反向?定义它们的过程/标记是什么?它们是否相互关联,它们如何有用?

java hibernate cascade inverse

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

存储具有多个查询条件的多个实体时要使用哪些数据结构?

有一个存储单元,可容纳N个项目.最初这个单位是空的.该空间以线性方式布置,即一条线旁边的一个.每个存储空间都有一个数字,增加到N.

当有人丢弃他们的包裹时,会为其分配第一个可用空间.包裹也可以被拾取,在这种情况下空间变得空白.示例:如果总容量为4且1和2已满,则第3个进入的人将被分配空间3.如果1,2和3已满并且第2个空间变空,则下一个将来的人将是分配了空间2.

他们丢弃的包有2个独特的属性,分配给立即识别.首先,它们根据其内容进行颜色编码,然后为它们分配唯一的标识号(UIN).

我们想要的是查询系统:

  1. 输入为彩色时,显示与此颜色关联的所有UIN.
  2. 输入为彩色时,显示放置这些包的所有数字(存储空间编号).
  3. 显示放置了给定UIN的项目的位置,即存储空间编号.

我想知道在这种情况下如何使用哪种数据结构,以便系统尽可能高效地工作?并且我没有给出最常见的这些操作,这意味着我将不得不针对所有情况进行优化.

请注意,即使查询过程不直接询问存储空间编号,但是当从商店中删除项目时,它将通过查询存储空间编号来删除.

java algorithm data-structures

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

Servlet jsp的Servlet.service()引发了异常java.lang.IllegalStateException

我有一个控制器,通过使用弹簧处理长轮询机制DeferredResult.有时当我多次调用控制器方法时,我得到以下异常:

java.lang.IllegalStateException: getOutputStream() has already been called for this response

所以有一个调用views/getLongPollingGraphData传递一些id并返回一个或没有id的json响应.当我多次加载页面时,有时会调用此URL,我会得到上述异常.

我面临的问题是,当它超时或在其上设置响应时,我正在使用onCompletion回调DeferredResultDeferredResult从地图中删除它.但是在这个例外的情况下,它onCompletion没有被调用,它停留在地图上.我已阅读有关此异常的不同帖子,但我无法与其中任何一个相关.

下面是异常的整个堆栈跟踪以及我的控制器方法的部分内容.

Nov 07, 2016 9:52:06 AM org.apache.catalina.core.ApplicationDispatcher invoke
SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.IllegalStateException: getOutputStream() has already been called for this response
    at org.apache.catalina.connector.Response.getWriter(Response.java:648)
    at org.apache.catalina.connector.ResponseFacade.getWriter(ResponseFacade.java:213)
    at javax.servlet.ServletResponseWrapper.getWriter(ServletResponseWrapper.java:104)
    at org.apache.jasper.runtime.JspWriterImpl.initOut(JspWriterImpl.java:125)
    at org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:118)
    at org.apache.jasper.runtime.PageContextImpl.release(PageContextImpl.java:186)
    at org.apache.jasper.runtime.JspFactoryImpl.internalReleasePageContext(JspFactoryImpl.java:126)
    at org.apache.jasper.runtime.JspFactoryImpl.releasePageContext(JspFactoryImpl.java:80)
    at org.apache.jsp.WEB_002dINF.jsp.ClientAbortException_jsp._jspService(ClientAbortException_jsp.java:136)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) …
Run Code Online (Sandbox Code Playgroud)

java spring

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

无服务器部署多个功能

我最近更新了我的无服务器项目,并且我发现在最近的几次更新中有很多变化.

https://serverless.com/

我不完全了解有多个lambda函数和api网关端点与同一项目相关的正确方法.使用旧的无服务器,我将每个lambda和端点作为一个完全独立的功能,这对我来说非常好.

我似乎不能再这样做了,如果我尝试我的第二个lambda函数会覆盖我的第一个,大概是因为我的"服务名称"都是相同的.我的服务名称是相同的,因为我希望两个休息端点都在API网关的相同API中.由于无服务器根据服务名称创建API名称.

所以我试着将两个函数添加到同一个"服务"中.这在大多数情况下都有效,除了现在我需要将我的所有函数的自定义角色语句包含到同一个角色中(因为这个角色现在被链接到我的所有函数).有效地为每个单独的功能提供比它应有的更多权限.另一个问题是,不同功能的所有处理程序文件都被放入每个功能部署包中.

所以基本上,我不确定具有多个与同一个项目相关但功能分离的函数的正确方法是什么.它曾经有意义,现在没有.

如果有人能给我一些指示,请

谢谢

aws-lambda serverless-framework

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

Spring DeferredResult onCompletion未从测试用例中调用

我有一个彗星(长轮询)Controller呼叫,这需要在一些id和puts然后进入阻塞队列,如果没有计算该id运行时,用于Consumertakequeue与这些ID执行计算.我正在使用Springs DeferredResultasynch支持.

我维持MapDeferredResult,并在请求中接收到的相应的ID.当在消费者线程中完成id的计算时,我在其中检查该id Map并设置关联DeferredResults setResult,该响应将响应发送回客户端.

Controller方法中,我有一个onCompletion回调,DeferredResult从中删除此DeferredResult对象Map.

然后,客户端从其请求中删除此ID并发送剩余的ID.例如,客户端发送的初始ID为"1,2,3",它们都被插入BlockingQueue并且说id"2"的计算先前完成,然后DeferredResults setResult将其设置,这将响应返回给客户端.通过回调,这DeferredResult将被删除Map.并且下一个请求中的客户端将发送ID"1,3".

现在一切正常,但是当我开始为此编写测试用例时,onCompletion永远不会调用回调.我甚至在泉水官方的例子中试过它,它似乎甚至没有被称为.有没有办法在我的实现中调用它,或者某些东西是不正确的.

这是我的Controller方法:

@RequestMapping(value = "views/getLongPollingGraphData", method = RequestMethod.GET, headers = "Accept=application/json")
@ResponseBody
public DeferredResult<WebServiceResponse> getLongGraphData(
        HttpServletRequest request,
        @RequestParam(value = "ids") String ids) 
{
    //create a default response in case, when no …
Run Code Online (Sandbox Code Playgroud)

java spring asynchronous spring-mvc

7
推荐指数
1
解决办法
985
查看次数

Apache Camel onException

我想从路线中捕捉所有异常.

我添加了这个OnExeption:

onException(Exception.class).process(new MyFunctionFailureHandler()).stop();
Run Code Online (Sandbox Code Playgroud)

然后,我创建了类MyFunctionFailureHandler.

public class MyFunctionFailureHandler  implements Processor {

@Override
public void process(Exchange exchange) throws Exception {
    Throwable caused;

    caused = exchange.getProperty(Exchange.EXCEPTION_CAUGHT, Throwable.class);

    exchange.getContext().createProducerTemplate().send("mock:myerror", exchange);
   }

}
Run Code Online (Sandbox Code Playgroud)

不幸的是,它不起作用,我不知道为什么.

如果有异常,程序必须停止.

我怎么知道为什么这段代码不起作用!!

谢谢.

java apache esb onexception

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

Android设备管理器:"传输错误:权限被拒绝"

我试图拉我的应用程序数据库文件,我可以看到我拥有数据库文件"-rwxrwxrwx"中的所有权限,我是由chmod -r 777 /data/data/com.example.myapp提供的,但我是不能,当我试图拉它时,我不断得到上述错误,而且设备管理器不断崩溃.

我得到的错误:

[2015-07-19 19:48:44 - ddms]转移错误:权限被拒绝

[2015-07-19 19:48:44]选择失败:权限被拒绝

我正在使用Android Studio,我的设备具有root访问权限,而且我在Mac上.

这就是我想要提取的内容:

在此输入图像描述

编辑:当我运行以下命令时,我收到此错误Package 'com.example.hackbot' has corrupt installation:

run-as com.example.hackbot chmod /data/data/com.example.hackbot/databases/HackBotDB
Run Code Online (Sandbox Code Playgroud)

任何帮助都很有价值.

干杯

android

6
推荐指数
2
解决办法
9016
查看次数

如何在此查询中的GROUP BY之前执行SELECT?

我正在查看SQL执行的顺序,我发现它是:

FROM,
WHERE,
GROUP BY,
HAVING,
SELECT,
ORDER BY
Run Code Online (Sandbox Code Playgroud)

但是在下面的查询中,GROUP BY中使用了"_index",这怎么可能?

SELECT COUNT(ab.id) AS count, COUNT(ab.id)/365.24 AS average,
    IF((SUBSTR(ab.begin, 1, 7) = '2014-08'), '2014-08-18 00:00:00.0 CEST',
    IF((SUBSTR(ab.begin, 1, 7) = '2014-09'), '2014-09-18 00:00:00.0 CEST',
    IF((SUBSTR(ab.begin, 1, 7) = '2014-10'), '2014-10-18 00:00:00.0 CEST',
    IF((SUBSTR(ab.begin, 1, 7) = '2014-11'), '2014-11-18 00:00:00.0 CET',
       '0')))) AS _index
FROM active_begin AS ab 
INNER JOIN asources AS a ON a.id = ab.asource AND a.unit IN (4, 3, 1) 
WHERE (1408226400000 <= ab.begin_time AND ab.begin_time < 1417388400000) …
Run Code Online (Sandbox Code Playgroud)

mysql sql oracle

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

aws lambda:通过其他lambda函数调用函数

我有一个AWS Lambda函数,需要~30秒.当我将其连接到API网关时,由于5秒超时,它正在发送504.所以我的easyCron工作失败了,不会再试一次(我只有一个免费的计划)

所以我需要一个API,它发送一个正确的200状态.我的想法:

通过短期lambda调用长期lambda.该策略允许调用.

这是代码

var AWS = require('aws-sdk'),

	params = {
		FunctionName: 'cctv',
		InvocationType: 'RequestResponse',
		LogType: 'Tail'
	},
	lambda;
AWS.config.update({region: 'us-east-1'});
lambda = new AWS.Lambda();

exports.handler = function (event, context) {
	'use strict';
	lambda.invoke(params, function (err, data) {
		if (err) {
			console.log(err, err.stack);
		}
		else {
			console.log(data);
		}
	});
	context.succeed('hey cron job, I think my lambda function is not called');

};
Run Code Online (Sandbox Code Playgroud)

但我认为,context.succeed()中止了执行lambda.invoke()

你知道如何解决这个问题吗?

invoke amazon-web-services aws-lambda

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

当concurrencyLevel大于ConcurrentHashMap的容量时会发生什么?

我已经在一个问题上摸不着头脑了一段时间,我环顾四周但却未能找到答案.我想知道如果concurrencyLevel大于capacity地图会发生什么.

默认情况下,两者都是16,这意味着每个桶都有一个锁.如果capacity将是32和concurrencyLevel16,将锁定在2个桶上.但是当concurrencyLevel32 岁时才会发生什么capacity

每个铲斗是否由2个锁定,如果分布concurrencyLevelcapacity不均匀,如24和16,或者什么,会发生什么?

java concurrency concurrenthashmap

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