spring
-
스프링 부트 핵심 가이드 3주차 : 6장책 공부/스프링 부트 핵심 가이드 2023. 12. 4. 00:01
📖 책 정보 나를 위한 모바일 가이드 6장 데이터베이스 연동 마리아DB 설치 ORM JPA 하이버네이트 영속성 컨텍스트 데이터베이스 연동 엔티티 설계 리포지토리 인터페이스 설계 DAO 설계 DAO 연동을 위한 컨트롤러와 서비스 설계 6장 마리아DB 설치 ORM JPA 하이버네이트 영속성 컨텍스트 데이터베이스 연동 엔티티 설계 리포지토리 인터페이스 설계 DAO 설계 DAO 연동을 위한 컨트롤러와 서비스 설계 키워드 1. 마리아DB 설치 - 다운로드 아래 사이트에서 다운로드 받으면 된다. 설치는 굉장히 간단한 편! 다운로드 링크 : mariadb.org/download 설치 후 windows terminal에서 편하게 접근하기 위해 환경변수를 설정하고 db접근 계정을 추가/삭제하는 과정을 포스팅 했던 링크를..
-
Spring Boot: 유효성 검증 ValidationSpring Boot 🍃 2023. 12. 4. 00:01
보고 배운 사이트 : mangkyu.tistory + ChatGPT + 인강 검증 어노테이션 객체의 유효성을 검증하기 위해 사용되는 어노테이션이다. 이것들은 주로 클래스의 필드나, 메서드 매개변수에 적용하여 데이터의 유효성을 정의하고 검사한다. 다양한 검증 어노테이션들이 있으며, 몇 가지 대표적인 어노테이션들을 살펴본다. @NotNull null 불가를 의미 @NotEmpty null , "" 불가를 의미 @NotBlank null , "" , " " 불가를 의미 @Size int Type 불가 문자 길이 측정 @Size(min = 6, max = 6) @Past 과거 날짜 @PastOrPresent 오늘이거나 과거 날짜 @Future 미래 날짜 @FutureOrPresent 오늘이거나 미래 날짜 @As..
-
Spring boot: PageableSpring Boot 🍃 2023. 12. 4. 00:01
내용 제공 : Chat GPT Chat GPT와 함께 하는 Pageable 공부 ! 이해가 좀 되면 더 깊이 공부해 볼 사이트 : tecoble.techcourse Pageable 일반적으로 JPA와 함께 사용한다. 페이징 처리를 간편하게 하기 위해 제공되는 인터페이스로, Spring Data JPA 에서 지원한다. Spring Data JPA의 PagingAndSortingRepository 또는 JpaRepository 인터페이스의 메서드 파라미터로 전달될 수 있다. pageable 인터페이스의 구현체는 PageRequest , AbstractPageRequest 가 있다. Spring Data JPA JPA를 좀 더 간편하게 사용할 수 있도록 기능을 확장하고, 보다 쉬운 개발을 지원. PageReq..
-
에러 기록 : Jsoup에러기록 2023. 12. 4. 00:01
에러 코드 C:\Users\xh\.jdks\openjdk-19.0.2\bin\java.exe -XX:TieredStopAtLevel=1 -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-Dmanagement.endpoints.jmx.exposure.include=*" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.3.1\lib\idea_rt.jar=49352:C:\Program Files\JetBr..
-
스크래핑 ScrapingSpring Boot 🍃 2023. 12. 4. 00:01
스크래핑은 웹사이트의 정보 데이터를 긁어오는 행위를 말한다. 스크래핑을 잘못하게 될 경우 소송 걸릴 수 있으니 주의 /robots.txt 스크래핑을 하려는 사이트에서 가져가길 원하지 않는 데이터의 접근 uri를 명시해둔 파일이다. 해당 파일에서 Disallow 라고 적혀있는 주소에만 접근하지 않으면 된다. robots.txt 찾는 방법 : url/robots.txt ex : https://finance.yahoo.com/robots.txt ex : https://finance.naver.com/robots.txt Jsoup을 이용한 스크래핑 예시 String url = "https://search.naver.com/search.naver?where=view&sm=tab_jum&query=%EC%8A%A4..
-
에러 기록 : threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException] with root cause java.lang.ClassCastException에러기록 2023. 12. 3. 00:01
MyBatis를 공부하던 중에 xml mapper를 익혀보려고 Dto 클래스 두 개를 만들어서 다른 하나에 조인을 걸어 출력해 보는 실습을 해보고 있었는데, 계속 오류가 났다. 오류 메시지 2023-05-30T01:05:29.362+09:00 ERROR 12160 --- [nio-8080-exec-6] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.mybatis.spring.MyBatisSystemException] with root cause java.lang.C..
-
Spring Boot MariaDB 연결Spring Boot 🍃 2023. 12. 3. 00:01
보고 배운 블로그 : @sheltonwon 0. MariaDB에 접속할 DB 준비 테스트용으로 생성 ) create database test; 1. dependency 추가 dependencies { runtimeOnly 'org.mariadb.jdbc:mariadb-java-client' } 2. yml 에 설정 추가 spring: datasource: driver-class-name: org.mariadb.jdbc.Driver url: jdbc:mariadb://url:포트번호/db이름 username: 아이디 password: 비밀번호 3. 빠른 db 접속 확인을 위한 jpa dependency 추가 dependencies { implementation 'org.springframework.boot..
-
Spring boot MultipartFile 확장자 알아내기Spring Boot 🍃 2023. 12. 3. 00:01
spring boot 에서 파일 업로드가 붙어있는 게시글을 등록 / 수정하는 페이지에서 파일 업로드를 새로 하지 않았을 경우 기존의 파일명을 가지고 신규 파일 등록을 해버리는 이슈가 발생해서 정리하게 되었다. 다양한 방법이 있겠으나 나의 경우 파일 업로드시엔 파일 확장자가 붙은 이름이 올라오고 파일을 업로드 하지 않은 경우 파일 확장자가 붙어있지 않은 파일 이름만 올라오는 경우가 생겼기 때문에 확장자가 안붙어있으면 파일 업로드를 하지 않는것으로 처리하려고 하기 위해서 파일 확장자를 검사하는 코드를 구해보았다. 보고 배운 블로그 : wildeveloperetrain public String add(HttpServletRequest request, MultipartFile file, BannerInput p..
-
Spring Boot 이미지 html에 출력하기Spring Boot 🍃 2023. 12. 3. 00:01
1. 이미지 저장 위치 확인 배운 곳 1 우선 Spring Boot 를 사용하는 프로젝트에서 이미지 같은 정적 파일들은 다음의 경로에 저장해서 관리되어야 한다. /src/main/resources/static 그리고 정적 파일을 **서버 구동 중에 추가 했다면, ** 바로 정적 파일에 접근할 수 없다. 서버 구동 중 추가된 정적 파일에 접근하기 위해서는 서버 종료 후 재실행 해야 한다. 서버 종료 후 재실행 하지 않고 접근해서 사용하기 위한 방법이 있다고 하는데, 나는 아직 해당 방법들로 성공하지 못했다. 🤨 방법들 : koonsland.tistory 이 부분은 링크만 모아둔 다음에 테스트에 성공하면 정리해야지! 2. Spring Security 적용시 Config에 Ignoring 추가 배운곳 2 스프..
-
ThymeleafSpring Boot 🍃 2023. 12. 3. 00:01
Java 템플릿 엔진으로, 서버 측에서 동적 웹 애플리케이션을 개발할 때 주로 사용한다. dependency 추가 프로젝트 생성할 때 추가해서 만들 수 있고, 프로젝트를 생성한 후라면 spring initializr 사이트를 통해 간편하게 코드를 알아낼 수 있다. 코드가 간단하니 외우는 것도 좋을 것 같다.! dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' } 의존성을 추가해 주면 resources에 아래의 사진처럼 패키지 구조가 잡힌다. static 은 이미지, css, js, 같은 정적 파일을 관리한다. template 는 html 파일을 관리한다. 테스트용으로 사용할 index.html 파일을..