java接收字符串,进不了if判断

我想写一个前端输入 一个字符串,后端接收,然后,去判断和数据库的数据是否一致,一致的话,就跳转页面到新页面,否则就返回当前的页面,继续书写。但是,现在就是进不了if条件判断,我不知道是怎么回事。
数据库的语句都没有错,也都可以查询

img

因为不能打断点,所以只有用打印来判断。

前端只有一个 输入与登陆

img

前端 用了一个表单提交

img

肯定进不去。 你对象和字符串比较。这怎么能进去。你把你数据库查出来的从对象中get出来就好了

img

数据类型不一样

打印的内容贴一下图

你不是打印了吗?如果进了方法,没进if就说明两边并不相等。你可以把打印的贴出来看看

你都打印了还看不出来为什么进不了if吗?而且为啥不能打断点?

SecretNum类的代码贴出来看一下

equels 的,类型不一致,一个是string类型,一个是SecretNum类型

是不是由于equals两边的对象不同

secretNumInside 是String secretNum是个自定义类SecretNum

这两个类型不同,你将secretNum转换成String试一下

首先确定后端接收到了前端的输入,然后看看气短传过来的有没有空格这些

img


你代码中的相等判断是String类型和SecretNum对象比较,肯定是进不去的。
另外:你代码逻辑可能不太对,你现在的逻辑是根据密码去数据查询数据和现在传进的密码比对是否相等,这个逻辑本事可能就有点迷。
判断登录的话至少应该是传进来账号和密码,根据账号查询数据库密码,然后将传进的密码和查询出的密码比较才是比较正常的逻辑

  1. 入参改成@RequestParam("secretNumInside") String secretNumInside
  2. 入参定义一个类如下,接口入参改成@RequestBody LogonInfo logonInfo
    class LogonInfo {
    private String secretNumInside;
    public String getSecretNumInside() {
    return this.secretNumInside;
    }
    public void setSecretNumInside(String secretNumInside) {
    his.secretNumInside = secretNumInside;
    }
    }