최근 정보처리기사 실기와 과제등 할것이 많아서 상세한 정리를 할 여유가 없었다.
하지만 최소 30분은 투자하여 나 자신이 이해할 수 있을정도의 디테일은 살리면서 다시 앞으로
꾸준히 블로그를 적어볼 생각이다.
오늘은 스프링으로 JDBC을 사용하기 위한 설정을 끝낸 후 페이지에 DB버전을 뛰우는 방법에 대해서
적어보려고 한다.
이것을 하는 이유는 국비학원을 가보면 강사님이 매번 수업시작이 버전뛰우는 작업을 매일 시키신다.
나는 연습을 꾸준히 해서 그런지 바로 뛰우지만 스프링이라는 프레임워크가 하나의 오타, 순서가 이상해도
디버그 불가가 뜨기때문에 가장 기초인 버전뛰우기로 시작한다.
그럼 시작하겠다.
우선 전에 썼던 글을 보고 세팅을 끝마치고 Java Resources > controller이라는 패키지를 만들고 HomeController.java파일을 만든다.
HomeController.java의 구성은
package com.itbank.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.itbank.service.TestService;
@Controller
public class HomeController {
@Autowired private TestService testService;
@RequestMapping("/")
public ModelAndView home() {
ModelAndView mav = new ModelAndView("home");
String version = testService.getVersion();
mav.addObject("version",version);
return mav;
}
}
이런 구성으로 되어있는데 Controller의 기능을 하기위해서는 @Controller이라는 것을 class에 import시켜줘야한다.
@AutoWired는 간단히 말하자면 터널과 같은 것이다. 파라미터가 @AutoWired로 연결된 클래스끼리 자동으로 매핑되어
이동할 수 있다.
@RequestMapping은 어떤 JSP파일과 매핑할지를 정하는 기능이다. ("/")이렇게 되어었으면 이 메서드는 JSP의 최상위 폴더인 Deployed Resources > webapp > WEB-INF > views폴도가 된다.
ModelAndView는 home.jsp에 파라이터값을 뛰어준다는 뜻이다(보낸다는 의미).
이렇게 HomeController로 Service클래스와 @AutoWired했으면 Service패키지를 만들고 Service클래스를 만들어준다.
자바파일이 생성되면 getVersion()이라는 메서드를 만들어라고 빨간줄이 뜰건데 메서드를 만들어준다.
package com.itbank.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.itbank.repository.TestDAO;
@Service
public class TestService {
@Autowired private TestDAO dao;
public String getVersion() {
String version = dao.selectVersion();
return version;
}
}
이건 정말 단순하다.
클래스에 @Service를 import해주고 Controller에서 만든 메서드의 반환값을 version으로 지정해주고
DAO클래스에 @AutoWired를 해준다.
package com.itbank.repository;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;
@Repository
public interface TestDAO {
@Select("select banner from v$version")
String selectVersion();
}
DAO에서는 SQl문은 적어줘야 한다. JSP에서 사용하던 PreparedStatement와 같은원리다.
@Repository를 클래스에 import해주고 @Select("SQL문으로 위와같이 써둔다")
이렇게 하고 Controller에서 지정했던 home.jsp를 다시 만들고
Controller에서 mav.addObject로 지정했던 파라미터인 version을
EL태그로 ${version } 이렇게 써주고 실행하면 버전이 뜰것이다.
확실히 간단하다는 느낌이 든다. 하지만 이제부터는 URL의 인코딩, 파일첨부의 다양한 방법,
이외에도 코딩실력이 더욱 필요할것 같다는 생각이 든다.
이제 남은 커리큘럼도 얼마 남지않았기 때문에 페이징도 짧게 배울것 같다. 그렇기에
정신 바짝차리고 할건 많지만 꾸준히 공부할 필요성을 느낀다.
그럼 다음글에서는 Youtube의 영상을 뛰우는 방법에 대해서 적어보도록 하겠다.
'SpringFramework' 카테고리의 다른 글
스프링 프레임워크 - 사진 업로드 (0) | 2023.07.10 |
---|---|
자바 스프링 프레임워크 - 유튜브 영상 뛰우기 (0) | 2023.07.09 |
스프링 프레임워크 초기세팅 (2) | 2023.07.02 |