Java 如何将两个对象字段作为同一类中的单独方法进行比较 protectedvoiddopost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{ if(action.equals(“登录”)){ ... } else if(action.equals(“编辑”)) {/*获取更新用户的更新信息*/ int userId=Integer.parseInt(request.getParameter(“userId”); userObj=service.getUserById(userId); UserDetails user=getUserInfoFromRequest(请求); 转发=列表\用户; 如果(!(userObj.getFirstName()).equals(user.getFirstName())){ inbox.setMessage(“将用户名从“+userObj.getFirstName()+”更改为“+user.getFirstName()+”,用于用户“+userObj.getFirstName()”); service.addToInbox(user.getUserId(),inbox.getMessage()); } 如果(!(userObj.getLastName()).equals(user.getLastName())){ inbox.setMessage(“将用户“+userObj.getLastName()”的姓氏从“+userObj.getLastName()+”更改为“+user.getLastName()+”); service.addToInbox(user.getUserId(),inbox.getMessage()); } 如果(!(userObj.getEmail()).equals(user.getEmail())){ inbox.setMessage(“将电子邮件从“+userObj.getEmail()+”更改为“+user.getEmail()+”用户“+userObj.getFirstName()”); service.addToInbox(user.getUserId(),inbox.getMessage()); } 如果(!(userObj.getUserName()).equals(user.getUserName())){ inbox.setMessage(“将用户“+userObj.getUserName()”的用户名从“+userObj.getUserName()+”更改为“+user.getUserName()+”); service.addToInbox(user.getUserId(),inbox.getMessage()); } 如果(!(userObj.getPassword()).equals(user.getPassword())){ inbox.setMessage(“将用户“+userObj.getPassword()+”的密码从“+userObj.getPassword()+”更改为“+user.getPassword()+”); service.addToInbox(user.getUserId(),inbox.getMessage()); } if((userObj.getDeptId())!=(user.getDeptId())){ setMessage(“将部门从“+userObj.getDeptName()+”更改为用户“+userObj.getFirstName()”); service.addToInbox(user.getUserId(),inbox.getMessage()); } service.updateUser(用户); 字符串userName=request.getParameter(“用户名”); user=service.getUserByUserName(用户名); 如果(用户!=null){ users=newarraylist(); 用户。添加(用户); } setAttribute(“用户”,用户); RequestDispatcher视图=request.getRequestDispatcher(转发); 视图。转发(请求、响应); }
通过重写该方法来实现 私有类比较扩展UserController{Java 如何将两个对象字段作为同一类中的单独方法进行比较 protectedvoiddopost(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{ if(action.equals(“登录”)){ ... } else if(action.equals(“编辑”)) {/*获取更新用户的更新信息*/ int userId=Integer.parseInt(request.getParameter(“userId”); userObj=service.getUserById(userId); UserDetails user=getUserInfoFromRequest(请求); 转发=列表\用户; 如果(!(userObj.getFirstName()).equals(user.getFirstName())){ inbox.setMessage(“将用户名从“+userObj.getFirstName()+”更改为“+user.getFirstName()+”,用于用户“+userObj.getFirstName()”); service.addToInbox(user.getUserId(),inbox.getMessage()); } 如果(!(userObj.getLastName()).equals(user.getLastName())){ inbox.setMessage(“将用户“+userObj.getLastName()”的姓氏从“+userObj.getLastName()+”更改为“+user.getLastName()+”); service.addToInbox(user.getUserId(),inbox.getMessage()); } 如果(!(userObj.getEmail()).equals(user.getEmail())){ inbox.setMessage(“将电子邮件从“+userObj.getEmail()+”更改为“+user.getEmail()+”用户“+userObj.getFirstName()”); service.addToInbox(user.getUserId(),inbox.getMessage()); } 如果(!(userObj.getUserName()).equals(user.getUserName())){ inbox.setMessage(“将用户“+userObj.getUserName()”的用户名从“+userObj.getUserName()+”更改为“+user.getUserName()+”); service.addToInbox(user.getUserId(),inbox.getMessage()); } 如果(!(userObj.getPassword()).equals(user.getPassword())){ inbox.setMessage(“将用户“+userObj.getPassword()+”的密码从“+userObj.getPassword()+”更改为“+user.getPassword()+”); service.addToInbox(user.getUserId(),inbox.getMessage()); } if((userObj.getDeptId())!=(user.getDeptId())){ setMessage(“将部门从“+userObj.getDeptName()+”更改为用户“+userObj.getFirstName()”); service.addToInbox(user.getUserId(),inbox.getMessage()); } service.updateUser(用户); 字符串userName=request.getParameter(“用户名”); user=service.getUserByUserName(用户名); 如果(用户!=null){ users=newarraylist(); 用户。添加(用户); } setAttribute(“用户”,用户); RequestDispatcher视图=request.getRequestDispatcher(转发); 视图。转发(请求、响应); },java,servlets,Java,Servlets,通过重写该方法来实现 私有类比较扩展UserController{ public class UserDetails { String password; String userName; public boolean compareTo(UserDetails o) { if (!this.password.equals(o.password)) return false; if (!this.userName.equals(o.us
public class UserDetails {
String password;
String userName;
public boolean compareTo(UserDetails o) {
if (!this.password.equals(o.password)) return false;
if (!this.userName.equals(o.userName)) return false;
return true;
}
}
重写equals方法并将所有条件都放在其中。感谢您的支持..但如何实现..您能展示一个我不熟悉的示例代码吗servlets@akhil_mittal再次感谢您,并最终通过覆盖
public class UserDetails {
String password;
String userName;
public boolean compareTo(UserDetails o) {
if (!this.password.equals(o.password)) return false;
if (!this.userName.equals(o.userName)) return false;
return true;
}
}
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Service service = new Service();
UserDetails userObj = new UserDetails();
String action = request.getParameter("action");
Inbox inbox = new Inbox();
if (action.equals("EDIT")) {
System.out.println("Edit in extended class");
int userId = Integer.parseInt(request.getParameter("userId"));
userObj = service.getUserById(userId);
UserDetails user = getUserInfoFromRequest(request);
if(!(userObj.getFirstName()).equals(user.getFirstName())) {
inbox.setMessage("Change of First Name from " +userObj.getFirstName() +" to " +user.getFirstName() +" for user " +userObj.getFirstName());
service.addToInbox(user.getUserId(), inbox.getMessage());
}
if(!(userObj.getLastName()).equals(user.getLastName())) {
inbox.setMessage("Change of Last Name from " +userObj.getLastName() +" to " +user.getLastName() +" for user " +userObj.getFirstName());
service.addToInbox(user.getUserId(), inbox.getMessage());
}
if(!(userObj.getEmail()).equals(user.getEmail())) {
inbox.setMessage("Change of Email from " +userObj.getEmail() +" to " +user.getEmail() +" for user " +userObj.getFirstName());
service.addToInbox(user.getUserId(), inbox.getMessage());
}
if(!(userObj.getUserName()).equals(user.getUserName())) {
inbox.setMessage("Change of Username from " +userObj.getUserName() +" to " +user.getUserName() +" for user " +userObj.getFirstName());
service.addToInbox(user.getUserId(), inbox.getMessage());
}
if(!(userObj.getPassword()).equals(user.getPassword())) {
inbox.setMessage("Change of Password from " +userObj.getPassword() +" to " +user.getPassword() +" for user " +userObj.getFirstName());
service.addToInbox(user.getUserId(), inbox.getMessage());
}
if((userObj.getDeptId()) != (user.getDeptId())) {
inbox.setMessage("Change of Department from " +userObj.getDeptName() +" for user " +userObj.getFirstName());
service.addToInbox(user.getUserId(), inbox.getMessage());
}
}
}
}