小编eug*_*ied的帖子

MySQL使用分隔符创建存储过程语法

我试图在MySQL中使用这样的分隔符创建一个存储过程:

use am;

DELIMITER $$

CREATE PROCEDURE addfields()
BEGIN
  DECLARE done INT DEFAULT FALSE;
  DECLARE acc INT(16);
  DECLARE validId INT DEFAULT 0;

END $$

DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

它给了我一个错误:

#1304 - PROCEDURE addfields already exists
Run Code Online (Sandbox Code Playgroud)

使用分隔符创建存储过程并在首先存在时删除它的正确语法是什么?

mysql sql stored-procedures

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

Scala集合:为什么我们需要一个case语句来提取高阶函数中的元组元组?

Map Operations中的Tuple Unpacking相关,我不明白为什么我们需要一个case(看起来像我的部分函数)从元组中提取值,如下所示:

arrayOfTuples map {case (e1, e2) => e1.toString + e2}
Run Code Online (Sandbox Code Playgroud)

相反,以同样的方式提取它的工作原理在foldLeft,例如

def sum(list: List[Int]): Int = list.foldLeft(0)((r,c) => r+c)
Run Code Online (Sandbox Code Playgroud)

无论如何我们没有在第一种情况下指定参数的类型,那么为什么我们需要这个case声明呢?

scala

11
推荐指数
2
解决办法
925
查看次数

SBT 0.13 taskKey宏不适用于[Unit]?

lazy val buildDb = taskKey[Unit]("Initializes the database")

buildDb := {
  (compile in Compile).value
  val s: TaskStreams = streams.value
  s.log.info("Building database")
  try {
    ...
  } catch {
    case e: Throwable =>
      sys.error("Failed to initialize the database: " + e.getMessage)
  }
  s.log.info("Finished building database")
}
Run Code Online (Sandbox Code Playgroud)

这会产生以下错误

C:\work\server\build.sbt:98: error: type mismatch;
 found   : Unit
 required: T
  s.log.info("Finished building database")
            ^
[error] Type error in expression
Run Code Online (Sandbox Code Playgroud)

但是,如果我像这样定义它lazy val buildDb = taskKey[String]("Initializes the database")然后添加到任务"Happy end!"字符串的最后一行似乎一切正常.我应该责怪,还是宏观问题?

scala sbt

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

如何在swagger中隐藏参数?

有没有人成功隐藏生成的文档中的参数?我在这里发现了一个问题,但@ApiParam(access="internal", required=false)以前使用@HeaderParam似乎没有用.

rest scala swagger

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

内部类中的Hibernate会话

我在使用spring session factory在hibernate上获取anonymus内部类的会话时遇到问题.这是代码:

