小编bur*_*mre的帖子

psycopg2(插入,更新)编写问题

我可以发送任何问题的选择查询,但当我发送更新和插入查询时,它开始等待线程,不再响应.我不能确定,但​​它似乎是一个循环.

我知道我们必须使用"commit()"来应用更改,但它不起作用.

这是我的代码:

import psycopg2
conn = psycopg2.connect("dbname='test' user='postgres' host='localhost' password='xx");
cursor = conn.cursor()
cursor.execute("UPDATE recording SET rank = 10 WHERE id = 10;")
conn.commit()
cursor.close ()
Run Code Online (Sandbox Code Playgroud)

python psycopg2

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

如何以编程方式使用JDT编译器?

我使用JDT来编译我的java类.BatchCompiler返回一个字符串,但我需要一系列问题/错误及其列和行信息.compiler.compile(单位); 将错误打印到其printwriter,compiler.resolve(unit)正是我想要的,但它只能编译一个java文件.

我用这种方式创建了一个编译器对象:

Compiler compiler = new Compiler(env, DefaultErrorHandlingPolicies.exitAfterAllProblems(), new CompilerOptions(), requestor, new DefaultProblemFactory());
Run Code Online (Sandbox Code Playgroud)

并创建包含文件名和文件内容的CompilationUnits到编译器.

CompilationUnit[] units = project.toCompilationUnit();
Run Code Online (Sandbox Code Playgroud)

AFAIK,有两种编译方式,其中一种是返回void并将错误和问题打印到其PrintWriter的编译(单位)方法,因为它不返回对我没用的列信息.另一种方法是resolve(unit)方法,但它只能使用一个CompilationUnit.

compiler.resolve(units[index], true, true, true);
Run Code Online (Sandbox Code Playgroud)

有谁知道如何以编程方式使用JDT编译器来编译多个文件?

eclipse eclipse-plugin eclipse-jdt java-compiler-api

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

Play2.0返回"SQLException:等待免费可用连接超时".

我一直在使用Play 2.0.2来创建Java应用程序.几天我遇到了问题.在~100请求之后,服务器开始抛出此异常:

[[SQLException:等待免费可用连接超时.]]

我创建的新实例ConnectionDB.getConnection().我没有关闭Connection实例,因为每个请求只有一个实例,据我所知,Connection当活动TCP连接关闭时它会自动关闭实例.我试图增加db.default.connectionTimeout价值,100 seconds但它无法解决问题.然后我检查了活动的Postgresql连接,并且没有活动连接.我也重新启动了Postgresql,但它也无法解决问题.

现在解决这个问题的唯一方法是杀死Play20实例并启动一个新实例.

这是Play2.0创建的日志:

! @6cg9il6ki - Internal server error, for request [GET [AN URL]] ->

play.core.ActionInvoker$$anonfun$receive$1$$anon$1: Execution exception [[SQLException: Timed out waiting for a free available connection.]]
        at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:134) [play_2.9.1.jar:2.0.2]
        at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:115) [play_2.9.1.jar:2.0.2]
        at akka.actor.Actor$class.apply(Actor.scala:318) [akka-actor.jar:2.0.2]
        at play.core.ActionInvoker.apply(Invoker.scala:113) [play_2.9.1.jar:2.0.2]
        at akka.actor.ActorCell.invoke(ActorCell.scala:626) [akka-actor.jar:2.0.2]
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:197) [akka-actor.jar:2.0.2]
Caused by: java.sql.SQLException: Timed out waiting for a free available connection.
        at com.jolbox.bonecp.BoneCP.getConnection(BoneCP.java:503) ~[bonecp.jar:0.7.1.RELEASE]
        at com.jolbox.bonecp.BoneCPDataSource.getConnection(BoneCPDataSource.java:114) ~[bonecp.jar:0.7.1.RELEASE]
        at play.api.db.DBApi$class.getConnection(DB.scala:64) …
Run Code Online (Sandbox Code Playgroud)

java playframework bonecp playframework-2.0

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

在Django 1.5中使用多个AUTH_USER_MODEL的正确方法是什么?

我想为django.contrib.auth模块使用两个不同的模型.第一个是Django提供的默认用户模型,它完全适合管理员访问(组,权限等),但另一个是客户模型,它具有许多不同的属性(城市,区域设置,地址等).默认用户模型.这些用户组必须使用不同的表,并且不得有任何关系.

我创建了一个继承自AbstractBaseUser的Customer模型和一个名为ChangeBaseUser的中间件类,如下所示:

class ChangeBaseUser(object):
    def process_request(self, request):  
        match = resolve(request.path)
        if match.app_name == "myapp":
            settings.AUTH_USER_MODEL = 'myapp.Customer'
        else:
            settings.AUTH_USER_MODEL = 'auth.User'
Run Code Online (Sandbox Code Playgroud)

它工作但我不确定这是否是正确的方法,因为在文档中有一个部分(链接)暗示方便的方法是为默认用户模型分配静态值.

如果这不是正确的方法,您对每个模块有多个用户模型有什么建议吗?

python django django-models django-admin

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

服务器发送事件中的数据限制

