Tag: 弹簧

Spring @Autowired在Kotlin

我在我的Kotlin代码中有一个@Autowire注释问题。 有一个代码完美的作品 @Controller open class PaymentController { @Autowired lateinit var autowiredBean: AutowiredBean @RequestMapping(value = "/SomePage", method = arrayOf(RequestMethod.GET)) fun somePage(@RequestParam("param") param: Int): ModelAndView { // some code } } 但添加一些安全检查后,@Autowire注释停止工作 @Controller open class PaymentController { @Autowired lateinit var autowiredBean: AutowiredBean @RequestMapping(value = "/SomePage", method = arrayOf(RequestMethod.GET)) @PreAuthorize("hasPermission('MODULE', 'FINANCE')") fun somePage(@RequestParam("param") param: Int): ModelAndView { // […]

Java Stream with :: new to Kotlin

我试图将以下Spring Security代码从Java转换为Kotlin。 Java的: Collection<? extends GrantedAuthority> authorities = Arrays.stream(claims.get(AUTHORITIES_KEY).toString().split(",")) .map(SimpleGrantedAuthority::new) .collect(Collectors.toList()); 科特林: val authorities = Arrays.stream(claims[AUTHORITIES_KEY].toString().split(",".toRegex()).dropLastWhile { it.isEmpty() }.toTypedArray()) .map(SimpleGrantedAuthority()) .collect(Collectors.toList<SimpleGrantedAuthority>()) 我在.map(SimpleGrantedAuthority())得到一个类型不匹配错误( Required: Function<in String!, out (???..???)>! 如何正确使用::new关键字将上述Java代码转换为Kotlin?