小编Had*_*adi的帖子

Spring Data Neo4J @Index(unique = true) 不起作用

我想让用户节点中的 userName 属性唯一。我使用了下面的代码,但它不会在 Neo4j 数据库中创建唯一约束。

@Property(name = "name")
@Index(unique = true)
private String usreName;
Run Code Online (Sandbox Code Playgroud)

仅供参考,我正在使用 Neo4j 服务器版本:3.3.6(社区)和 Spring Boot 2。
但是如果我自己在 Neo4j 浏览器中创建约束,它就可以工作。

CREATE CONSTRAINT ON (user:User) ASSERT user.userName IS UNIQUE
Run Code Online (Sandbox Code Playgroud)

有没有办法强制 Spring Data Neo4J 创建独特的属性,而无需自己在数据库中创建它们?

neo4j spring-data-neo4j spring-boot

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

如何防止在 Angular HttpClient.post 方法中发送空字段?

当我想将信息作为 post 方法发送到我的 Rest API 时,Angular 会发送空字段,随后我的数据库会保存空值。

但我想阻止它,并且我不想将空字段从我的 Angular 发送到我的后端。

例如,在下面的示例中,Angular 在entityTypeName 字段中发送“”,不幸的是,Postgres DB 将保存空而不是空。

{ 
   createdAt: "2019-01-11T13:59:52.311678"
   entityTypeName: ""
   id: "1bd46fce-fc6f-410f-acaf-74d5964cf92b"
   updatedAt: "2019-01-11T13:59:52.311678"
   updatedBy: "admin@admin.com"
   version: 0 
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种通用的解决方案,以防止在所有情况下在 Angular 端发送空值。

angular angular-httpclient

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

Spring AOP 参数


我对 Spring AOP 有疑问。我想在切入点中获取 Student 对象。但我的 JoinPoints 可以以任何优先级拥有该对象。
查看下面的代码片段,了解我创建的两个不同的连接点和切入点:

public Student createStudent(String s, Student student) {...}
public Student updateStudent(Student student, String s) {...}

@Before("args(..,com.hadi.student.Student)") 
public void myAdvice(JoinPoint jp) {
    Student student = null;
    for (Object o : jp.getArgs()) {
        if (o instanceof Student) {
            student = (Student) o;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码仅适用于第一个 JoinPoint。所以问题是如何创建一个切入点,该切点将在输入参数中针对 Student 的任何情况执行。
我无法使用下面的代码,它抛出runtimeException:
@Before("args(..,com.hadi.student.Student,..)")

我让代码变得容易理解,实际上我的切入点比这个大得多。所以请用args方式回答。

java spring spring-aop

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