方法 getUsername()'无限递归
时间: 2023-05-30 09:05:02 浏览: 54
可能是因为在方法中调用了自身,导致无限递归。可以检查方法中是否有类似于以下代码:
```
public String getUsername() {
return this.getUsername();
}
```
应该将其改为正确的实现,例如:
```
public String getUsername() {
return this.username;
}
```
或者使用getter方法来获取属性值:
```
public String getUsername() {
return getUsernameFromDatabase();
}
```
相关问题
实现security里UserDetails类发现没有getUsername方法
您好!在 Spring Security 的 UserDetails 接口中确实没有定义 getUsername 方法,而是定义了 getUsername 方法的父接口 UserDetailsService。UserDetails 接口提供了获取用户名的方法 getUsername(),可以通过实现 UserDetailsService 接口来获取用户信息并返回 UserDetails 对象,其中包含了用户名信息。具体的实现可以参考 Spring Security 的官方文档或相关的示例代码。
GetUserName代码
以下是C++中获取当前用户名的代码:
```c++
#include <iostream>
#include <windows.h>
int main() {
char username[UNLEN + 1];
DWORD username_len = UNLEN + 1;
GetUserName(username, &username_len);
std::cout << "Current user: " << username << std::endl;
return 0;
}
```
该代码通过调用Windows API函数`GetUserName`来获取当前用户的用户名。需要包含头文件`windows.h`。该函数的第一个参数是用于存储用户名的缓冲区,第二个参数是缓冲区大小。函数执行成功后,缓冲区中将存储当前用户的用户名。