CODEDRAGON ㆍDevelopment/Software Engineering
♣수행 내용 - 공통 모듈 작성하기
· 공동모듈로 식별된 오브젝트를 선언(Declaration)한다.
· 오브젝트의 속성(Property)을 정의한다.
· Method 프로토타입을 정의한다.
· I/O 오브젝트(DTO/VO)를 정의한다.
· Input Validation Check 로직을 구현한다.
· Main Logic을 구현한다.
· Output Validation Check 로직을 구현한다.
공동모듈로 식별된 오브젝트를 선언(Declaration)한다.
< 회원가입 Servlet 예제 >
package join;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Joincontroller extends HttpServlet {
@Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //... } } |
오브젝트의 속성(Property)을 정의한다.
JoinDTO dto = new JoinDTO();
JoinDAO dao = new JoinDAO();
PrintWriter out = resp.getWriter();
int result; |
Method 프로토타입을 정의한다.
public JoinDAO() { //... }
public int insertjoin(JoinDTO dto) { //... } |
I/O 오브젝트(DTO/VO)를 정의한다.
public class JoinDTO {
String id; String pw; String name; String nick; String addr; String email; Date birth; public JoinDTO() { } //... } |
Input Validation Check 로직을 구현한다.
if (!this.isType(year, "int")) { error = true; System.err.println("Error: must be a whole number."); } else { error = false; } |
Main Logic을 구현한다.
public class Joincontroller extends HttpServlet {
@Override protected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException { req.setCharacterEncoding("UTF-8"); //한글처리 //req.setCharacterEncoding("EUC-KR"); JoinDTO dto = new JoinDTO(); JoinDAO dao = new JoinDAO(); PrintWriter out = resp.getWriter(); int result; dto.setId(req.getParameter("id")); dto.setPw(req.getParameter("pw")); dto.setName(req.getParameter("name")); dto.setNick(req.getParameter("nick")); dto.setAddr(req.getParameter("addr")); dto.setEmail(req.getParameter("email")); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/mm/dd"); Date date = null; try { //입력받은 년,월,일을 date 포맷으로 변경 date = sdf.parse(req.getParameter("year")+"/" +req.getParameter("month") +"/"+req.getParameter("day")); } catch (ParseException e) { e.printStackTrace(); } dto.setBirth(date); //... } } |
Output Validation Check 로직을 구현한다.
public class Joincontroller extends HttpServlet {
@Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //... result = dao.insertjoin(dto); if(result==0){ System.out.println("Failed"); }else{ System.out.println("Sucsses"); } } } |
'Development > Software Engineering' 카테고리의 다른 글
프레임워크에 대한 이해 - 소프트웨어 프레임워크의 정의, 프레임워크의 특징, 프레임워크의 구성 요소 (0) | 2017.07.21 |
---|---|
단위 테스트(Unit Test), 단위 테스트 도구 적용방법, 단위 테스트는 버그를 찾기 위한 것이 아니다., 하나의 테스트 케이스는 단위 기능 중 하나의 시나리오만 테스트하라. 불필요한 검증 구문을.. (0) | 2017.07.21 |
공통 모듈에 대한 이해, 전자정부 표준프레임워크 구성 (0) | 2017.07.21 |
형상관리 정의, 형상관리 특성 (0) | 2017.07.21 |
개발환경 구성 (0) | 2017.07.21 |