본문 바로가기 메뉴 바로가기

설계의 품격

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

설계의 품격

검색하기 폼
  • 개발 (183)
    • IT (41)
    • AI (1)
    • 설계 (1)
      • Axure (1)
    • 프로그래밍 (138)
      • SQL (34)
      • Python (18)
      • Linux (2)
      • HTML , CSS (40)
      • JS, jQuery (4)
      • C언어 (8)
      • C++ (1)
      • JAVA (8)
      • Spring (16)
      • JSP (2)
      • Git (3)
      • IntelliJ (2)
    • DB (2)
    • N의 상상 (0)
  • 방명록

전체 글 (183)
Spring Boot Validation 주요 기능

@Size 문자 길이를 제한한다. @NotNull Null을 허용하지 않는다. @NotEmpty Null 또는 빈 문자열("")을 허용하지 않는다. @Past 과거 날짜만 가능 @Future 미래 날짜만 가능 @FutureOrPresent 미래 또는 오늘날짜만 가능 @Max 최대값 @Min 최소값 @Pattern 정규식으로 검증 https://beanvalidation.org/

프로그래밍/Spring 2022. 6. 22. 21:09
Get 과 Post 의 차이

Get은 서버에서 어떤 데이터를 가져와서 보여줄때 사용합니다. 어떤 값이나 내용, 상태등을 바꾸지 않는 경우에 사용을 하는것입니다. 이에비해, Post는 서버상의 데이터 값이나 상태를 바꾸기 위해서 사용합니다.

프로그래밍/Spring 2022. 6. 21. 22:35
리포지터리(Repository)란?

엔티티만으로는 데이터베이스에 데이터를 저장하거나 조회 할 수 없다. 데이터 처리를 위해서는 실제 데이터베이스와 연동하는 JPA 리포지터리가 필요하다. 리포지터리는 엔티티에 의해 생성된 데이터베이스 테이블에 접근하는 메서드들(예: findAll, save 등)을 사용하기 위한 인터페이스이다. 데이터 처리를 위해서는 테이블에 어떤 값을 넣거나 값을 조회하는 등의 CRUD(Create, Read, Update, Delete)가 필요하다. 이 때 이러한 CRUD를 어떻게 처리할지 정의하는 계층이 바로 리포지터리이다.

프로그래밍/Spring 2022. 6. 20. 15:13
엔티티(Entity)란?

엔티티는 데이터베이스 테이블과 매핑되는 자바 클래스를 말합니다. spring-boot-starter-data-jpa 의존성을 추가하고 @Entiy 어노테이션을 붙이면 테이블과 자바 클래스가 매핑이 됩니다. 그래서 JPA에서 '하나의 엔티티 타입을 생성한다'라는 의미는 '하나의 클래스를' 작성한다는 의미가 됩니다. 엔티티라는 용어는 때로는 클래스를 의미하는 경우도 있고, 클래스에 의해 생성된 인스턴스를 의미하는 경우가 있습니다. 정확히 얘기 하자면, 엔티티 클래스 와 엔티티 인스턴스 혹은 엔티티 객체라는 표현이 정확합니다.

프로그래밍/Spring 2022. 6. 20. 14:32
컬럼 생성시에 unsigned 선언 의미

컬럼을 생성할때 활용도에 따라 범위를 다르게 주는 부분이다. id 같은 경우 솔직히 음수는 쓰지 않으므로 int의 범위에서 반은 쓰질 않는다. 이럴때 unsigned를 선언해 주면 그 범위가 양수로 옮겨진다. -2147483648 ~2147483647 에서 0 ~ 4294967295 로 옮겨가는 것이다.

프로그래밍/SQL 2022. 6. 15. 23:03
[타임리프] 페이징 기능

이전 페이지가 없으면 비활성화 th:classappend="${!paging.hasPrevious} ? 'disabled'" 다음 페이지가 없으면 비활성화 th:classappend="${!paging.hasNext} ? 'disabled'" 이전 페이지 링크 th:href="@{|?page=${paging.number-1}|}" 다음 페이지 링크 th:href="@{|?page=${paging.number+1}|}" 페이지 리스트 루프 th:each="page: ${#numbers.sequence(0, paging.totalPages-1)}" 현재 페이지와 같으면 active 적용 th:classappend="${page == paging.number} ? 'active'"

