小编Fyn*_*ynn的帖子

使用类型参数键入cast

给定是一个Java方法,它返回java.lang.Object给定字符串的s.我想将此方法包装在Scala方法中,该方法将返回的实例转换为某种类型T.如果转换失败,则应返回该方法None.我正在寻找类似的东西:

def convert[T](key: String): Option[T] = {
  val obj = someJavaMethod(key)
  // return Some(obj) if obj is of type T, otherwise None
}

convert[Int]("keyToSomeInt") // yields Some(1)
convert[String]("keyToSomeInt") // yields None
Run Code Online (Sandbox Code Playgroud)

(如何)使用Scala的反射API可以实现这一目标吗?我很清楚,convert可能必须改变签名.

reflection scala shapeless

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

@CompoundIndex在Spring Data MongoDB中不起作用

我正在使用Spring Data MongoDB处理应用程序.我想在我的一个模型上创建一个复合索引.我在顶部添加了@CompoundIndex注释,如下所示:

@Document
@CompoundIndexes({
    @CompoundIndex(name = "name_", def = "{ 'tenantId': 1, 'name': 1 }", unique = true)
})
public class MyModel {

}
Run Code Online (Sandbox Code Playgroud)

但是,不会创建索引.我也试过直接放置@CompoundIndex上面的类.该集合仍然缺少索引.创建时,相同的索引定义正常工作:

mongoTemplate.indexOps(MyModel.class).ensureIndex(new Index().named("name_").on("tenantId", Direction.ASC).on("name", Direction.ASC).unique());
Run Code Online (Sandbox Code Playgroud)

我更喜欢使用索引的基于注释的定义.任何想法为什么这不起作用?

java indexing spring mongodb spring-data-mongodb

7
推荐指数
2
解决办法
1530
查看次数

检查tmpl_context(Python,Pylons,Genshi)中是否存在变量?

我试图弄清楚如何使用Pylons和Python检查模板上下文'tmpl_context'中是否存在变量.我想要做的是:

我有一个Pylons布局模板.当且仅当变量c.messages存在于上下文中时,这应包含消息部分.消息部分如下所示:

<div py:if="len(c.messages) > 0">
  <py:for each="msg in c.messages">
    <strong>${msg}</strong>
  </py:for>
</div>
Run Code Online (Sandbox Code Playgroud)

如果控制器未定义c.messages,则会产生错误.所以我只想在定义变量时才包含它.有这个问题的解决方案吗?

python pylons genshi

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

更改SQLAlchemy的Session.delete()行为

有没有关于delete()SQLAlchemy的方法的配置可能性Sessions?我想在数据库中标记带有删除标志的相应对象,而不是从中删除.有没有办法实现这个目标?目的是在不失去SQLAlchemy级联功能优势的情况下构建没有破坏性更新的数据库.

mysql sqlalchemy

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

使用JDBC创建PostgreSQL触发器

我试图在Play2.0数据库演变脚本中创建PostgreSQL触发器.sql代码相对简单,在pgAdminIII中运行正常:

CREATE OR REPLACE FUNCTION update_modified() RETURNS TRIGGER AS $$
  BEGIN
    NEW.modified = now();
    RETURN NEW;
  END;
$$ LANGUAGE 'plpgsql';
Run Code Online (Sandbox Code Playgroud)

但是,在运行evolution时遇到错误:ERROR: unterminated dollar-quoted string at or near "$$ BEGIN NEW.modified = now()".SQL代码似乎在函数遇到的第一个分号处被截断.我正在为PostgreSQL使用"9.1-901.jdbc4"JDBC驱动程序.

更新:

Evolutions.scala(219+行)中的代码执行简单的拆分;.在框架本身似乎有缺陷:

// Execute script
s.sql.split(";").map(_.trim).foreach {
  case "" =>
  case statement => execute(statement)
}
Run Code Online (Sandbox Code Playgroud)

有解决方案吗

scala jdbc plpgsql playframework-2.0 postgresql-9.1

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

重复值的唯一约束

我试图定义一个窗体玩!2.0.4具有以下属性和约束:

  1. 表单处理重复值(可以方便地假设这些值是类型number).所以这将使我们得到这样的东西:

    "numbers" -> list(number)
    
    Run Code Online (Sandbox Code Playgroud)
  2. 每个数字必须是唯一的,即它对于提交的所有其他数字必须是唯一的,并且它必须对数据库中已存在的数字是唯一的(这可以通过某些函数检查check(num: Int): Boolean).

  3. 表单错误应该特定于数字,这不是唯一的.我不希望一般表单错误说"有重复的数字".

什么是最好的方式去?

forms scala unique-constraint playframework playframework-2.0

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

删除Neo4j中的索引节点

在Neo4j中,如果删除索引节点,是否必须先从索引中删除该节点,还是自动更新索引?

这是一个小的(未经测试的)示例:

val index = graphDb.index()
val someIdx = index.forNodes("someIdx")
val someNode = graphDb.createNode()
someIdx.add(someNode, "key", "value")
Run Code Online (Sandbox Code Playgroud)

然后:

//remove from someIdx???
someNode.delete()
Run Code Online (Sandbox Code Playgroud)

indexing scala neo4j

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

在Spring中注入不同bean的多个实例

我试图解决Spring DI的问题.我有两个bean(MyFirstBean&MySecondBean)都实现了给定的接口(MyBean).然后我有多个其他bean(例如OtherBean),我想与两个bean中的任何一个使用.自动装配显然失败,OtherBean因为有多个实例MyBean可供选择.是否有可能通常MyBean使用限定符创建自动装配并引用它们的每个bean的两个实例?我知道这可以通过编写配置类来实现,但由于所有这些都是API的一部分,我希望尽可能降低开销.

现在的情况:

public interface MyBean {
}

@Component
public class MyFirstBean implements MyBean {
}

@Component
public class MySecondBean implements MyBean {
}

@Component
public class OtherBean {

    final MyBean myBean; // error due to multiple beans

    public OtherBean(MyBean myBean) {
        this.myBean = myBean;
    }
}
Run Code Online (Sandbox Code Playgroud)

期望情况:

@Component
public class SomeBean {

    final OtherBean myBeanUsingFirstBean; // internally autowires MyFirstBean

    final OtherBean myBeanUsingSecondBean; // internally autowires …
Run Code Online (Sandbox Code Playgroud)

java spring dependency-injection

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

嵌套 JWT 令牌声明

只是一个关于 JWT 规范和常见 JWT 最佳实践的简单问题。我可以/应该使用嵌套对象作为 JWT 令牌声明还是应该使用前缀声明?它似乎都是有效的(至少它都是由https://jwt.io之类的网站解码的),但我不确定是否有关于选择这两个选项中哪一个的指南。

选项1:

{
  "iat": 1516239022,
  "user.firstName": "John",
  "user.lastName": "Doe"
}
Run Code Online (Sandbox Code Playgroud)

选项2:

{
  "iat": 1516239022,
  "user": {
    "firstName": "John",
    "lastName": "Doe"
  }
}
Run Code Online (Sandbox Code Playgroud)

security json jwt

5
推荐指数
0
解决办法
2244
查看次数

Twitter Bootstrap Tooltip数据选择器?

Twitter的Bootstrap Tooltip中使用的数据选择器选项是什么?描述内容如下......

If a selector is provided, tooltip objects will be delegated to the specified targets.
Run Code Online (Sandbox Code Playgroud)

但我不明白它的目的或如何使用它.

javascript jquery css3 twitter-bootstrap

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