public class DomainDaoImpl extends BasicDaoImpl<Domain> implements Iterable<Collection<Domain>> {

...

@Override
public Iterator<Collection<Domain>> iterator() {
    return (new Iterator<Collection<Domain>>() {
        private int counter = 0;
        public static final int LIMIT = 100;

        ...

        @Override
        @Transactional(readOnly = true)
        public Collection<Domain> next() {
            final Criteria criteria = getCurrentSession().createCriteria(Domain.class);
            final LinkedHashSet<Domain> result = new LinkedHashSet<Domain>();

            List resultList = null;
            while (!(resultList = criteria.list()).isEmpty()) {
                criteria.setFirstResult((counter++ * LIMIT) + 1);
                criteria.setMaxResults(LIMIT);
                result.addAll(resultList);
            }
            return result;
        }

        ...
    });
Run Code Online (Sandbox Code Playgroud)

问题是org.hibernate.HibernateException:找不到当前线程的会话, 这通常发生在DAO方法不在事务中时.那么如何让它与内部类一起工作呢?

java spring annotations hibernate inner-classes

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

打印ModalPanel的内容

是否可以只打印<rich:modalPanel> 的内容?

jsf richfaces

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

为什么我们需要OOP语言中的方法的void返回类型?

这并不是说我昨天开始学习Java,但我突然想到void,如果我们可以返回,为什么我们会使用方法this呢?这样我们可以在对象上链接方法调用并使代码更具可读性(我知道这种方法已经越来越受欢迎,但主要是使用不可变对象,让我们忘记Java Beans约定).我认为唯一void需要的是静态方法.

c# java oop

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

喷涂客户端 - 将具有意外内容类型的响应视为application/json?

当我尝试获取像这样的亚马逊身份数据

val pipeline: HttpRequest => Future[IdentityData] = sendReceive ~> unmarshal[IdentityData]
pipeline(Get("http://169.254.169.254/latest/dynamic/instance-identity/document"))
Run Code Online (Sandbox Code Playgroud)

使用适当的case类和formatter,我收到以下异常

UnsupportedContentType(预期'application/json')

因为亚马逊将其回复标记为文本/纯文本内容类型.他们也不关心Accept header param.是否有一种简单的方法可以告诉spray-json在解组时忽略它?

scala spray playframework-2.0 spray-json spray-client

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

是否有任何理由使用Future [Try [A]]而不是Future [A]类型的API?

考虑到Future结果匹配的任何模式匹配Success[A]Failure[A](onComplete(),andThen())(因为他们期望Try[A]直接或通过部分函数作为参数),是否有一种情况我想明确说明一个函数的类型Future[Try[A]]

monads scala

4
推荐指数
2
解决办法
112
查看次数

Spray-反序列化可选查询参数

spray.io文档页面:

color 提取参数“ color”的值作为字符串

color.? 提取参数“ color”的可选值作为Option [String]

amount.as[Int] 将参数“ amount”的值提取为Int,就需要一个匹配的反序列化器才能使其正常工作(另请参阅解组)

那么如何解析可选Int值?喜欢的东西amount.?.as[Int]似乎并没有工作时。

scala spray spray-routing

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

重命名服务监视器中的指标

阅读本文后,我尝试清理 Spark 3.0.1 中的指标。这是我的 servicemonitor.yml 文件:

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  labels:
    app: spark3
    release:  prometheus
  name: spark3-servicemonitor
spec:
  endpoints:
  - interval: 5s
    port: spark-ui
    path: /metrics/prometheus
    relabelings:
    # Rename metrics
      - sourceLabels: [__name__]
        targetLabel: __name__
        regex: 'metrics_spark_driver_.+_StreamingMetrics_([a-zA-Z_]{1,})_Value'
        replacement: 'spark_driver_$1'
  namespaceSelector:
    matchNames:
    - default
  selector:
    matchLabels:
      spark-version: "3"
Run Code Online (Sandbox Code Playgroud)

我期望进行以下转换:metrics_spark_driver_whateverappid_StreamingMetrics_streaming_lastCompletedBatch_totalDelay_Value -> spark_driver_streaming_lastCompletedBatch_totalDelay 但是重新标记似乎不起作用。您能在这个问题上帮助我吗?

monitoring apache-spark kubernetes prometheus

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

我可以在喷雾中返回Future [Option [Foo]]吗?

到目前为止,我的尝试遇到了java.lang.ClassCastException: scala.runtime.BoxedUnit cannot be cast to scala.Option.事实上,我甚至无法想出适当的反应如何.可能吗?

rest scala spray

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

如何释放返回的malloced字符串?

我有以下两个功能.函数get_string_data(line)mallocs一个字符串并返回它.后来我像这样使用它:

char *get_string_data(char *) {
    char *sec_tok, *result;
    Split *split;
    split = split_string(line, ' ');

    sec_tok = split -> tail;

    if (starts_with_char(sec_tok, '\"') && ends_with_char(sec_tok, '\"')) {
        result = (char *) malloc(strlen(sec_tok) + 1);
        strcpy(result, sec_tok);
        free(split);
        result++;
        *(result + (strlen(result) - 1)) = '\0';
        return result;
    }
    free(split);
    return NULL;
}

void handle_string_instr(char *line) {
    char* data = get_string_data(line);

    ...a few lines later, after I used the data...

    free(data);
    ... end of the world happens here...
} …
Run Code Online (Sandbox Code Playgroud)

c pointers memory-management

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