Backend 31

spring bean 주입 방법

스프링 프레임워크에서 의존성을 주입하는 방법은 3가지가 있습니다.Constructor Injection (생성자 주입) -> 권장Setter Injection (세터 주입)Field Injection (필드 주입)종류1.Constructor Injection (생성자 주입)클래스의 생성자를 통해 의존성을 주입합니다. 클래스에 필요한 의존성을 생성자 매개변수로 선언하고, Spring은 해당 매개변수에 맞는 Bean을 찾아 주입합니다.주입되는 Bean은 XML 또는 Java Config와 같은 설정 파일에서 정의됩니다.객체가 생성될 때 한 번만 호출됩니다. 즉, 객체가 처음 만들어질 때 필드 값을 초기화합니다.public class MyClass { private MyDependency myDepend..

Backend/spring 2023.05.10

[JAVA] 자바 외부 파일/ 외부 프로그램/ 명령어 실행 (exec)

exec() exec() 메소드는 Runtime 클래스의 getRuntime() 메소드를 사용하여 Runtime 객체를 생성한 다음, Runtime 객체의 exec() 메소드를 호출하여 외부 프로그램을 실행합니다. exec() 메소드는 실행할 외부 프로그램의 이름, 매개변수, 작업 디렉토리 등을 인자로 전달할 수 있습니다. public Process exec(String command, String[] envp, File dir) 매개변수 command: 지정된 시스템 명령. envp: 문자열 배열, 각 요소에 name=value 형식의 환경 변수 설정이 있거나 하위 프로세스가 현재 프로세스의 환경을 상속해야 하는 경우 null입니다. dir: 하위 프로세스의 작업 디렉토리, 하위 프로세스가 현재 프로세..

Backend/JAVA 2023.04.26

JAVA 엑셀 생성

JXLS와 POI는 모두 Java 기반의 엑셀 처리 라이브러리입니다. JXLS 템플릿 기반의 엑셀 생성을 지원하며, 간단하고 직관적인 문법을 제공합니다. 템플릿을 작성하고 데이터를 채워 엑셀 파일을 생성하기 쉽습니다. 다양한 데이터 소스와의 통합이 가능하며, 데이터를 엑셀 파일에 쉽게 매핑할 수 있습니다. 엑셀 파일의 서식과 스타일을 자유롭게 제어할 수 있습니다. POI 엑셀 파일을 생성, 편집, 읽기, 쓰기, 서식 및 스타일 설정, 수식 처리, 그래프 생성 등 다양한 기능을 제공합니다. 다양한 엑셀 파일 버전을 지원하며, Excel 97부터 최신 버전까지의 파일을 처리할 수 있습니다. Apache Software Foundation에서 개발된 오픈 소스로 활발한 커뮤니티와 지속적인 업데이트 및 개선이 ..

Backend/JAVA 2023.04.12

JAVA 정규표현식 replace (Vue 다국어 동적 적용)

Vue의 다국어 적용 Vue에서 다국어 적용을 위해 {{ $t("") }}문법을 사용합니다. {{ ... }}는 Vue.js 템플릿 문법에서 표현식(expression)을 사용할 때 사용되는 구문으로, 표현식은 Vue.js 인스턴스의 데이터(data)와 연결되어 동적으로 렌더링될 값이나 로직을 나타내는 것이 가능합니다. $t("")은 템플릿 내에서 텍스트의 다국어 변환을 위해 사용되는 헬퍼 함수(helper function)입니다. $는 Vue.js에서 전역적으로 사용되는 다국어 변환 객체(Translation Object)를 가리키는 변수로, 이를 통해 다국어 변환을 수행할 수 있습니다. $("")는 빈 문자열에 해당하는 다국어 변환을 수행하는 것을 의미하며, 여기에 실제 다국어 문자열을 넣어주면 해당..

Backend/JAVA 2023.04.11

XMLSlideShow 자바로 PPT파일 수정하기

아래 그림같은 형태의 피피티 화면에서 작성일자를 오늘 날짜로 수정하려고 합니다. 이 글에서는 위치를 이용하여 수정할 거라서 아래 그림처럼 수정하고자 하는 요소의 위치를 알아야합니다. 선택되지 않은 부분에서 표로 보이는 것은 바탕이미지라고 생각해주시고 번호는 설명을위해 붙인걸로 봐주세요!! 이런 형태가 여러개의 슬라이드에 반복적으로 있고 그 중 0부터 카운트해서 3번째위치에 있는 텍스트 박스를 전 슬라이드 일괄 수정합니다. XMLSlideShow XMLSlideShow는 Apache POI 라이브러리를 사용하여 생성된 PowerPoint 프레젠테이션의 내용을 나타내는 Java 객체입니다. getShapes() 이용 getShapes() 메서드는 슬라이드의 모든 객체(shape) 목록을 반환합니다. 객체는 ..

Backend/JAVA 2023.03.05

@RequestMapping @PostMapping @GetMapping 차이

@GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @PatchMapping 어노테이션은 스프링 4.3부터 등장 기존의 RequetMapping과의 차이는? 1. 코드의 간소화 method부분 생략가능. requestMapping도 method를 생략하여 쓸 수 있고 생략하면 get, post방식을 둘다 처리해줌 2. url의 중복사용 url로 (방식이 다른)여러개 매핑이 가능 @RequestMapping 방식 @RequestMapping(value = "/url}", method = RequestMethod.GET) @PostMapping @GetMapping @getMapping("/url") @PostMapping("/url") 구글링해봤을 때 아래 ..

Backend/spring 2022.10.09

spring logback

Spring이나 일반 java 프로그램의 경우 logback.xml 파일을 resources 디렉터리에 만들어서 참조하지만 Spring Boot의 경우에는 아래 3가지 중 한 가지 방법을 선택합니다. application.properties에 설정 resources/logback-spring.xml에 설정 resources/logback.xml에 설정 //logback-spring.xml UTF-8 %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] [%logger{36}:%line] - %msg%n ${LOGS_PATH}/PROJECT_NAME.log UTF-8 %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] [%logger{36}:%..

Backend/spring 2022.06.10

ObjectMapper / JSON 파싱

Object Mapper 1. 직렬화와 역직렬화 직렬화(Serialization) Object -> String 자바 객체를 JSON 형식의 문자열로 변환하는 과정을 의미합니다. 이를 통해 객체의 데이터를 파일이나 네트워크를 통해 전송 가능한 문자열 형태로 변환합니다. 역직렬화(Deserialization) String -> Object JSON 형식의 문자열을 자바 객체로 변환하는 과정을 의미합니다. 이를 통해 JSON 형식으로 전달받은 데이터를 자바 객체로 활용할 수 있습니다. 2. Jackson 라이브러리 Jackson은 JSON 데이터와 자바 객체 간의 변환을 쉽게 처리할 수 있도록 도와주는 강력하고 인기 있는 라이브러리입니다. 자바 개체의 직렬화 및 역직렬화를 처리하는 데 특화되어 있으며, 매우..

Backend/JAVA 2022.06.06