전체 글 150

[Java] Chapter05 배열

배열이란? -같은 타입의 여러변수를 하나의 묶음으로 다루느느것(같은타입) -원하는 타입의 변수를 선언하고, 변수또는 타입에 배열임을 의미하는 대괄호 [ ] ex) int [] sort 선언 -배열을 선언하는건, 단지 생성된 배열을 다루기 위한 참조 변수 공간이 만들어질뿐(배열을 생성해야함.) ex) 타입[ ] 변수이름 = new 타입[ ] 길이; int[] test = new int[5]; // 5개의 배열공간. 배열의 길이와 인덱스 인덱스 범위는 0 부터 '배열길이 -1 까지 존재 인덱스의 유효한 범위를 벗어난값은 컴파일러가 자동으로 걸러주지 못함(예외 발생) 배열의 초기화 - 배열의 생성과 초기화를 동시에 할수 있다. ex) int[] test = {1,2,3,4,5}; 배열의 복사 - 배열의 길이가..

스프링 - 파일업로드 연습3(업로드 결과를 iframe에 출력)

이전 포스팅에서는 업로드 결과를 업로드 결과 페이지로 이동하여 출력하였는데, 이번에는 태그를 사용하여 업로드 결과를 현재 페이지에서 출력 해본다 iframe 태그란? 해당 웹페이지 안에 어떠한 제한없이 또다른 하나의 웹페이지 삽입가능 iframe에 업로드 결과 출력 1.업로드 파일 입력 페이지 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ifram{ width: 600px; height: 100px; border: 1px; border-style: solid; } function addFilePath(msg){ console.log(msg); //파일명 콘솔 출력 document.getEleme..

카테고리 없음 2021.03.11

스프링 - 파일업로드 연습2(파일명 중복제거)

지난번 포스팅에서 구현한 파일업로드의 문제점은, 새로운 파일을 업로드할때 업로드된 파일명과 중복되면 그대로 덮어 쓰게 된다는점이다. 만약 사용자가 파일명만 같고 내용이 다른파일을 업로드 하게된다면 이전의 파일은날라갈것이다. 그렇다면 중복되지 않게 하는 저장 방법은 2가지가 있다. 1. 저장 디렉토리에 중복되는 파일이 존재하면 파일명에 뒤에 숫자를 붙이는 방법이 있고, 파일명에 업로드시간 즉 timestamp 를 붙여주는 방법이 있다 2. 두번쨰 방법은 랜덤한 문자열을 생성해 파일명에 붙여주는 방법도 있다. 이 방법은 UUID를 생성해서 파일명을 랜덤하게 생성시켜주는 방법 이번 예제는 UUID로 처리해볼것이다 1) 파일명이 중복되지 않게 파일 업로드 구현 (UUID) 기존의코드 1 2 3 4 5 6 7 8..

카테고리 없음 2021.03.10

스프링 - 파일업로드 연습 1 (일반적인 방식)

1)파일 업로드 설정 1. pom.xml (파일업로드, 이미지 썸네일 관련 라이브러리 추가) 1 2 3 4 5 6 7 8 9 10 11 12 13 commons-fileupload commons-fileupload 1.3.2 org.imgscalr imgscalr-lib 4.2 Colored by Color Scripter cs 2. servlet-context.xml에 bean 과 파일업로드 경로 추가 1 2 3 4 5 6 7 8 9 10 11 12 Colored by Color Scripter cs 2)파일 업로드 구현 1. uploadController -파일 업로드 관련 컨트롤러 추가 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ..

카테고리 없음 2021.03.10

[Oracle] 오라클 SELECT문 별칭(Alias)

