Java 绑定单个sf:具有多个bean属性的输入spring表单标记
我想使用spring标签制作一个表单,这样用户就可以使用他的电子邮件或手机号码或用户名和密码登录Java 绑定单个sf:具有多个bean属性的输入spring表单标记,java,spring,spring-mvc,spring-form,Java,Spring,Spring Mvc,Spring Form,我想使用spring标签制作一个表单,这样用户就可以使用他的电子邮件或手机号码或用户名和密码登录 <sf:form method="POST" modelAttribute="loginBean"> <label for="user_email">User Name/Email/Mobile:</label> <sf:input path="email,mobile,username" value="${user.email}" />
<sf:form method="POST" modelAttribute="loginBean">
<label for="user_email">User Name/Email/Mobile:</label>
<sf:input path="email,mobile,username" value="${user.email}" />
<label for="user_password">Password:</label>
<sf:input path="password" />
<input type="submit" value="submit" />
</sf:form>
我被困在这里,用多个bean属性绑定单个输入标记
请帮帮我。可能有两种方法:
字符串登录
字段和一个带有登录
路径的表单字段。在服务器端,您应该以某种方式识别输入的内容,并根据识别的方式尝试登录3次谢谢你的回答。第一个看起来很不错。请在第二种方法中告诉我,即创建3个表单字段,然后所有表单字段都将对用户可见或仅对一个可见。这取决于您的要求。它可以是单选按钮来选择要使用的字段。或者,当一个字段被填充时,所有3个字段和2个字段都被禁用。
public class LoginBean {
private String email;
private String password;
private String mobile;
private String username;
//getter setter
}
tryLoginWithEmail(loginBeanInstance.getLogin(), loginBeanInstance.getPassoword());
tryLoginWithMobile(loginBeanInstance.getLogin(), loginBeanInstance.getPassoword());
tryLoginWithUsername(loginBeanInstance.getLogin(), loginBeanInstance.getPassoword());
select * from users
where
(name =:loginNameParam and password=:passwordParam)
OR
(email =:loginNameParam and password=:passwordParam)
OR
(mobile =:loginNameParam and password=:passwordParam)