전체 글
break 문의 탈출 범위 - outerLoop 의 사용법
break 문의 탈출 범위 - outerLoop 의 사용법
2014.08.28break 문의 탈출 범위는 while, for, switch, do while 이다. 아래 코드를 보자 for (int b = 0; b < 200; b++) { for (int i = 0; i < 10; i++) { if (i == 5) { System.out.println("break 실행"); break; } System.out.println("i = " + i); } System.out.println("b = " + b); } 이 코드를 실행해보자. 착각했던것이 i 가 5일때 if 안의 break 문으로 인해 if 만 탈출하는걸로 착각하였다 아니다. break 문이 있으면 무조건 if 밖의 while, for, switch, do while 을 기준으로 가장 가까운 반복문의 탈출을 시도한다. 그러..
비트연산 진리 표
비트연산 진리 표
2014.08.27비트 연산 진리 표 & AND 비트 A 비트 B 비트 A & 비트 B 1 1 1 1 0 0 0 1 0 0 0 0 A,B 비트둘다 1 이여야 1 이다 | OR 비트 A 비트 B 비트 A | 비트 B 1 1 1 1 0 1 0 1 1 0 0 0 A, B 비트 중에 하나만 1이여도 1 이다 ^ XOR 비트 A 비트 B 비트 A ^ 비트 B 1 1 0 1 0 1 0 1 1 0 0 0 A, B 비트가 서로 다른경우에만 1 이다 ~ NOR 1 0 0 1 해당 비트를 반전 시킨다
SCE 논리 연산자
SCE 논리 연산자
2014.08.27자바는 SCE(Short-Circuit Evaluation)연산을 한다. 즉 최단거리연산. && 연산자 같은경우 앞 연산에서 false 가 나올경우 뒤에는 볼것도 없이 false 를 최종적으로 반환하기 때문에 뒤의 연산을 하지 않는다. 앞 연산에서 true 를 반환한다면 뒤에 연산에서 false 를 반환할수 있기때문에 뒤에 연산도 하여야한다. || 연산자 같은경우 또는 이라는 의미로써 앞에 연산에서 true 가 나온다면 어쨋든 결과적으로 true 가 나오므로 뒤에 연산을 하지 않는다. 하지만 앞에 연산이 false가 나오면 뒤에 연산에서 true 가 나올지도 모르므로 뒤에 연산도 하여야 한다. 아래 코드를 보면 쉽게 알수있다. int var1 = 0; int var2 = 0; boolean result;..
서로 다른 클래스 파일간 변수 참조
서로 다른 클래스 파일간 변수 참조
2014.08.26set,get 을 이용하는 방법도 있겟지만.. 특이한 방법도 있더라.. package main; public class test { public static int a = 1; } package main; import static main.test.a; public class test2 { public void getValue() { System.out.println(a); } } 참조하고자 하는 클래스의 상단 import에 static 로 선언한후 패키지명.클래스명.static변수명을 써주고 바로 사용하면 된다.
자바 자료형의 종류와 구분
자바 자료형의 종류와 구분
2014.08.25저자윤성우씨의 "난 정말 JAVA를 공부한 적이 없다구요." 에서 가져온것이다. 생각보다 long 형의 표현 가능 범위가 길다.(64bit 의 크기로 추정된다.) 참고로 JAVA 는 C 의 Unsigned 가 없다. 예전에 어디서 본 글이지만 굳이 메모리사용 크기에 대해 엄격한게 아니라면 int 형으로 쓰라는 말을 본적이 있다. 32bit cpu를 기준으로 한번에 32bit 즉 4byte를 처리할수 있기때문에 1byte를 쓰면 4byte의 크기로 맞춰주어야 하기때문에 오히려 속도가 느려진다는 글을본적이 있다. 믿거나 말거나. 자료형 데이터 메모리 크기 표현 가능 범위 boolean 참과 거짓 1 byte true, false char 문자 2 byte 모든 유니코드 문자 byte 정수 1 byte -12..
XSS 보안에 대해
XSS 보안에 대해
2014.08.09Textarea 에 글을쓸때 개행문자가 있을시 데이터베이스에는 평문으로 들어간다. 혹은 띄어쓰기가 들어간채로. 이문제로 인해 저장시 \r\n 은 태그로 치환하였다. 여기 까진 좋았다. 그러나 XSS 가 문제 였다. 개행문자를 제외하고는 당연히 치환을 해주지 않으니. 아주 당연하게도 경고창을 뽐내주신다. 그래서 VIEW 단에서 jstl 의 out 태그로 뽑아봤다. 데이터베이스에 저장되어있는 문자 그대로 뽑아준다. 한번 필터링 해주고 뽑아주나보다..결국은 서버단에서 보안에 문제가 되는 태그는 모두 치환해주어야 하나보다.. 임시로 "
이클립스 컬러 테마 수동 추가하는법
이클립스 컬러 테마 수동 추가하는법
2014.08.06http://blog.devja.net/11 위 링크는 전에 올렸던 포스팅이다. 이클립스의 컬러테마 플러그인을 설치하여 테마를 조정하는것이다.그런데 사실 테마를 한번 설정하면 한가지 테마만 쭉 사용하는 편이라. 플러그인을 깔기도 애매하다. 그래서 이번엔 플러그인을 설치하지 않고 내가 사용하고자 하는 테마의 xml 설정만 추가시켜보자. http://eclipsecolorthemes.org/?list=all&q= 이클립스 컬러테마 공식 사이트이다. 기존의 플러그인으로 본 테마보다 훨씬 많은 테마들이 존재한다. 마음에 드는 테마를 선택후 들어가면 epf 로 다운받는다. 적당한곳에 저장한후 적용 순서는 이클립스 - > File - > Import - > General - > Preferences -> "From..
[Spring] dispatcher-service.xml 를 분리하고자할때
[Spring] dispatcher-service.xml 를 분리하고자할때
2014.08.03기본적으로 Tomcat 을 실행시 web.xml 를 찾아서 읽어들인다. 그런데 워낙에 설정이 많아서 web.xml 에 몰아넣을수도 없다. 기본적인 설정과 서비스에대한 설정을 분리하여 사용하는게 좋을듯싶다. web.xml 을 편집한다. dispatcher-service.xml 을 약속된게 아니라 다른것으로 해도된다. org.springframework.web.context.ContextLoaderListener contextConfigLocation /WEB-INF/dispatcher-service.xml ContextLoaderListener class 를 사용하여 conteextConfigureLocation 인수에 /WEB-INF/dispatcher-service.xml 의 위치를 붙이는과정이다. 그..