애플리케이션 배포 - zeroam/studynote GitHub Wiki

애플리케이션 배포 - 전창원

평가문항 1) 아래와 같이 게시판 프로젝트를 생성하시오

  1. 프로젝트명 : sboard

  2. JAVA 버전 : 1.8

  3. SPRING 버전 : 4.3.20

  • pom.xml 수정 - properties 태그
<properties>
		<java-version>1.8</java-version>
		<org.springframework-version>4.3.20.RELEASE</org.springframework-version>
		<org.aspectj-version>1.6.10</org.aspectj-version>
		<org.slf4j-version>1.6.6</org.slf4j-version>
</properties>

평가문항 2) SPRING 기반 게시판 프로젝트의 각 컴포넌트(Controller, Service, DAO)를 구현하시오

Controller

  • BoardController
@Controller
public class BoardController {

	@RequestMapping(value="/board/list")
	public String list() {
		return "board/list";
	}
	@RequestMapping(value="/board/view")
	public String view() {
		return "board/view";
	}
	@RequestMapping(value="/board/write")
	public String write() {
		return "board/write";
	}
	@RequestMapping(value="/board/modify")
	public void modify() {
		
	}
	@RequestMapping(value="/board/delete")
	public void delete() {
		
	}
}
  • MainController
@Controller
public class MainController {

	@RequestMapping(value="/")
	public String index(HttpSession session) {
		
		MemberVO user = (MemberVO)session.getAttribute("member");
		
		if(user == null) {
			return "forward:/member/login";			
		} else {
			return "forward:/board/list";
		}
	}
}
  • MemberController
@Controller
public class MemberController {

	@Inject
	MemberService mservice;
	
	@RequestMapping(value="/member/login")
	public String login() {
		return "member/login";
	}
	@RequestMapping(value="/member/login", method=RequestMethod.POST)
	public String login(String uid, String pass, HttpSession session) {
		MemberVO member = mservice.login(uid, pass);
		session.setAttribute("member", member);
		return "redirect:/";
	}
	@RequestMapping(value="/member/register")
	public String register() {
		return "member/register";
	}
	@RequestMapping(value="/member/terms")
	public String terms() {
		return "member/terms";
	}
	@RequestMapping(value="/member/idCheck")
	@ResponseBody
	// view가 아닌 객체(데이터)를 클라이언트로 response하기 위한 어노테이션
	public Map<String, Integer> idCheck() {
		Map<String, Integer> map = new HashMap<String, Integer>();
		map.put("result", 0);
		return map;
	}
}

Service

  • MemberService
public interface MemberService {

	public MemberVO login(String uid, String pass);
}
  • MemberServiceImpl
@Service
public class MemberServiceImpl implements MemberService {

	@Inject
	MemberDAO dao;
	
	@Override
	public MemberVO login(String uid, String pass) {
		return dao.login(uid, pass);
	}
}

DAO

  • MemberDAO
@Repository
public class MemberDAO {

	@Inject
	private SqlSessionTemplate mybatis;
	
	public MemberVO login(String uid, String pass) {
		Map<String, String> map = new HashMap<String, String>();
		map.put("uid", uid);
		map.put("pass", pass);
		return mybatis.selectOne("mapper.sql.SELECT_ONE_MEMBER", map);
	}
}
⚠️ **GitHub.com Fallback** ⚠️