상단메뉴구성, SERVICE

JEONG SUJIN·2022년 12월 25일
0
  • 상단메뉴중 게시판 메뉴를 구성
  • 데이터 베이스에서 게시판이름들을 가져와 메뉴를 구성
  • 상단 메뉴는 모든 요청에 대해 처리해야 하는 부분이므로 Interceptor 에서 처리

com.demo.mapper패키지에서

인덱스 순으로 Board리스트를 가져오는 메서드 작성

public interface MenuMapper {

	@Select("select board_info_idx, board_info_name " + "from board_info_table " + "order by board_info_idx")
	List<BoardInfoBean> getMenuList();
}

ServletAppContext



// 쿼리문 실행을 위한 객체
		@Bean
		public MapperFactoryBean<MenuMapper> getMenuMapper(SqlSessionFactory factory) throws Exception{
			MapperFactoryBean<MenuMapper> factoryBean = new MapperFactoryBean<MenuMapper>(MenuMapper.class);
			factoryBean.setSqlSessionFactory(factory);
			return factoryBean;
		}
		
		@Bean
		public MapperFactoryBean<BoardMapper> getBoardMapper(SqlSessionFactory factory) throws Exception{
			MapperFactoryBean<BoardMapper> factoryBean = new MapperFactoryBean<BoardMapper>(BoardMapper.class);
			factoryBean.setSqlSessionFactory(factory);
			return factoryBean;
		}

객체지향 프로그래밍 (역할별로 분리)

서버에서의 처리과정을 크게 3개로 분리

Controller, Service, Repository

Controller

  • 클라이언트의 요청을 받음
  • 요청에 대한 처리는 서비스에게 전담
  • 클라이언트에게 응답

Service

  • 사용자의 요구사항 처리(비즈니스 로직)
  • DB 정보가 필요할 때는 Repository에게 전담

Repository

  • DB관리 연결,해제,자원관리
  • DB CRUD 작업처리

@Service
public class MenuService {

	@Autowired
	private MenuMapper menuMapper;
	
	public List<BoardInfoBean> getMenuList(){
		List<BoardInfoBean> menuList = menuMapper.getMenuList();
		return menuList;
	}
}

서비스 패키지도 컴포넌트 스캔으로 빈 등록

ServletAppContext.java

@ComponentScan("com.demo.service") // 스캔 추가
profile
기록하기

0개의 댓글