은 내 DTO 내부 등호 및 해시 코드를 오버라이드 (override) 중복 레코드를 방지 할 수없는 오전 검색 버튼을 클릭에, 데이타베이스에서 데이터를 표시 내 응용 프로그램에 대한 최대 절전 모드라고하기 같지 않음
이것은 내 Employee DTO 클래스이며 equals 메서드가 전혀 호출되지 않고 있습니다. 등호가 당신은 당신의 해시 코드 방법을 살펴 보도록한다
package com.jstlview.hlo;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="EMPLOYEE")
public class EmpHLO {
private String empname,job;
private int empno,deptno;
private double salary,comm;
private Date hiredate;
@Column(name="EMPNAME")
public String getEmpname() {
return empname;
}
public void setEmpname(String empname) {
this.empname = empname;
}
@Column(name="JOB")
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
@Id
@Column(name="EMPNO")
public int getEmpno() {
return empno;
}
public void setEmpno(int empno) {
this.empno = empno;
}
@Column(name="DEPTNO")
public int getDeptno() {
return deptno;
}
public void setDeptno(int deptno) {
this.deptno = deptno;
}
@Column(name="SALARY")
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
@Column(name="COMMISION")
public double getComm() {
return comm;
}
public void setComm(double comm) {
this.comm = comm;
}
@Column(name="HIREDATE")
public Date getHiredate() {
return hiredate;
}
public void setHiredate(Date hiredate) {
this.hiredate = hiredate;
}
@Override
public int hashCode()
{
System.out.println("Inside hashcode");
return empname.hashcode;
}
@Override
public boolean equals(Object obj)
{
System.out.println("Into Equals Method");
boolean flag = false;
EmpHLO emp = (EmpHLO)obj;
if(emp.empname.equals(empname))
flag = true;
return flag;
}
}
어떻게 중복을 제거 하시겠습니까? 그것은 마술처럼 생기지 않을 것입니다 ... –
저는 그 마술이 아니라는 것을 알고 있습니다. 그러나 여기에있는 방법은 위와 같습니다. – Kiran
예, 당신은 방법이 있지만 당신은 그걸 부를까요? 'Set'을 사용하고 있습니까? –