본문 바로가기

개발언어/SPRING7

[SPRING] invalid LOC header (bad signature) 에러의 원인과 해결 방법 이클립스에서 스프링 프로젝트 실행 시 발생하는 오류 invalid LOC header (bad signature) 원인과 해결 방법에 대해 알아보겠습니다. 오류 : invalid LOC header (bad signature) 위의 에러는 maven을 사용해서 빌드하다 보면 종종 발생하는 현상으로 원인은 압축파일(jar or zip)이 깨져서 프로젝트 실행 시 발생하는 에러입니다. 해결 방법 깨진 압축파일을 정상 파일로 교체 기존에 에러가 발생하고 있던 파일을 repository 폴더에서 지우고 다시 원격 repository에서 다운로드 2번 방법을 이용한 해결 방법 윈도우에 경우에는 C:\Users\사용자이름\.m2\repository 파일 경로에 있는 repository 폴더 내 파일을 전부 삭제(M.. 2021. 8. 21.
[SPRING] 오류 해결 방법 Error creating bean with name 'org.springframework.validation.beanvalidation.OptionalValidatorFactoryBean#0' 오늘 프로젝트에서 발생된 오류이다. 어제까지만 해도 정상적으로 돌아가는 프로젝트였는데 갑자기 아래와 같이 maven에 validation-api 설정 시 오류가 발생했다. 오류 내역 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.validation.beanvalidation.OptionalValidator FactoryBean#0': Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException [17:55:41.836.. 2021. 1. 8.
[SPRING]GenericXmlApplicationContext란? 스프링 객체 생성 방법 오늘은 ApplicationContext.xml 스프링 설정 파일을 이용하여 객체를 생성하고, GenericXmlApplicationContext클래스를 이용하여 생성된 객체를 접근하여 사용하는 방법에 대해 알아보겠습니다. 이해를 쉽게 하기 위해 JAVA코드를 사용한 방식과 스프링 사용한 방식이 어떻게 다른지 간단한 예를 통해 비교해 보겠습니다. 일단 Maven프로젝트를 생성해 주세요. Maven프로젝트 생성 방법은 아래의 링크에 있습니다. [SPRING] Maven 프로젝트 생성 및 설정 방법 오늘은 eclipse를 이용하여 maven 프로젝트를 쉽게 생성하는 방법을 알려드리려고 합니다. 1. File -> New -> Maven Project 선택 또는 File -> New -> Other 선택 2 .. 2020. 3. 18.
[SPRING] Maven설정 파일 pom.xml 의 이해 POM ( Project Object Model ) POM은 프로젝트의 구조와 내용을 설명하고 있으며 pom.xml 파일에 프로젝트 관리 및 빌드에 필요한 환경 설정, 의존성 관리 등의 정보들을 기술합니다. 프로젝트의 세부 메타데이터 정보를 포함한다. - 버전 및 설정 관리, 빌드 환경, 라이브러리 저장소 및 의존성 등등 최소한의 POM 구성 4.0.0 com.mycompany.app my-app 1 project root modelVersion - 4.0.0로 설정 groupId - 프로젝트 그룹 ID artifactId - artifact(프로젝트) Id version - 명시된 그룹의 artifact 버전 위에 정의한 POM은 메이븐이 허용한 최소값입니다. 여기서 groupId, artifactId.. 2020. 3. 16.
[SPRING] BeanUtils.copyProperties을 이용하여 Class간의 property 복사하기 오늘 회사에서 인쇄 기능을 구현하는데 3개의 객체 합쳐 1개의 객체로 데이터를 복사해야 되는 일이 생겼어요. 하지만 3개의 객체를 모두 합치면 필드 개수가 100개가 훨씬 넘는 상황이라 setter를 이용하는 대신 BeanUtils.copyProperties을 이용하여 쉽고 간결하게 코드를 구현할 수 있었습니다. 사용 방법 BeanUtils.copyProperties(source, target); source : 원본 객체 target : 복사 대상 객체 public static void copyProperties(Object source, Object target) throws BeansException Expain: Copy the property values of the given source be.. 2020. 3. 15.
[SPRING] Maven 프로젝트 생성 및 설정 방법 오늘은 eclipse를 이용하여 maven 프로젝트를 쉽게 생성하는 방법을 알려드리려고 합니다. 1. File -> New -> Maven Project 선택 또는 File -> New -> Other 선택 2 . 이 화면은 File -> New -> Other을 선택했을 때 나온 화면입니다. Wizards 검색창에 maven을 입력하고 하위에 나온 목록 중 Maven Project를 선택합니다. 3. Next 버튼을 누릅니다 저는 기본 프로젝트를 생성하기 위해 Create a simple project(skip archetype selection)를 선택했어요. 여기서 archetype이란? 메이븐 프로젝트 tookit입니다. 메이븐 프로젝트에서 사용할 수 있는 모델이나 패턴을 템플릿 화하여 사용자들이.. 2020. 3. 14.
[SPRING]Maven 프로젝트 groupId, artifactId, version 이란? 회사에서는 회사가 정한 명명 규칙이 있기 때문에 메이븐 프로젝트를 생성할 때 groupId, artifactId, version 부분에 대해 특별히 생각해본 적이 없었습니다. 하지만 개인적으로 spring늘 공부하면서 직접 프로젝트를 생성 하다 보니 그 쓰임에 맞게 정확하게 사용 하고 싶었습니다. 오늘은 groupId, artifactId, version의 정의와 사용법 그리고 명명 규칙에 대해 알아 볼게요 groupIdgroupId uniquely identifies your project across all projects. A group ID should follow Java's package name rules. This means it starts with a reversed domain nam.. 2020. 3. 14.