Java Spring 용어 개념 정리(Mybatis, JSTL, Model, ModelAndView)

호연지기·2023년 5월 12일
0

🌮 헷갈렸던 개념 정리

  • 마이바티스(Mybatis) : 데이터베이스 접근용 프레임워크(JDBC)
    자바 퍼시스턴스 프레임워크의 하나로 XML 서술자나 애너테이션(@)을 사용하여 저장 프로시저나 SQL 문으로 객체들을 연결시킨다.

  • JSTL(Jsp Standard Tag Library)

    • 간단한 프로그램 로직 구현(변수 활용, 제어문 등)

    • 다른 jsp 페이지를 포함.

    • 날짜, 시간, 숫자의 형식 지정

    • 문자열 처리 함수 제공

    • JSTL 라이브러리 필요(dependency)

      라이브러리 구성
      1) 코어(core) : 접두어는 'c'. 변수, 제어문 등 포함.
      url - http://java.sun.com/jsp/jstl/core
      2) 포맷(format) : 접두어는 'fmt'. 출력형식 지정
      url - http://java.sun.com/jsp/jstl/fmt
      3) 함수(functions) : 접두어는 'fn'. 기타..
      url - http://java.sun.com/jsp/jstl/functions


🥗 페이지에 라이브러리를 포함시키는 방법

  <%@ tablib prefix="c" uri="http://java....."%>

jsp 페이지 윗줄에 위와 같이 작성.

uri : 태그 라이브러리의 네임 스페이스 URI 식별자
prefix : JSTL 태그를 사용할때 태그 이름 앞에 붙일 접두사


  • Model & ModelAndView : 컨트롤러에서 데이터를 생성해 이를 View에 전달하는 역할

🥗 Model과 ModelAndView의 차이점

Model 방식(파라미터 방식)은 메서드에 파라미터로 넣어주고 String 형태로 반환한다.
ModelAndVIew 방식(컴포넌트 방식)은 ModelAndView 객체를 생성해서 객체 형태로 반환한다.(Model + View를 합쳐놓은 방식)

🌮 컨트롤러 클래스 제작 순서

1. @Controller를 이용해서 클래스를 생성한다.
2. @RequestMapping을 이용해, view의 요청 경로 지정한다.
3. 요청 처리 메소드(로직) 구현한다.
4. 뷰 이름 리턴한다.

🥨 Controller.java

//home페이지 로드 & date 가져오기
@GetMapping("/")
    public String home(Model model){
        log.info("home()");

        Date now = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy년 MM월 dd일 (E)");
        String nowDate = sdf.format(now);
        log.info(nowDate);//데이터 확인용 로그
        model.addAttribute("date",nowDate);//식별자, 데이터
        return "index";
    }

🥨 index.jsp

//index.jsp에서 date Model 활용

<p>오늘은 ${date}입니다.</p>
profile
사람의 마음에 차 있는 너르고 크고 올바른 기운

0개의 댓글