본문 바로가기
728x90
반응형

Back-end/JAVA & Spring135

[Spring] Controller에서 데이터 받기 Controller은 비지니스 로직을 처리하고 데이터를 가공한다. 이때 비지니스 로직을 처리하기위해 controller에서 데이터를 받는 방법에 대해서 알아보자. 크게 HttpServletRequest, @RequestParam, @RequestBody, @ModelAtrribute, @PathVariable이 있다. 다음 URL로 요청을 보낸다고 가정하자. http://localhost:8080/getInfo?id=3 HttpServletRequest.getParameter() 클라이언트의 요청정보를 확인하게해주는 HttpServletRequest를 이용하기 @GetMapping("/getInfo"); public void getInfo(HttpServletRequest request){ log.inf.. 2021. 10. 21.
[문제해결] Several ports (8005, 8080, 8009) required by Tomcat v7.0 Server at localhost are already in use. 1. 문제상황 > 개발중 비정상적인 was 종료로 인해 다음과 같은 에러와 함께 재시작 되지 않는다. 실 운영환경에서도 이런경우가 있다. Several ports (8005, 8080, 8009) required by Tomcat v7.0 Server at localhost are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s). 2. 문제확인 > was 재시작을 위한 포트가 이미 사용중이기 때.. 2021. 10. 5.
[Java/jsp] 자바로 이미지를 base64 인코딩 소스로 변환하는 함수 자바로 이미지를 base64 인코딩 소스로 변환하는 함수입니다. 필요하실 때 참고하세요. public static String getBase64String( String[] imageUrl, String content ) throws Exception{ if( imageUrl.length > 0 ) { int imageUrlLength = imageUrl.length; String[] imageString = new String[ imageUrlLength ]; for( int i = 0; i < imageUrlLength; i++ ) { String filePathName = imageUrl[i].replace(“file:///”, “”); String fileExtName = filePathName... 2021. 10. 1.
ImageIO.write()를 이용하여 이미지 파일을 생성하는 예 ImageIO.write() 는 다음과 같 3가지 형태로 사용할 수 있다. static boolean write(RenderedImage im, String formatName, File output) static boolean write(RenderedImage im, String formatName, ImageOutputStream output) static boolean write(RenderedImage im, String formatName, OutputStream output) 다음은 위에 제시된 방법 중 첫번째, File 클래스를 이용하여 이미지 파일을 생성하는 예이다 3번째 방법을 이용하면 Socket 등으로 연결된 원격 시스템에 이미지 데이터를 전달할 수도 있다. // URL 클래스를 이.. 2021. 9. 30.
[Java] StringUtils.isBlank 와 StringUtils.isEmpty 차이 java에서 get() NullPointerException 일때 자바 기본 라이브러리 외에 가장 빈번하게 사용되는 라이브러리로 Apache common 라이브러리를 들 수 있다. 이 중 StringUtils 패키지는 문자열 처리 시에 유용한 기능들을 많이 제공한다. isBlank와 isEmpty의 차이점은 아래 예제와 같이 공백(whitespace) 처리이다. isBlank의 경우 공백을 blank 즉, 비어있는 값으로 처리하며 isEmpty의 경우 공백을 비어있지 않다고(isEmpty가 false) 리턴한다. StringUtils.isBlank: 공백을 빈값으로 처리 StringUtils.isBlank(null) = true StringUtils.isBlank("") = true StringUtils.. 2021. 9. 30.
[Java] base64 인코딩 디코딩 (encoding / decoding) 일단 인코딩, 디코딩을 쉽게 설명을 하면 "hello world" 라는 단어를 인코딩을 하면 base64형태로 인코딩 됩니다. base64를 디코딩하면 "hello world"라고 나오게 되는 것이죠 자바 버전별로 사용되는게 너무많아서 찾다보니 stackoverflow에 잘 정리된 글이 있어서 참조했습니다. 1. Java 6 and Java 7 java6부터는 javax.xml.bind.DatatypeConverter를 사용할 수 있습니다. 이건 jre의 일부이면 별도의 라이브러리가 필요하지 않습니다. encoding 사용예제) byte[] message = "hello world".getBytes("UTF-8"); String encoded = DatatypeConverter.printBase64Bin.. 2021. 9. 30.
base64인코딩한 이미지를 디코딩하여 저장 public class Base64ToImgDecoder { public static boolean decoder(String base64, String target){ String data = base64.split(",")[1]; byte[] imageBytes = DatatypeConverter.parseBase64Binary(data); try { BufferedImage bufImg = ImageIO.read(new ByteArrayInputStream(imageBytes)); ImageIO.write(bufImg, "jpg", new File(target)); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTr.. 2021. 9. 30.
[Java] Base64 인코딩, 디코딩하는 방법 이 글은 Java에서 Base64를 다루는 방법을 설명한 글입니다. 먼저 base64에 대해서 설명하겠습니다. base64는 원래는 복잡한 이유와 설명이 있는 데 간단하게 설명하면 우리가 byte 형식으로 되어진 binary데이터를 프로그램 간에 좀 더 다루기 편하게 ascii코드로 이루어진 데이터를 base64라고 합니다. 더 간단하게 이야기 하면 「byte데이터나 stream 데이터를 string 형식으로 표시한 것입니다. 그러나 그 string형식도 encoding에 관계없는 ascii코드로 되어있다.」라고 알고 있으면 이해하기 쉽습니다. 먼저 간단한 파일을 읽어서 base64형식으로 변환하겠습니다. 제 pc의 d드라이브의 work라는 폴더에 hello world라고 작성한 텍스트 파일(test.t.. 2021. 9. 30.
[메이븐] 메이븐 다운로드 및 설치(maven download) 0. 아래 URL에서 메이븐 최신버전을 다운받자.(Binary Zip 파일) https://maven.apache.org/download.cgi 1. 다운받은 파일을 적당히 압축을 풀자(저의경우 d:\java 폴더에 다운받아서 압축을 풀었습니다. D:\java\apache-maven-3.3.3) 2. 환경변수에서 MAVEN_HOME을 "D:\java\apache-maven-3.3.3"로 주고 PATH에 "D:\java\apache-maven-3.3.3\bin"을 추가하자. 컴퓨터 -> 속성 -> 고급 -> 환경변수 3. mvn -v 명령으로 설치괸 메이븐의 버전을 확인하면서 경로설정이 잘되었는지 확인하자. 더보기 출처 : http://ojc.asia/bbs/board.php?bo_table=LecGrad.. 2021. 9. 6.
728x90
반응형