프로그래밍/Spring 2022. 6. 11. 00:28
Spring Boot Validation

화면에서 전달받은 입력 값을 검증하려면 Spring Boot Validation 라이브러리가 필요하다. (... 생략 ...) dependencies { (... 생략 ...) implementation 'org.springframework.boot:spring-boot-starter-validation' } (... 생략 ...) "Spring Boot Validation"을 설치하면 다음과 같은 애너테이션들을 사용하여 입력 값을 검증할 수 있다. 항목설명 @Size 문자 길이를 제한한다. @NotNull Null을 허용하지 않는다. @NotEmpty Null 또는 빈 문자열("")을 허용하지 않는다. @Past 과거 날짜만 가능 @Future 미래 날짜만 가능 @FutureOrPresent 미래 또는..

프로그래밍/Spring 2022. 6. 7. 00:15
서비스가 필요한 이유

서비스가 필요한 이유는 무엇일까? 모듈화 예를들어 어떤 컨트롤러가 여러개의 리포지터리를 사용하여 데이터를 조회한후 가공하여 리턴한다고 가정해 보자. 이러한 기능을 서비스로 만들어 두면 컨트롤러에서는 해당 서비스를 호출하여 사용하면 된다. 하지만 서비스로 만들지 않고 컨트롤러에서 구현하려 한다면 해당 기능을 필요로 하는 모든 컨트롤러가 동일한 기능을 중복으로 구현해야 한다. 이러한 이유로 서비스는 모듈화를 위해서 필요하다. 보안 컨트롤러는 리포지터리 없이 서비스를 통해서만 데이터베이스에 접근하도록 구현하는 것이 보안상 안전하다. 이렇게 하면 어떤 해커가 해킹을 통해 컨트롤러를 제어할 수 있게 되더라도 리포지터리에 직접 접근할 수는 없게 된다. 엔티티 객체와 DTO 객체의 변환 우리가 작성한 Question..

프로그래밍/Spring 2022. 6. 1. 22:20
자주 사용하는 타임리프의 속성

타임리프의 자주 사용하는 속성에는 다음 3가지 유형이 있다. 이 3가지 유형만 알아도 여러 기능을 충분히 만들 수 있다. 1. 분기문 속성 분기문 속성은 다음과 같이 사용한다. th:if="${question != null}" 위의 경우 question 객체가 null 이 아닌 경우에 해당 엘리먼트가 표시된다. 2. 반복문 속성 반복문은 반복횟수만큼 해당 엘리먼트를 반복하여 표시한다. 반복문 속성은 자바의 for each 문과 유사하다. th:each="question : ${questionList}" 반복문은 다음과 같이 사용할 수도 있다. th:each="question, loop : ${questionList}" 추가한 loop 객체를 이용하여 루프 내에서 다음과 같은 속성을 사용할수 있다. loo..

프로그래밍/Spring 2022. 5. 28. 22:04
스프링의 의존성 주입(Dependency Injection) 방식 3가지

@Autowired 속성 - 속성에 @Autowired 애너테이션을 적용하여 객체를 주입하는 방식 생성자 - 생성자를 작성하여 객체를 주입하는 방식 (권장하는 방식) > @RequiredArgsConstructor Setter - Setter 메서드를 작성하여 객체를 주입하는 방식 (메서드에 @Autowired 애너테이션 적용이 필요하다.)

프로그래밍/Spring 2022. 5. 28. 21:59
이전 1 ··· 4 5 6 7 8 9 10 ··· 19 다음
이전 다음
최근에 올라온 글
Total
Today
Yesterday
TAG
  • intellij
  • C언어
  • 소프트웨어 생명주기 모델
  • spring
  • 프로토콜
  • html
  • 선택자
  • 스토어드 프로시저
  • 백준
  • 파이썬
more
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바