연산은 그렇다 쳐도 별칭은 아주아주 많이 쓰이고 중요하기 때문에 꼭 알고 넘어가도록하자. -연산 Oracle SELECT 쿼리문으로 데이터를 불러올때 연산이 가능하다. SELECT first_name,family_name, salary/10000 FROM test 이런식으로 숫자로 이루어진 컬럼에 연산을 가해 불러올수있다. 하지만 이런식으로 사용할경우 컬럼명이 salary 가 아니라 salary/10000 이라는 컬럼명으로 불러와지는 현상을 볼 수 있는데 이걸 해결하기 위해서 별칭(AS)을 사용하면 된다. (물론 as 로 소문자로도 사용 가능하다, 그리고 생략 역시 가능한데 웬만해서는 써주는게 좋다. 가독성 좋게) -별칭(Alias) - SELECT [컬럼명] AS [별칭] FROM [테이블명] SELE..

데이터베이스 2021.03.09

[Eclipse]이클립스_한글 설정하기( 인코딩 UTF-8 설정 )

이클립스를 처음에 실행하게 되면 첫번째로 당황하는게 한글 깨짐이다 아무것도 안했기에 실행해보면 화면에 한글은 전부 깨져서 나온다 이클립스 자체의 한글설정을 위해 인코딩을 UTF-8로 변경해보도록 하자 UTF-8로 변경해 줘야 할 곳이 많다. 우선 [Window] - [Preferences] 로 들어가 주도록 하자 그러면 아래와 같은 창이 뜰텐데 [General] - [Workspace] 에서 Text file encoding 부분에서 그림과 같이 Other 을 클릭하고 UTF-8로 변경해주자 그 다음에는 [Web] - [CSS Files] , [HTML Files], [JSP Files] 이 세개의 Encoding을 각각 UTF-8로 변경해주자 보통은 여기까지 4개만 딱 설정을 하면 충분한데 추가적으로 ..

카테고리 없음 2021.03.09

[Java] 자바 예외 처리(로그 파일에 기록)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 import java.io.*; import java.util.*; class ExceptionEx { public static void main(String args[]) { PrintStream ps = null; FileOutputStream fos=null; try { try { File file = new File("C:\\Users\\popo\\Desktop\\stock-toy\\stock-toy\\err\\VI_log.txt"); //파일생성 경로지정 fos = new FileOutputStream(file,true); // VI_log파일에 출력 준비 ps=new..

JAVA/끄적끄적 2021.03.09

[Spring] 스프링 어노테이션 정리

Annotation 이란? Annotation(@)은 사전적 의미로는 주석이라는 뜻이다. 자바에서 Annotation은 코드 사이에 주석처럼 쓰이며 특별한 의미, 기능을 수행하도록 하는 기술이다. 즉, 프로그램에게 추가적인 정보를 제공해주는 메타데이터라고 볼 수 있다. meta data : 데이터를 위한 데이터) 다음은 어노테이션의 용도를 나타낸 것이다. 컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공한다. 소프트웨어 개발 툴이 빌드나 배치시 코드를 자동으로 생성할 수 있도록 정보를 제공한다. 실행시(런타임시)특정 기능을 실행하도록 정보를 제공한다. 기본적으로 어노테이션을 사용하는 순서는 다음과 같다. 어노테이션을 정의한다. 클래스에 어노테이션을 배치한다. 코드가 실행되는 중에 Reflecti..

[Spring] 스프링 @RequestParam과 @PathVariable

@PathVariable 이란? @RequestMapping의 URL 에서 ({})의 명시된 변수를 받아온다. @PathVariable을 이용하여 URI 템플릿중 어떤 파라미터를 가져올지 결정할수 있다 라는 형식으로 view 단에서 파라미터를 보내면 컨트롤러에서 파라미터를 받기 위해서는 위 사진처럼 받아올수 있다 . @PathVariable("boardId") 에서 괄호'( )' 는 생략 가능하지만, 대신에 파라미터 이름은 같아야한다. @RequestParam 이란? @RequestParam을 사용할시 파라미터를 넘기지 않으면 400에러를 뱉기때문에, 선택적으로 사용할때는 꼭 required = false를 적어야함. 위 사진과 같은 제이쿼리의 ${boardId} 처럼 동적 데이터를 보내야할땐, 스프링단..