본문 바로가기
728x90
반응형

Back-end/JAVA & Spring135

PMD - Programming Mistake Detector PMD Programming Mistake Detector 전자정부 표준 프레임워크 http://www.egovframe.go.kr/wiki/doku.php?id=egovframework:dev2:imp:inspection 에서 확인가능 합니다. 😎 전자정부 표준프레임워크 표준 Inspection 룰셋 PMD를 이용한 Code Inspection 시 기준이 되는 요소는 룰이며, 전자정부 표준프레임워크에서는 PMD가 제공하는 수 많은 룰 중에서 기본이 될 만한 것들을 간추려 전자정부 표준프레임워크 표준 Inspection 룰셋이라는 이름으로 구성하였다. 전자정부 표준프레임워크의 표준 Inspection 룰셋은 다음의 표와 같은 39개의 룰들로 구성된다. 개별 룰에 대한 상세한 설명은 전자정부 표준 insp.. 2022. 1. 6.
[java]Parameter... 표현 Object... args(동일한 파라메터를 여러개 받을 때, 자동으로 배열처리) 일정하지 않은 개수의 파라미터 (Arbitrary Number of Arguments ) 일정한 형의 변수를 여러 개 전달해야 할 때 사용한다. 메소드 호출시, 일반 파라미터 처럼 넘기고 메소드에서 받은 파라미터는 배열로 사용한다. public class Test{ public static void main(String[] args) { TestClass tc= new TestClass(); } } class TestClass{ public void test(String... strs) { System.out.println(strs[0]);// test1 System.out.println(strs[1]); // test2 } } 2021. 12. 28.
[Spring] @PathVariable 사용법 Request가 들어오는 타입에 따라 ... 받는 방법을 크게 4가지 정도로 나눠서 앞으로 하나씩 살펴보자. URL 변수 (@PathVariable) Query String (@RequestParam) Body Form @PathVariable 이란? REST API에서 URI에 변수가 들어가는걸 실무에서 많이 볼 수 있다. 예를 들면, 아래 URI에서 밑줄 친 부분이 @PathVariable로 처리해줄 수 있는 부분이다. http://localhost:8080/api/user/1234 https://music.bugs.co.kr/album/4062464 사용법 Controller에서 아래와 같이 작성하면 간단하게 사용 가능하다. @GetMapping(PostMapping, PutMapping 등 다 상.. 2021. 12. 28.
@RequestParam과 @PathVariable? 컨트롤러에서 Requestparam으로 파라미터 값을 넘겨받을 때 사용하는 어노테이션 스프링에서는 컨트롤러로 사용할 클래스 상단에 @Controller를 지정합니다. 주로 사용하는 형태의 파라메터를 전달하는 경우입니다. Case 1 ) http://xxx.x.x?index=1&page=2 Case 2 ) http://xxxx.x.x/index/1 Case 1의 경우 파라미터의 값과 이름을 함께 전달하는 방식으로 게시판 등에서 페이지 및 검색 정보를 함께 전달하는 방식을 사용할 때 많이 사용합니다. Case 2의 경우 Rest api에서 값을 호출할 때 주로 많이 사용합니다. Spring에서는 이러한 전달인자를 처리하는데 두 가지 방법을 제공합니다. Case 1의 경우 @Requestparam을 사용하는데.. 2021. 12. 28.
GetMapping 어노테이션으로 다중맵핑하기 @GetMapping 어노테이션은 HTTP GET 요청을 처리하는 메서드를 맵핑(@RequestMapping) 하는 어노테이션이다. 메서드(url)에 따라 어떤 페이지를 보여줄지 결정하는 역할을 한다. 참고로 스프링부트에서는 어떤 HTTP 메서드를 사용할지에 따라 RequestMapping 어노테이션을 아래의 어노테이션으로 구분해서 제공한다. RequestMapping 어노테이션으로 사용가능하지만, 목적에 따라 아래 어노테이션으로 대체사용이 가능하다는 이야기이다. @GetMapping : GET 요청을 하는 API의 어노테이션. 데이터를 가져올 때 사용한다. @PostMapping : POST 요청을 하는 API의 어노테이션 데이터를 게시할 때 사용한다. @PutMapping : PUT 요청을 하는 AP.. 2021. 12. 28.
@RequiredArgsConstructor란? / spring / lombok @RequiredArgsConstructor란? final 필드에 대해 생성자를 만들어주는 lombok의 annotation. Spring Framework의 DI(의존성주입) 중 Constructor Injection(생성자 주입)을 임의의 코드 없이 자동으로 설정 @RequiredArgsConstructor 적용 전 @Component public class LombokTest { private final MyService myservice; private final String id; @Autowired public LombokTest(MyService myservice, String id) { this.myservice = myservice; this.id = id; } @RequiredArgsC.. 2021. 12. 28.
[ffmpeg] 동영상 초마다 이미지 변환 command line + java code import java.io.BufferedReader; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import org.bytedeco.javacv.FFmpegFrameGrabber; import org.bytedeco.javacv.FrameGrabber.Exception; public class cutVideo { public static void main(String[] args) throws IOException { String path = "C:/case_.. 2021. 12. 14.
[JAVA] 자바로 사진(JPEG) 메타데이터[사진정보, GPS] 가져오기 자바 1.5 버전에서는 com.sun.image.codec.jpeg.JPEGCode을 지원해서 자바만으로 메타데이터를 가져올수 있었지만 지금 이 글을 작성하는 시점에서 자바는 1.6버젼 업데이트 37을 일반적으로 사용하고 있으며 1.7버젼도 출시되어 사용되고 있다. 아쉽게도 1.5버전의 com.sun.image는 Sun에서 조차도 사용을 권하고 있지않아 1.6에서는 아예 퇴출 당했다. 고로 메타데이터를 1.6버젼이상에서 가져오라면 라이브러리를 적용해야한다. metadata-extractor-2.6.4 위 라이브러리를 사용해서 메타데이터를 추출하는데 성공했다. #라이브러리를 추가하고 필요한 import import com.drew.imaging.jpeg.JpegMetadataReader; import co.. 2021. 11. 30.
[JAVA] mp4 parser metadata 확인 (mp4 info 확인) mp4 파일들의 메타 데이터를 확인하는 소스 입니다. 해당 mp4에서 정보를 확인 하는 소스 입니다. (라이브러리에 첨부되어있는 jar 파일을 추가해 주세요.) 메이븐 디펜던시 추가시 org.apache.tika tika-core 1.8 org.aspectj aspectjrt 1.7.3 org.apache.tika tika-parsers 1.8 com.googlecode.mp4parser isoparser 1.0.6 마지막 추가된 디펜던지 isoparser 는 첨부된 파일과 버전이 다르다. 1.0.7.1버전이 소멸.. 한거같다 import java.io.File; import java.io.FileInputStream; import java.io.IOException; import org.apache.t.. 2021. 11. 30.
728x90
반응형