[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] MVC 패턴
·
Back-End/Spring
MVC 패턴 - 개요서블릿과 JSP의 한계서블릿으로 개발할 때는 뷰(View) 화면을 위한 HTML을 만드는 작업이 자바 코드에 섞여 지저분하고 복잡해진다. JSP를 사용하면 뷰를 생성하는 HTML 작업을 깔끔하게 가져가고, 동적으로 변경이 필요한 부분에만 자바코드를 적용할 수 있다. 하지만 JSP 코드 상위 부분의 절반은 비즈니스 로직이고, 나머지 하위 절반은 결과를 HTML로 보여주기 위한 뷰 영역이 된다. JSP에는 Java 코드, Repository 등 다양한 코드가 모두 노출되며 너무 많은 역할을 가져가게 된다.  하나의 서블릿이나 JSP로 비즈니스 로직과 뷰 렌더링을 모두 처리하게 되면 유지보수가 어려워진다. 제일 큰 문제점은 둘 사이에 변경의 라이프 사이클이 다르다는 점이다. 예를 들면 UI..
[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 회원 관리 웹 애플리케이션 요구사항
·
Back-End/Spring
회원 관리 웹 애플리케이션 요구사항기능 요구사항회원 저장회원 목록 조회  회원 도메인 모델id는 Member를 회원 저장소에 저장하면 회원 저장소가 할당한다.package hello.servlet.basic.domain.member;import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class Member { private Long id; private String username; private int age; public Member(){} public Member(String username, int age) { this.username = username; this.age = age; ..
[Security] Spring Security란?
·
Back-End/Security
Spring Security란? 스프링 시큐리티는 스프링 기반의 애플리케이션의 보안(인증, 권한, 인가 등)을 담당하는 스프링 하위 프레임워크이다. Spring Security는 인증과 권한에 대한 부분을 Filter 흐름에 따라 처리한다. 그리고 보안과 관련된 많은 옵션을 제공해주기 때문에 개발자 입장에서는 일일이 보안관련 로직을 작성하지 않아도 된다는 장점이 있다.   Architecture사용자는 Form을 통해 로그인 정보를 입력하고 인증 요청을 보낸다.AuthenticationFilter는 HttpServletRequest에서 사용자가 보낸 아이디와 패스워드를 인터셉트해서 넘어온 로그인 정보의 유효성 검사를 한다. HttpSerlvetRequest에서 꺼낸 사용자 정보를 인증용 객체(Userna..
[Javascript] JSON
·
Back-End/Front-End
[작성일: 2023. 04. 11] JSON 객체REST API 등에서 많이 사용되는 JSON 형태의 데이터를 object로 변환할 수 있고, object를 JSON으로 변환하는 것도 가능함. JSON.parse()         JSON 타입의 데이터를 javascript object로 변환JSON.stringify()   object를 JSON 타입의 데이터를 변환  Javascript JSON Object      JSON(JavaScript Object Notation)객체생성JSON은 맵 구조이기 때문에 key, value가 쌍으로 저장됨.내부 JSON 객체에는 put(K, V)을 통해 넣어주고, 외부 JSON 객체로 묶어서 관리함.JSON은 내부에서 외부 순서대로 데이터를 생성함...
[Javascript] Ajax
·
Back-End/Front-End
[작성일: 2023. 04. 09] AjaxAsynchronus Javascript and XML비동기적인 자바스크립트와 XML빠르게 동작하는 동적인 웹 페이지를 만들기 위한 개발 기법Ajax는 웹 페이지 전체를 다시 로딩하지 않고도 웹 페이지의 일부를 갱신할 수 있음.백그라운드 영역에서 서버와 통신하여 결과를 웹 페이지에 표시할 수 있음. 서버와 아래와 같은 데이터를 주고받을 수 있음.JSONXMLHTML   Ajax의 장점페이지 전체를 로드하지 않고도 일부분만의 갱신이 가능함.페이지가 로드된 후 서버로 데이터 요청을 보내거나 받을 수 있음.다양한 UI(동적 페이지) 구현 가능함.   Ajax의 단점페이지 이동이 없으므로 히스토리 관리가 되지 않음.반복적인 데이터를 요청하면 느려지거나 작동하지 않음.페..
[Javascript] jQuery
·
Back-End/Front-End
[작성일: 2023. 03. 07] jQuery란?요소들을 선택하는 강력한 방법을 사용하고, 선택된 요소들을 효율적으로 제어할 수 있는 라이브러리간결한 문법으로 개발 속도 증가처리 비용 감소   jQuery의 단점순수 자바스크립트보다 속도는 느림파일 자체가 무거움60% 이상의 사이트가 사용 중이나 상황에 맞추어 사용해야 함.   jQuery 기본 문법$("선택자")아이디 : #클래스 : .속성 : 태그명[속성명 = 속성값]태그: 태그명   jQuery 사용법값 가져오기$("선택자").val();$("선택자").text(); 값 변경하기$("선택자").val("값");$("선택자").text("값"); 반복문$.each(iterator, function(index, item){});          🐣 ..