본문 바로가기
Spring

[Spring] 07-5. 활용 코드 예시(Service)

by ssunooo 2024. 10. 11.

 

 

간단한 로그인 / 로그아웃 / 글 작성 / 글 검색 코드(Service)

<BoardController.java>

package com.koreait.app.view.board;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import com.koreait.app.biz.board.BoardDTO;
import com.koreait.app.biz.board.BoardService;

@Controller
public class BoardController {
	@Autowired
	private BoardService boardService;
	
	@RequestMapping(value="/main.do")
	public String main(BoardDTO boardDTO, Model model) {
		System.err.println("com.koreait.app.view.board.value=main.do 실행");
		if(boardDTO.getCondition()==null) {
			System.out.println("condition=null");
			boardDTO.setCondition("ALL");
		}
		else {
			System.out.println("condition!=null");
		}
		if(boardDTO.getKeyword() != null && !boardDTO.getKeyword().trim().isEmpty()) {
			System.out.println("keyword!=null");
		}
		else {
			System.out.println("keyword=null");
			boardDTO.setKeyword(null);
		}
		List<BoardDTO> datas=boardService.selectAll(boardDTO);
		model.addAttribute("datas", datas);
		return "main";
	}
	
	@RequestMapping(value="/insertBoard.do", method=RequestMethod.GET)
	public String insertBoard() {
		return "insertBoard";
	}
	@RequestMapping(value="/insertBoard.do", method=RequestMethod.POST)
	public String insertBoard(BoardDTO boardDTO) {
		boolean flag=boardService.insert(boardDTO);
		System.out.println("insertBoard ["+flag+"]");
		return "redirect:main.do";
	}
}

 

<LoginController.java>

package com.koreait.app.view.member;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import com.koreait.app.biz.member.MemberDTO;
import com.koreait.app.biz.member.MemberService;

import jakarta.servlet.http.HttpSession;

@Controller
public class LoginController {
	@Autowired
	private MemberService memberService;
	
	@RequestMapping(value="/login.do", method=RequestMethod.GET)
	public String login() {
		return "redirect:login.jsp";
	}
	@RequestMapping(value="/login.do", method=RequestMethod.POST)
	public String login(Model model, HttpSession session, MemberDTO memberDTO) {
																// 커맨드 객체
		memberDTO = memberService.selectOne(memberDTO);
		
		String viewName="info";
		if(memberDTO != null) {
			System.out.println("로그인성공");
			session.setAttribute("userID", memberDTO.getMid());
			model.addAttribute("info_title", "로그인 성공~!");
			model.addAttribute("info_text", "success");
			model.addAttribute("info_error", "success");
			model.addAttribute("info_path", "main.do");
		}
		else {
			model.addAttribute("info_title", "로그인 실패ㅠㅠ");
			model.addAttribute("info_text", "error");
			model.addAttribute("info_error", "error");
			model.addAttribute("info_path", "login.do");
		}
		return viewName;
	}	
	
	@RequestMapping("/logout.do")
	public String logout(HttpSession session) {
		session.removeAttribute("userID");
		return "redirect:login.do";
	}
}

 

 

 

2024.10.11