학습/Java_Spring (7) 썸네일형 리스트형 java로 한글(HWP)파일 읽어서 출력하기 https://github.com/neolord0/hwplib GitHub - neolord0/hwplib: hwp library for javahwp library for java. Contribute to neolord0/hwplib development by creating an account on GitHub.github.com hwplib 을 이용해서 파일의 표을 읽어 콘솔로 출력하는 코드 필요한 데이터들이 표로 작성되어 있어서 표에서 긁어오는 코드를 위주로 작성했는데,다양한 문서 내용을 git의 sample 에서 확인 할 수 있다. 실행은 코드에서 main 부분을 실행하는 형태로 했었는데,sample에서 실행해보려니 빌드 에러 발생부터 잡아야해서기존에 만들었던 코드에서 표 읽는 부분만 samp.. Mybatis일때 Controller에서의 페이징처리 페이징 처리는 다음과 같은 과정으로 이루어집니다:컨트롤러에서 클라이언트의 page 파라미터를 받아 서비스 계층에 전달합니다.서비스 계층에서 pageNumber를 이용해 offset을 계산하고, 매퍼에 offset과 pageSize를 전달하여 데이터를 조회합니다.MyBatis 매퍼에서는 SQL 쿼리에서 LIMIT과 OFFSET을 사용해 페이징 처리를 합니다.Thymeleaf 뷰에서 현재 페이지와 총 페이지 수를 이용해 이전/다음 페이지로 이동할 수 있는 링크를 생성합니다.이 과정을 통해 클라이언트에 필요한 데이터만 전송하여 성능을 최적화할 수 있습니다. Spring Boot와 MyBatis를 사용하여 `board` 테이블에 대한 페이징 처리 예제를 작성해 보겠습니다. 이 예제에서는 `board` 테이블을 .. 자주 사용한 애너테이션 정리 ### @Slf4j `@Slf4j`는 Lombok 라이브러리에서 제공하는 애너테이션으로, 클래스에 로깅 기능을 추가합니다. 이 애너테이션을 사용하면 `log` 객체를 생성할 필요 없이 로깅을 간편하게 사용할 수 있습니다. ```java @Slf4j public class MyClass { public void myMethod() { log.info("This is an info message"); } } ``` ### @RequiredArgsConstructor `@RequiredArgsConstructor`는 Lombok에서 제공하는 애너테이션으로, `final` 필드나 `@NonNull` 애너테이션이 붙은 필드에 대해 생성자를 자동으로 생성해줍니다. 주로 의존성 주입을 위.. Spring Boot에서 하나의 JAR 파일로 빌드하고, 각기 다른 포트로 'admin'과 'user' 컨트롤러를 구분하기 Spring Boot 애플리케이션을 하나의 JAR 파일로 빌드하고, 각기 다른 포트에서 'admin'과 'user' 컨트롤러를 구분하여 노출하는 방법을 알아보겠습니다. 이를 위해 '@Profile' 애너테이션을 사용하여 특정 프로파일에서만 활성화되는 컨트롤러를 정의하겠습니다. #### 1. 프로젝트 설정 먼저 Gradle 설정 파일 'build.gradle'을 작성합니다: '''groovy plugins { id 'org.springframework.boot' version '2.7.17' id 'io.spring.dependency-management' version '1.0.15.RELEASE' id 'java' } group = 'com.example' version = '0... Spring Boot 애플리케이션에서 CORS(Cross-Origin Resource Sharing)를 설정 Spring Boot 애플리케이션에서 CORS(Cross-Origin Resource Sharing)를 설정하여 Access-Control-Allow-Origin: * 헤더를 추가하는 방법을 소개한다. 이렇게 하면 모든 출처(origin)에서 해당 서버에 요청을 보낼 수 있게 된다.1. **Global CORS Configuration:** `WebMvcConfigurer`를 구현하여 애플리케이션의 모든 경로에 대해 CORS 설정을 전역적으로 적용할 수 있다. ```java import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import .. openjdk 설치 1. openjdk 다운로드https://jdk.java.net/java-se-ri/8-MR5링크에서 OS에 맞는것을 다운로드해서 압축을 해제한다.Oracle Linux 8.6 x64 Java Development Kit (sha256) 167 MBWindows 11 i586 Java Development Kit (sha256) 92 MB Java Platform, Standard Edition 8 Reference ImplementationsJava Platform, Standard Edition 8 Reference Implementations The official Reference Implementations for Java SE 8 (JSR 337) are based solely upon ope.. spring.io에서 java 17 이하 버전이 선택되지 않던 이유 java 17 이하 버전은 spring boot 2.7x 이하 버전만 사용할 수 있다. 하지만 spring boot 2.7.x 이하 모든 버전이 2023-11-24 기술지원 종료됨(EOS) https://spring.io/projects/spring-boot#support Spring Boot spring.io 따라서 JAVA 8버전(jdk 1.8)을 지원하던 Spring boot가 기술종료 되었기 때문에, 선택할 수 없었음. 주말에 막히고 나서 알게되었다. JDK 17버전 이상을 사용해야만 한다. 나중에 비용을 위해서 어떤 JDK 버전을 선택하는 것이 최선인지 고민된다. 참고. 스프링 스타터 프로젝트 의존성 확인 https://spring.io/projects/spring-boot#learn 에서 각 .. 이전 1 다음