본문 바로가기
  • hello world
BackEnd/Spring

[Spring] d

by JJoajjoa 2024. 9. 4.

 

 

@Controller 맛보기

package lx.edu.eleventh;

import java.text.DateFormat;
import java.util.Date;
import java.util.Locale;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

/**
 * Handles requests for the application home page.
 */
@Controller
public class HomeController {

  private static final Logger logger = LoggerFactory.getLogger(HomeController.class);
  //logger : 홈 컨트롤러의 클래스변수 
	
  /**
   * Simply selects the home view to render by returning its name.
   */
  @RequestMapping(value = "/", method = RequestMethod.GET)
  // 이 url로 들어오면 홈 메서드가 실행되는데
  public String home(Locale locale, Model model) {
  //홈 컨트롤러의 메서드
    logger.info("Welcome home! The client locale is {}.", locale);

    Date date = new Date();
    DateFormat dateFormat =
        DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale);

    String formattedDate = dateFormat.format(date);

    model.addAttribute("serverTime", formattedDate);

    return "home";
    //문자열을 리턴하는데 이 문자열은 home.jsp 파일을 의미
  }

}

 

 

 

Framework 프레임워크

  • 클래스와 패턴의 집합
    클래스: 필드 메서드 생성자의 집합
    패턴: GoF패턴과 자바EE패턴
  • 반제품 소프트웨어(절반은 만들어져있음!)
  • 아키텍처와 디자인 패턴의 집합
    시골의 단독주택 또는 빌딩이 있을 수 있는데 그런것들의 아키텍처는 다르다
    공장의 건물의 뼈대는 서로 다르다 -> 모델1, 모델2, MVC 
    JSP가 있는데 ajax를 썼을 때 좋아지는 점: 화면을 깜빡이지 않고도 화면의 일부가 바뀜
    관점: 어떻게하면 좀더 깔끔하고 쉽고 빠르게 개발하지 해서 만들어진 기술들
  • 재사용 가능한 API의 집합
  • 다계층적, 여러 클래스 및 컴포넌트의 집합


기존 code를 수정해야하는 일이 발생
→ 불안해 어디서 무슨 문제가 생길지 장담할 수 없음
→ 기존의 코드는 안고쳐도 될 수있게 만들어놓음
→ 기능에 해당하는 클래스를 만들어서 넣기만하면 끝!

 

장점: 개발생산성높아짐, 코드재사용높아짐, 고품질코드, 변경용이, 이식성증대, 운영용이성

 

 

 

 

 

 

 

 

 

'BackEnd > Spring' 카테고리의 다른 글

[Spring] Maven project 시작하기  (5) 2024.09.04