小编use*_*703的帖子

Java:使用占位符的字符串格式

我是Java新手,来自Python.在Python中我们像这样进行字符串格式化:

>>> x = 4
>>> y = 5
>>> print("{0} + {1} = {2}".format(x, y, x + y))
4 + 5 = 9
>>> print("{} {}".format(x,y))
4 5
Run Code Online (Sandbox Code Playgroud)

我如何在Java中复制相同的东西?

python java string format placeholder

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

Django&Redis:我如何正确使用连接池?

我有一个Redis服务器,我几乎在每个Django视图上查询以获取一些缓存数据.我已经对一些stackoverflow问题做了一些阅读,并了解到r = redis.StrictRedis(host='localhost', port=6379, db=0)为每个Web请求创建一个新的Redis连接是不好的,我应该使用连接池.

以下是我在Django中为连接池提出的方法:

settings.py这样我就可以在任何Django的观点很容易拉起来,因为这就像一个全局变量:

# Redis Settings
import redis
REDIS_CONN_POOL_1 = redis.ConnectionPool(host='localhost', port=6379, db=0)
Run Code Online (Sandbox Code Playgroud)

在一些views.py:

from django.conf import settings  
REDIS_CONN_POOL_1 = settings.REDIS_POOL_1   
r = redis.Redis(connection_pool=REDIS_CONN_POOL_1)
r.get("foobar") # Whatever operation  
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是:这是在Django中进行连接池的正确方法吗?对于那些经历过类似场景的人来说,有没有更好的方法?这可能比我在每次请求时打开和关闭与redis的新连接的旧方法更好.

编辑:收集我理解为什么在这个stackoverflow问题的每个请求上打开一个新连接是错误的.

python django redis

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

Spring MVC 4:"application/json"内容类型未正确设置

我有一个使用以下注释映射的控制器:

@RequestMapping(value = "/json", method = RequestMethod.GET, produces = "application/json")
@ResponseBody
public String bar() {
    return "{\"test\": \"jsonResponseExample\"}";
}
Run Code Online (Sandbox Code Playgroud)

我返回一个有效的JSON字符串,但是当我在浏览器中查看Chrome Dev Tools上的响应时,内容类型application/json不仅仅是简单的text/html.为什么没有设置内容类型?

我的web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app metadata-complete="true" version="3.0"
    xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">

    <display-name>Spring MVC Web Application</display-name>

    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <!-- static assets -->
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.js</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
    </context-param>

    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
</web-app>
Run Code Online (Sandbox Code Playgroud)

我的dispatcher-servlet.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" …
Run Code Online (Sandbox Code Playgroud)

java spring json content-type spring-mvc

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

Bash:使用扩展名为目录中的所有文件添加后缀

我想为当前目录中的所有文件添加后缀.

这是我到目前为止搜索stackoverflow和谷歌(并且有点乱),但它一直在失败.我想将字符串附加3.6.16.png我的目录中的所有文件.我可以做前缀部分但我的后缀失败(我猜是因为扩展).

使用bash:

for item in *.png; do mv "$file" "${file}_3.6.14.png"; done
Run Code Online (Sandbox Code Playgroud)

bash

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

Python递归地分割路径

我试图将作为字符串给出的路径拆分为子部分,使用"/"作为分隔符递归并传递给元组.例如:"E:/ John/2012/practice/question11"应该是('E:','John','2012','practice','question11').

所以我已经将除了"/"之外的每个字符都传递给了一个元组,但这并不是我想要的例子中显示的子部分联合.这是家庭作业中的一个练习题,在我尝试学习递归时会很感激帮助.

非常感谢

python recursion split tuples path

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

Python:在列表中获取项目,其中dict键是使用lambda的某个值

是否可以使用lambda获取?我知道我们可以sorted用lambda 做它的功能非常有用.

是否有一种简短的形式来获取列表中的对象,其中键的对象'id'等于让我们说20