我正在使用服务器发送的事件来对数据库执行查询。服务器实时流式传输统计数据stats和事件,当执行查询时,它会发送result带有数据的事件并关闭连接。

您可以使用以下curl命令对其进行测试:

curl 'http://rakam-production-webapp-203653584.us-east-1.aws.getrakam.com/query/execute?read_key=l2drg09t1j04poki16q46nsa7qvjdjhsedcml0e9m8sd87h6olkevq8b7m3m6948&data=%7B%22query%22%3A%22SELECT%20*%20FROM%20collection.%5C%22pull_request%5C%22%22%2C%22limit%22%3A1000%7D' -H 'Accept: text/event-stream'
Run Code Online (Sandbox Code Playgroud)

问题是数据超过几千字节时,EventSource 不会触发result事件。

http://jsbin.com/jiteca/edit?html,输出

如果数据不是那么大,它工作得很好:

http://jsbin.com/leginu/edit?html,输出

我尝试了 Chrome、Safari 和 Firefox,它们都遇到了这个问题。知道如何解决这个问题吗?这是服务器发送事件的限制吗,因为我在 W3 上没有找到有关服务器发送规范的任何内容?

html javascript server-sent-events eventsource

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

赛普拉斯如何聆听全球事件?

我们有一个应用程序会定期轮询服务器,直到任务完成为止。我们触发一个全局事件,以便赛普拉斯可以捕获并确定任务是否已完成,但是document.addEventListener在赛普拉斯上使用时遇到了麻烦。这是我们正在做的:

document.addEventListener('queryEnd', () => {
    cy.get('.chart').should('be.visible')
    cy.get('.table').should('be.visible')
  })
Run Code Online (Sandbox Code Playgroud)

然而; 当我们在规范中使用它时,它无法正常工作,我们也无法捕获它。此外,赛普拉斯不等待测试,afterEach而是在不等待回调运行的情况下运行。

cypress

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

如何检测覆盖的css属性?

我可以使用document.stylesheets获取元素的所有css属性,但其中一些不活动,因为这些属性被覆盖.在firebug中(chrome开发者工具也有这个功能),如果有一个覆盖的css属性,你会看到类似的东西: 在此输入图像描述

我能想到的唯一方法是比较元素(在jQuery中$(element).css(property))和定义的css属性的活动css属性,document.stylesheets但它不是一种可靠的方法.有什么建议吗?

javascript css firebug stylesheet google-chrome-devtools

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

为什么 Java 在使用 lambda 泛型时选择 Object 参数化类型?

假设我有一个接受 java.util.function.Predicate 并返回 CompletableFuture 的方法:

public <R> CompletableFuture<R> call(Predicate<R> request) {
    return new CompletableFuture<>();
}
Run Code Online (Sandbox Code Playgroud)

如果我使用这样的匿名类调用此方法:

Integer a = call(new Predicate<Integer>() {
    @Override
    public boolean test(Integer o) {
        return false;
    }
}).join();
Run Code Online (Sandbox Code Playgroud)

它之所以有效,是因为我必须显式声明谓词的类型。但是,如果我使用 lambda 表达式而不是像这样的匿名类:

Integer a = call(o -> false).join();
Run Code Online (Sandbox Code Playgroud)

它无法编译,因为 Java 认为它是 aPredicate<Object>并返回如下消息:

Error:(126, 42) java: incompatible types: java.lang.Object cannot be converted to java.lang.Integer
Run Code Online (Sandbox Code Playgroud)

我发现了一些解决方法。我可以CompletableFuture显式创建变量而不是链接,或者添加一个不必要的额外参数Class<R>来告诉 Java 我们想要获取哪种类型或强制 lambda 表达式中的类型。

然而我想知道为什么 Java 选择Object而不是Integer在第一个 lambda 示例中,它已经知道我想要获得哪种类型,因此编译器可能会使用最具体的类型,而不是Object因为所有三种解决方法对我来说似乎都很丑陋。

java generics lambda java-8

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

如何使用KCL确定特定分区键的分片ID?

PutRequestAPI使用分区键来确定记录的分片ID.即使PutRequest包含shard id 的响应,它也不可靠,因为分片是可拆分的,因此记录可以移动到新的分片.我找不到一种方法来确定消费者端特定分区键的分片ID.

AWS似乎将分区键映射到128位整数键,但文档中没有解释散列算法.我想要做的是处理具有特定分区键的Kinesis流中的记录,这意味着它们将位于特定分片中,以便我可以只获取特定分片中的数据但我找不到合适的API在文档中.

amazon-web-services amazon-kinesis

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

如何为第三方电子邮件设置Gmail个人资料照片?

我有一个电子邮件地址myname@mycompany.com,我们使用Yandex Mail发送/接收邮件.我还在Yandex Passport中设置了个人资料图片,但是当我从Yandex发送电子邮件到Gmail时,它没有显示在Gmail中.

Gmail如何查找来自第三方服务的电子邮件的个人资料图片?个人资料图片不包含在电子邮件有效负载中,电子邮件提供商不使用全球头像服务,如Gravatar.有什么办法可以让它发挥作用吗?

email gmail email-integration avatar yandex

3
推荐指数
2
解决办法
5544
查看次数