java - 春季启动响应没有得到正确的输出
问题描述
我想创建一个简单的 Spring Boot 应用程序,它采用 JSON 的形式,并将输入与给定的凭据进行比较,即 username:1111 和 password:1 。但我无法将输入值与上述值进行比较。
//Controller class//
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import com.models.Login_object;
@RestController
public class AppController {
@PostMapping(path="/login")
String login(@RequestBody Login_object login_credential) {
if(login_credential.getUsername()=="1111" && login_credential.getPassword()=="1") {
return "welcome";
}
else {
return "you entered:"+login_credential.getUsername()+":"+login_credential.getPassword();
}
}
}
//Login_object 类//
public class Login_object {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
结果应该是:欢迎。但在这里我没有得到预期的输出。
解决方案
你必须使用,equals
而不是==
if("1111".equals(login_credential.getUsername()) && "1".equals(login_credential.getPassword())) {
return "welcome";
}
推荐阅读
- python - Python 迭代器:prev() 和 next() 一样吗?
- node.js - 使用 mongoose 仅更新嵌套 json 文档中的一个元素
- ios - 在 iOS 中编写逐帧更新方法
- autosar - 如何使用具有线性类别的 CompuMethod
- google-cloud-automl - 训练后如何查看给定模型使用了多少计算资源?
- dask - 仪表板地址的 dask 分布式配置文件
- javascript - 儿童事件监听器
- javascript - 在 React js onInput 中处理前导空格和特殊字符
- css - 使用 enableHtml 属性更改 ngx-toastr 默认样式。角 7
- laravel - Laravel 将集合传递给组件