小编cdx*_*dxf的帖子

如何在Controller中使用Session Scoped Component

Count.java:

@Component
@Scope(value = "session",proxyMode = ScopedProxyMode.TARGET_CLASS)
public class Count {
    Integer i;
    public Count() {
        this.i = 0;
    }
Run Code Online (Sandbox Code Playgroud)

控制器:

@Controller
public class GreetingController {
    @Autowired private Count count;
    @RequestMapping("/greeting")
    public String greetingForm(Model model) {
        if(count.i == null) i == 0;
        else i++;
        model.addAttribute("count",String.valueOf(count.i));
        return "greeting";
    }
}
Run Code Online (Sandbox Code Playgroud)

但每次我运行这个控制器(/问候语),它甚至在我关闭浏览器时总是增加i,所以如何在Singleton Controller中使用这个Session Scoped Component?

spring dependency-injection spring-mvc spring-ioc spring-boot

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

@CreationTimestamp和@UpdateTimestamp在Kotlin中不起作用

这是我的Tag和Post Entity类:

@Entity
class Tag(
        @get:NotBlank
        @Column(unique = true)
        val name: String = "",
        val description: String = ""
) {

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE)
    val id: Int? = null


    @ManyToMany(mappedBy = "tags")
    val posts: MutableSet<Post> = mutableSetOf()

    @CreationTimestamp
    lateinit var createDate: Date

    @UpdateTimestamp
    lateinit var updateDate: Date

    fun addPost(post: Post) {
        this.posts.add(post)
        post.tags.add(this)
    }


}



@Entity
class Post(
        @get:NotBlank
        var name: String = "",
        val content: String = ""
) {
    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE)
    val id: Int? = …
Run Code Online (Sandbox Code Playgroud)

spring spring-data spring-data-jpa kotlin

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

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

如何延迟 Rxjs 中的序列发出

我有一个可观察的:

  messages: string[] = ['a', 'b', 'c'];
  const source = from(messages)
Run Code Online (Sandbox Code Playgroud)

如何延迟它,以便当有人订阅它时,它会延迟 n 秒来发出项目?所以:

source.subscribe(i => console.log(i));
// output  ...n seconds... 'a' ...n seconds... 'b' ...n seconds... 'c'
Run Code Online (Sandbox Code Playgroud)

observable rxjs

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

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

如何隐藏我的chrome扩展源代码

最近,我做了一个chrome ext,但是任何人都可以通过将crx重命名为zip并提取它来阅读其源代码,我如何保护我的SC?

google-chrome google-chrome-extension

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

有可能制作一个javascript/html多人游戏吗?

有可能制作一个javascript/html多人游戏(如果我有服务器等)?

javascript

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

为什么警告AnchorElement(<a>)警告href属性?

<a href="url">A link</a>

$.each($('a'), function(index,value){
    alert (value)
});
Run Code Online (Sandbox Code Playgroud)

它会警告:url.为什么会这样?

javascript anchor jquery

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

使用javascript停止表单?怎么了?

   <form onsubmit="return false">
Run Code Online (Sandbox Code Playgroud)

那是有效的.但

     <form method="post" action="" onsubmit="off()">
     function off(){return false); 
Run Code Online (Sandbox Code Playgroud)

不行

html javascript forms function

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

Spring Boot - Hibernate 自定义约束不注入服务

我将尝试忽略其他细节并使其简短:

@Entity
public class User
    @UniqueEmail
    @Column(unique = true)
    private String email;
}

@Component
public class UniqueEmailValidatior implements ConstraintValidator<UniqueEmail,String>, InitializingBean {

    @Autowired private UserService userService;

    @Override
    public void initialize(UniqueEmail constraintAnnotation) {

    }

    @Override
    public boolean isValid(String value, ConstraintValidatorContext context) {
        if(userService == null) throw new IllegalStateException();
        if(value == null) return false;
        return !userService.isEmailExisted(value);
    }

}
Run Code Online (Sandbox Code Playgroud)

这将在 Spring 中进行验证(Spring MVC@Valid或注入Validatorusing @Autowire)时起作用,一切都会好起来的。但是一旦我使用 Spring Data JPA 保存实体:

User save = userRepository.save(newUser);
Run Code Online (Sandbox Code Playgroud)

Hibernate 将尝试在UniqueEmailValidatior不注入UserServicebean 的情况下实例化一个新的。那么如何让 …

spring hibernate-validator spring-boot

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