我们当然可以在整个事物上使用循环和循环.

x = [
    {'Car': 'Honda', 'id': 12},
    {'Car': 'Mazda', 'id': 45},
    {'Car': 'Toyota', 'id': 20}
    ]

desired_val = None
for item in list:
    if item['id'] == 20:
        desired_val = item
        break
Run Code Online (Sandbox Code Playgroud)

是否可以使用相同的功能lambda?我不是很了解lambda.

python lambda

6
推荐指数
4
解决办法
6089
查看次数

Python反函数的id(...)内置函数

id内置函数是反向还是反向?我正在考虑使用它来编码和解码字符串,而不需要花费太多时间或像PyCrypto库那样有很多开销.对我的需求非常简单,所以我不想PyCrypto用于简单的编码和解码.

就像是:

>>> id("foobar")
4330174256
>>> reverse_id(4330174256) # some function like this to reverse.
"foobar"
Run Code Online (Sandbox Code Playgroud)

python uuid built-in

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

Django:数据库级别或代码级别的TextField(字符串)数据压缩

我制作了 Django 模型,并将测试/虚拟记录插入到 PostgreSQL 数据库后,我意识到每条记录的数据都非常大。所有字段中的数据总和约为每条记录 700 KB。我估计我将拥有大约 500 万条记录,因此这将变得非常大,大约 3350 GB 标记。我的大部分数据都是大型 JSON 转储(每个字段大约 70+ KB)。

我不确定 PostgreSQL 在通过 Django 框架处理时是否会自动压缩我的数据。我想知道在将数据输入数据库之前是否应该压缩数据。

x问题:使用 Django 模型字段类型时,PostgreSQL 是否会使用某种压缩算法自动压缩我的字符串字段TextField

我是否应该依赖 PostgreSQL 并预先压缩我的数据,然后将其输入数据库?如果是这样,我应该使用哪个压缩库?我已经zlib在Python中尝试过了,看起来很棒,但是,我读到gzip也有库,但我很困惑哪个是最有效的(就压缩和解压缩速度以及压缩百分比而言)。

编辑:我正在阅读CompressedTextField 的 Django 代码片段,这引发了我对使用哪个压缩库的困惑。我看到有些人用zlib,有些人用gzip

编辑2:这个stackoverflow问题说PostgreSQL自动压缩字符串数据。

编辑3:PostgreSQL使用pg_lzcompress.c进行压缩,它是LZ压缩系列的一部分。可以安全地假设我们不需要对其本身使用某种其他形式的压缩(zlib或),因为它在数据库本身中是数据类型(可变长度字符串)?gzipTextFieldtext

python database compression django postgresql

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

Python:内联if语句别无效

如果Django Model的字段与条件匹配,则将其分配给值.

g = Car.objects.get(pk=1234)
g.data_version = my_dict['dataVersion'] if my_dict else expression_false # Do nothing??
Run Code Online (Sandbox Code Playgroud)

在那种情况下我怎么办?我们做不到if conditional else pass.

我知道我能做到:

if my_dict:
    g.data_version = my_dict['dataVersion']
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有办法进行内联expression_true if conditional else do nothing.

python django conditional if-statement inline

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

然后jQuery Promise在AJAX之后无法工作

我的Promise定义如下:

myFunc = function() {
    $.getJSON("./rest/api/some/url", function(json, textStatus) {
        console.log("AJAX call hit!");
    });
};


$.when(myFunc()).then(function() {
  console.log("Then block hit!");
});
Run Code Online (Sandbox Code Playgroud)

并在控制台中输出为:

Then block hit!
AJAX call hit!
Run Code Online (Sandbox Code Playgroud)

我需要第AJAX call hit!一个,然后是Then block hit!.

知道为什么会这样吗?我甚至试图实现一个自定义回调函数(我在Stackoverflow上找到的标准示例),它仍然无法正常工作.

javascript ajax jquery promise jquery-deferred

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