웹페이지 제작을 위한 스프링공부

상단메뉴 구성하기 java

풀스택 개발자 2020. 6. 1. 02:52

1.mapper작성 (쿼리문)

 

package kr.co.softcampus.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Select;

import kr.co.softcampus.beans.BoardInfoBean;

public interface TopMenuMapper {
	
	@Select("select board_info_idx, board_info_name " +
			"from board_info_table " + 
			"order by board_info_idx")
	List<BoardInfoBean> getTopMenuList();//sql문 반환 타입
}

 

2.servletcontext java가서 위 mapper를 bean객체로 정의

 

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

 

3.데이터베이스 쿼리문을 실행시킬 dao(데이터베이스에 접속하여 작업처리)클래스 작성

 

 

topmenumapper에 있는 gettopmenulist()메서드를 호출하여 쿼리문을 실행하는 역활을 수행해줌

 

package kr.co.softcampus.dao;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import kr.co.softcampus.beans.BoardInfoBean;
import kr.co.softcampus.mapper.TopMenuMapper;

@Repository
public class TopMenuDao {

	@Autowired
	private TopMenuMapper topMenuMapper; 
	
	public List<BoardInfoBean> getTopMenuList(){
		List<BoardInfoBean> topMenuList = topMenuMapper.getTopMenuList();
		return topMenuList;
	}
}

 

4 dao의 메소드를 호출해서 받아온 정보를 가지고 필요한 처리를 해주는 service 클래스 작성

 

package kr.co.softcampus.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import kr.co.softcampus.beans.BoardInfoBean;
import kr.co.softcampus.dao.TopMenuDao;

@Service
public class TopMenuService {
	
	@Autowired
	private TopMenuDao topMenuDao;
	
	public List<BoardInfoBean> getTopMenuList(){
		List<BoardInfoBean> topMenuList = topMenuDao.getTopMenuList();
		return topMenuList;
	}
	
}

 

 

다음으로 servletappcontext에서 위 클래스들을 스캔합니다

// 스캔할 패키지를 지정한다.
@ComponentScan("kr.co.softcampus.controller")
@ComponentScan("kr.co.softcampus.dao")
@ComponentScan("kr.co.softcampus.service")