小编Gáb*_*ani的帖子

如何从命令行调用带有参数的mysql存储过程?

如何从命令行调用存储过程?

我有一个程序:

CREATE DEFINER=`root`@`localhost` PROCEDURE `insertEvent`(IN `dateTimeIN` DATETIME)
    NO SQL
BEGIN
    SET @eventIDOut = NULL;

    IF  EXISTS(SELECT * FROM `events` WHERE `eventDate` = dateTimeIN) THEN
        SELECT `eID` INTO @eventIDOut FROM `events` WHERE `eventDate` = dateTimeIN LIMIT 1;
        ELSE
        INSERT INTO `events` (`eventDate`) VALUES(dateTimeIN);
        SET @eventIDOut = last_insert_id();
    END IF;

    SELECT CONCAT(@eventIDOut);
END
Run Code Online (Sandbox Code Playgroud)
  1. 我试过这个: mysql> CALL insertEvent(2012.01.01 12:12:12);

    结果:

    错误1064(42000):您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在第1行的".01 12:12:12"附近使用正确的语法

  2. 还有这个: mysql> CALL insertEvent

    -> 2012.01.01 12:12:12;

    结果:

    错误1064(42000):您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第2行的"2012.01.01 12:12:12"附近使用正确的语法

mysql command-line procedure call

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

如何通过指定.php文件名在Rewrite Rules中传递参数?

我有一个站点,它成功地将第一个斜杠后的内容传递给指定的.php文件.(优雅地:删除".php")

site.com/azamat to site.com/azamat.php

RewriteCond %{REQUEST_FILENAME} !-d    
RewriteCond %{REQUEST_FILENAME}\.php -f   
RewriteRule ^(.*)$ $1.php [NC]
Run Code Online (Sandbox Code Playgroud)

如何向这些规则添加其他参数,以便我可以传递"页面"参数,例如:

site.com/azamat/bagatov to site.com/azamat.php?page=bagatov

要么

site.com/thisisthefile/andparams to site.com/thisisthefile.php?page=andparams

php .htaccess rewrite query-string

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

确定Java HashMap中最低可用键的最快方法?

想象一下这样的情况:我有一个HashMap<Integer, String>,我在其中存储连接的客户端。是的HashMap,因为顺序无关紧要,我需要速度。它看起来像这样:

{
    3: "John",
    528: "Bob",
    712: "Sue"
}
Run Code Online (Sandbox Code Playgroud)

大多数客户端断开连接,所以这就是为什么我有很大的差距。如果我想添加一个新客户端,我需要一个密钥,显然_map.size()获取密钥的用法是不正确的。

所以,目前我使用这个函数来获取最低可用键:

private int lowestAvailableKey(HashMap<?, ?> _map) {
    if (_map.isEmpty() == false) {
        for (int i = 0; i <= _map.size(); i++) {
            if (_map.containsKey(i) == false) {
                return i;
            }
        }
    }

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在某些情况下,这真的很慢。有没有更快或更专业的方法来获得 a 的最低自由键HashMap

java key hashmap

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

Spring WebSecurityConfigurerAdapter 允许 POST 吗?

我想为我网站上的某个“/interface” URL 启用 POST 请求。我已经成功地通过存在Class<?>[] getRootConfigClasses()的指定 CSP 标头加载了该类HttpSecurity http

每当我向 提出请求时/interface,我都会得到HTTP 403

@Configuration
@EnableWebSecurity
public class WebSecurityConfiguration extends WebSecurityConfigurerAdapter
{

    @Override
    protected void configure(HttpSecurity http) throws Exception
    {
        http
            .authorizeRequests().antMatchers(HttpMethod.POST, "/interface").permitAll().and()
            .headers()
            .contentTypeOptions().and()
            .cacheControl().and()
            .httpStrictTransportSecurity().and()
            .frameOptions().and()
            .contentSecurityPolicy("the csp header. it is present on every response.");
    }
}
Run Code Online (Sandbox Code Playgroud)

java spring http

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

docker多阶段构建期间的Gradle依赖项缓存?

我有以下 Dockerfile

FROM gradle:jdk13 AS appbuild
WORKDIR "/home/gradle/"
COPY --chown=gradle:gradle "./build.gradle" "/home/gradle/"
RUN gradle dependencies
COPY --chown=gradle:gradle "./src/" "/home/gradle/src/"
RUN gradle build --info

FROM openjdk:13
ENV LANG en_US.UTF-8
COPY --from=appbuild "/home/gradle/build/libs/frontend.jar" "/frontend.jar"
CMD ["java", "-jar", "-Dspring.profiles.active=default", "/frontend.jar"]
Run Code Online (Sandbox Code Playgroud)

我的目标是在每次构建 docker 镜像时防止 gradle 下载依赖项。

该命令会gradle dependencies下载所有必需的 Java 库,以防它们丢失。

在第一个gradle dependencies命令之前,我只复制了 build.gradle 以便只下载依赖项并缓存它们。

当我运行gradle build命令时,它为什么要再次下载所有文件?它们已经存在于其中一层中。

我试过用RUN gradle clean build --info || return 0而不是gradle dependencies,都是一样的。

dependencies build gradle multistage docker

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

如何将Java中的字符串拆分为不同大小的部分?

我有一个时间戳:200212312359 我怎么能把它拆分成2012.12.31.23.59

简单的方法是.split("(?<=\\G.{2})"),然后结合阵列的前2个元素,但我想知道是否有任何更专业的解决方案.

java regex split

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