본문 바로가기

Programming/온라인 전시회

Spring 백앤드 설계

1. 새로운 Spring MVC 프로젝트 생성 (java version 맞추어주기

2. Library dependency 추가

3. web.xml : UTF-8 encoding filter 추가

4. root-context.xml 파일에 data source, SqlSessionFactory, SqlSession bean을 등록

5. myBatis config.xml 파일 생성

6. first-mapper.xml 파일 생성

7. FirstVO class 생성 (getters & setters)

8. FirstDAO class 생성 (CRUD methods)

9. FirstService interface 생성

10. FirstServiceImpl class 생성

11. FirstController class 생성

12. jsp 페이지들 제작

 

이전의 모든 사전작업이 끝났다면 하나씩 페이지 뒤 작업부터 진행해보자

 

7. Create the bean class

 

project - java resources - src/main/java - (package name) - FirstVO.java class를 생성한다.

작성해야하는 이름은 반드시!!!!!!! mysql에서 create table 할때 사용했던 변수명으로 작성해야 한다. 그렇지 않으면 제대로 받아오지 못한다. 그 이후에는 우클릭 source - generate getters and setters로 실행시킨다.

 

 

8. Create DAO class

 

방명록을 만드는 것이기 때문에 수정기능과 삭제기능이 필요하지는 않다. 항목을 읽고 생성하는 기능만 필요하지만, 후에 이러한 기능들이 필요할 수 있기 때문에 웹페이지상 들어나지는 않더라도 뒤에서는 기능을 준비해둔다.

 

package com.my.myapp;

import java.util.List;

import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

@Repository
public class FirstDAO {

	@Autowired
	SqlSessionTemplate sqlSession;
	
	public int insertFirst(FirstVO vo) {
		return sqlSession.insert("firstExhi.insertFirst", vo);
	}
	
	public List<FirstVO> getFirstList(){
		return sqlSession.selectList("firstExhi.getFirstList");
	}
	
	// below codes aren't necessary in this web. However just in case I wrote
    // 밑의 코드는 지금은 필요 없다
	
	public int deleteFirst(int seq) {
		      
	      return sqlSession.delete("firstExhi.deleteFirst", seq);
	   }
	   
	public int updateFirst(FirstVO vo){
	      return sqlSession.update("firstExhi.updateFirst",vo);
	   }
	   
	public FirstVO getFirst(int seq) {
	      return sqlSession.selectOne("firstExhi.getFirst", seq);
	   }
}

 

 

9. FirstService interface 생성

 

Controller에서 호출하는 서비스에 포함되는 함수 정의이다.

CRUD함수를 정의한다.

package com.my.myapp;

import java.util.List;

public interface FirstService {
	
	public int insertFirst(FirstVO vo);
	public List<FirstVO> getFirstList();
	
	// 필요한 항목은 여기까
	public int deleteFirst(int seq);
	public int updateFirst(FirstVO vo);
	public FirstVO getFirst(int seq);
}

 

 

10. FirstServiceImpl class 생성

 

 

 

11. FirstController class 생성