service와 dao 인터페이스로 구현

최주영·2023년 7월 6일
0

인터페이스

목록 보기
1/1
  • 서비스

인터페이스 부분과 인터페이스를 구현한 부분의 클래스 총 2가지 가 필요하다

// 인터페이스 부분
public interface EmpService {
	List<Employee> selectAllEmp(); // 추상메소드
	List<Employee> searchEmp(Map<String,Object> param); // 추상메소드
}
// 인터페이스를 구현한 서비스클래스
public class EmpServiceImpl implements EmpService { // EmpService 인터페이스안의 추상메소드 들을 구현해야함

	private EmpDao dao=new EmpDaoImpl();  
	
	@Override
	public List<Employee> selectAllEmp() {
		SqlSession session = getSession();
		List<Employee> list=dao.selectAllEmp(session);
		session.close();
		return list;
	}

	@Override
	public List<Employee> searchEmp(Map<String, Object> param) {
		SqlSession session = getSession();
		List<Employee> list=dao.searchEmp(session,param);
		session.close();
		return list;
	}
}
  • 서블릿
private EmpService service;
service=new EmpServiceImpl(); // 서비스 클래스 객체를 생성

// service 객체로 추상메소드 부분 로직 실행 가능
  • DAO
// 인터페이스
public interface EmpDao {
	List<Employee> selectAllEmp(SqlSession session);
	
	List<Employee> searchEmp(SqlSession session, Map<String,Object> param);
}
// 인터페이스를 구현한 DAO 클래스
public class EmpDaoImpl implements EmpDao {

	@Override
	public List<Employee> selectAllEmp(SqlSession session) {
		return session.selectList("employee.selectAllEmp");
	}

	@Override
	public List<Employee> searchEmp(SqlSession session, Map<String, Object> param) {
		return session.selectList("employee.searchEmp",param);
	}
}
profile
우측 상단 햇님모양 클릭하셔서 무조건 야간모드로 봐주세요!!

0개의 댓글