반응형


분기문이란?


분기문은 프로그램을 수행하다가 어떤 조건을 만나면 다른 곳으로 흐름을 이동하게 만드는 구문이다. 순서도에서 예, 아니오에 따라 다른 길을 타고가는 화살표를 생각하면 되겠다. break, continue, return이 있는데, 보기만 해도 break(멈춰!), continue(계속해!), return(돌아가!) 가 떠오른다. 실제 쓰임도 그럴까? 한번 살펴보자.


1. break문


break문은 챗바퀴를 돌고 있던 루프로부터 프로그램 흐름을 끄집어내는 역할을 한다. 주로 for문이나 while문에서 빠져나오는데 사용한다.


 int a = 0;

Scanner sc = new Scnner(System.in);

while( true ) {

    System.out.prinln("문을 열려면 0을 쓰세요");

    a = sc.nextInt();

    if ( a == 0 ) {

    System.out.println ("문 열림");

    break;

    }

}


위 break문이 들어간 코드는 안쪽 while문에 걸려 있는 조건이 항상 true다. while문은 조건에 맞으면 해당 명령을 반복하게 만드는 구문이므로, 위 코드는 무한루프가 된다. 이때 프로그램 실행자에게 어떤 값을 계속 요구하게 되는데, 그 값이 0일 경우 무한루프를 빠져나오게 되는 것이다. 맞는 패스워드를 입력해야 하는 프로그램을 사용할 수 있는 곳에 이러한 분기문을 응용할 수 있겠다.


2. continue문


계속하라는 말이 떠오른다. 그러니까 뭘 계속하냐, 하면 현재의 반복은 중단하고 다음으로 넘어가라는 의미에서의 계속이다. 이때 레이블을 사용하지 않으면 Contine와 마주쳤을 때, 루프의 조건으로 분기하고, 레이블을 사용했을 때의 Continue는 레이블 바깥쪽의 루프로 분기한다. 


레이블을 안 썼을 때 

 레이블을 썼을 때

int i;


for( i = 1; i<= 10; i++){

    if( i % 2 == 0){

           continue;  //루프의 조건인 for문으로 돌아간다. 

     }

     System.out.print( i + " t");

int i, j, max = 0;

test;

for (i = 1; i<=5; i++) {

      max = i;

      j = 1;

     while (true) {

           System.out.print(j + " t";

           if (j == max) {

              System.out.println();

              continue test; // 레이블이 있는 while문이 아니라 바깥쪽 루                                        프인 세번째 줄 for문으로 분기한다.

            }

            j++

      }

  }


왼쪽과 오른쪽의 실행결과는 각각 다음과 같다.


 1    3      5      7      9


 1

 1    2

 1    2      3

 1    2      3      4

 1    2      3      4      5   



3. return 문


이건 반환하라는 말이다. 메소드(하나의 프로그램 단위)를 종료하면서, 해당 메소드에서 생긴 값을 메소드를 호출한 지점으로 보내는 것이다. 이때의 주의점은 메소드의 리턴값의 성질에 따라 쓰는 법이 달라진다는 것이다. 리턴값이 데이터형태면 데이터값을 써주고 void형이라면 그냥 return만 써줘도 된다.


public void method() {   

     //메소드 실행; 

     return; 

     // 메소드를 종료 


public void othermethod(int a, int b) { 

     //메소드 실행 

   return a+b; 

    //메소드를 종료

    //메소드를 호출한 지점으로 돌아가면서 반환값을 호출한 곳으로 가져간다. 


공부 외 단상


멈춰, 계속해, 돌아가, 생각하면 도로의 신호등을 떠올리게 된다. break브레이크문은 빨강, continue콘티뉴문은 초록, return리턴문은 노랑, 이라고 하면, 어폐가 있겠지? break문만 해도 동작그만이 아니라 반복동작 그만이니까 말이다. 그냥 재미로 속편하게 생각해본다. 그나저나 노란 신호등의 진짜 의미는 빨강에 가깝다. 멈춤 혹은 우회, 조심하라는거다. 옐로카드!


분기문으로 움직이는 컴퓨터가 부럽다. 컴퓨터는 싸움을 잘 할 것 같다. 상대가 어떻게 움직이면 어디를 몇 번 반복해서 때려, 어떻게 움직이면 반복을 멈추고 다른 데 때려, 싸움을 하는데 정말 냉정한 승부사일 것 같다. 근데 철권같은 격투기게임은 왜 사람한테 맥을 못 추는 걸까? 슈퍼컴퓨터라면 다를까? 스타크래프트같은 거 인간하고 한번 상대한다는데. 바둑도 인간을 제압하는데 경우의 수가 적은 나머지 분야는 말할 것도 없이 알파고의 승리가 아닐까?


내가 부러운 건 그거다 싸우는데 감정으로 싸우지 않고, 머리로만 싸울 수 있다는 것. 스트레스 없는 싸움을 수행할 수 있다는 것.


반응형
반응형


1. for 문

가장 간편하게 구현할 수 있는 반복문이다. 조건에 만족하면 반복하기 때문에 "for 루프"라고도 한다.


int a;

for( a=1; a<5; a++){

   System.out.println(a);

}

System.out.println("루프에서 벗어난 a값="+a);


for 문 앞의 작은괄호에는 초기화(a=1)_, 종료 조건(a<5), 증감 수식(a++)이 나열되어 있다. ++는 변수의 값에 1을 더해준다는 말로, 이 프로그램 코드를 번역하면 a는 1에서부터 출발하며, 5보다 작은 값이 될 때까지 a에 계속 1을 더하라는 말이다. 4를 벗어나면 조건식에서 벗어나므로 프로그램 실행결과는 다음과 같다. 


1

2

3

4

루프에서 벗어난 a값=5



2. while 문

for문에서 초기화 값이 사라진 상태. 명시된 조건이 true면 반복을 계속하고 false이면 while 블록을 빠져 나온다.


 int a=1;

while( a<5, a++){

  System.out.println(a);

  a++;

}

System.out.println("루프에서 벗어난 a값="+a);



이 코드는 먼저 a변수를 1로 선언해 주고, a가 5를 넘지 않을 때까지 a에 1을 쌓아 더하라는 말이다. 5를 넘으면 대괄호 밖으로 실행순서가 넘어가게 된다. 따라서 아까 for문과 출력되어 나오는 결과는 같다. 


3. do - while문

do - while문은 while문과 같지만 while 블록의 첫 실행이 무조건 실행된다는 것이 다르다. 


 int a=1;

do{

    System.out.println(a);

    a++;

} while( i>5 );

System.out.println("루프에서 벗어난 a값="+a);


do - while의 조건식은 대괄호 블록 뒤에 온다. 따라서 조건에 상관없이 첫번째 실행은 이루어지게 되는 것이다. 이 프로그램의 실행결과는 다음과 같다.


1

루프에서 벗어난 a값=2 


일단 블록 안의 것을 실행하므로 1을 출력하고, a의 값에 1을 더한다. 그리고 나서 조건식 적용을 시작하는데, a=2이르모, (i>5)식은 false, 거짓이다. 따라서 더 이상 반복하지 않고 프로그램 실행이 끝난다.


4. for문과 while문에는 어떤 차이가 있나?


for문은 조건식에 true가 되면 블록을 빠져나가고 while문은 조건식에 false가 되면 블록을 빠져나가라는 차이점이 있다. 둘은 문법적으로 완전히 대칭되면서 비슷한 역할을 수행하게 되는 것이다. 그리고 for문은 초기값을 정해준다는 것도 문법적인 차이점이다. 따라서 for문은 주로 반복 횟수가 정해져 있을 때 쓰고, while문은 횟수 상관없이 조건식을 만족하는 동안 반복해 수행할 작업이 있을 때 쓴다.



공부 외 단상


나한테 반복문을 걸고 싶을 때가 있다. 꾸준함이 필요할 때이다. 귀찮다고 느낄 때마다 내 감정을 포맷하고, 처음으로 돌아와 일을 할 수 있을까? 요새는 일본어, 중국어 등 외국어를 공부하고 있는데, 단어나 문법을 한 번 외우고 나면, 나중에 적용하려고 하면 어느새 잊어버린 채 헤매는 경우가 많다. 조건식을 걸어서 잊어버리면 바로 다시 공부내용을 읽어들이도록 나를 프로그래밍하고 싶다.

 



반응형
반응형


1. if - then문

조건이 ~라면 ~하라.


int a=5;

if(a>10){System.out.println(a);}

System.out.println( "a는 10보다 작습니다");


if - then문은 조건을 명시해서 결과가 참(true)이냐 거짓(false)이냐에 따라 두 가지 갈림길을 놓는다. 위 코드에서는 a를 5라고 선언해놓고 a가 10보다 크면 괄호안의 명령을 실행하라고 하고, 아니면 괄호를 건너뛰고 그 다음부터 실행하라는 의미이다. 5는 10보다 작으므로 조건을 성립하지 않았으므로 거짓이다. 그러므로 위 코드의 실행 결과는 a는 10보다 작습니다, 가 인쇄된다.



2. if - then - else 문

if - then문 같은 경우는 조건이 참(true)일때는 어떻게 하라고 뚜렷이 명시하는 반면,, 거짓(false)일 경우에는 그냥 프로그램의 흐름대로 가도록 한다. 그런데 if - then -else 문은 false에 따른 결과조차 제어하도록, 더 구체적으로 코드를 챙겨준다.

int a=90;

if (a>=80){System.out.println ("합격, 축하합니다.");}

else {System.out.println ("불합격");}

System.out.println ("if -then-else문은 양자택일을 더 확실히 해 줍니다.");


조건이 true면 if가 묶어놓은 대괄호 안의 것을 출력하고 false면 else가 묶어놓은 대괄호 안의 내용을 실행하는 것이다. 위 코드에서는 a값을 90이라고 선언해놓고 a의 값이 80보다 크거나 같으면 if절의 내용을 따라 합격, 축하합니다, 가 출력되고, 80보다 작으면 else절을 따라 불합격이 출력된다. 그리고 값이 ture든 false든 다음 코드로 넘어가서 실행하게 된다. 그러므로 a가 80보다 크든지, 작든지 위 코드대로 하면 if -then-else문은 양자택일을 더 확실히 해 줍니다, 가 출력되게 된다.



3. if - then - else if - then -else 문

위의 if -then -else문에 더 많은 조건을 걸 때 쓴다. 먼젓번에는 "else"를 걸어 만약 그게 아니라면, 을 하나 추가했다면, else if를 추가해 만약 그게 아니라면(1), 만약 그게 아니라면(2), 만약 그게 아니라면(3)... 이렇게 순차적으로 진행되어 마지막에 else 하나로 모든 조건을 통과한 값에 마침표를 찍어주는 방식이다.


int a=90;

if (a>=80){System.out.println ("학점 A");}

else if (a>=70){System.out.println ("학점 B");}

else if (a>=60){System.out.println ("학점 C");}

else {System.out.println ("과락");}



위 코드에서는 80점 이상, 70점 이상, 60점 이상의 조건을 모두 피해간 60점 미만일 경우에는 과락이 인쇄되게 된다. 



공부 외 단상


내가 선언한 값으로는

else if 아파트

else if 빌라

else if 투룸

else if 원룸

else if 반지하

......


else 고시원밖에 없는건가? ㅠㅠ 서울집값



 


 

반응형
반응형


리터럴(Literal)은 프로그램 코드 안에서 지정해주지 않아도 원래부터 매겨진 값으로, 어떤 연산 없이 직접 쓰이는 값이다. 각 프로그래밍 언어마다 리터럴 값이 있으며 자바JAVA 역시 마찬가지다.


 int a = 10;

char = 'q';

double = 2.56;

 

위 코드에서 정수10, 문자q, 실수 2.56이 리터럴이다. 리터럴은 데이터타입에 따라 정수리터럴, 실수 리터럴, 문자 리터럴로 나뉜다.


1. 정수 리터럴


정수 리터럴 기본 데이터타입은 int다. 따라서 어떤 말도 붙지 않은 정수 값은 int 타입이 된다. 위 코드에서 변수 a에 매겨진 값인 10도 int타입이다. long타입의 리터럴은 영문 대소문자인 L, 혹은 l을 접미사로 붙인다.


long value = 3948L; 


정수 리터럴은 10진수, 16진수, 2진수로 표현할 수 있다.


int valDec = 30;         //10진수

int valHex = 0x3e;      //16진수(16진수 값에는 0x라는 접두사를 붙인다.

int valBin = 0b1001;   //2진수(2진수 값에는 0b라는 접두사를 붙인다.



2. 실수 리터럴


실수 리터럴의 기본 타입은 double이다. float 타입 리터럴은 접미사 f를 붙인다.


double = 12.5;

float = 34.6f; 



3. 문자 리터럴


문자 리터럴은 'c'같은 하나의 문자 하나거나 'computer'같은 문자열 값을 말한다.


 char = 'x';

String = "abc";



4. 이스케이프Escape


자바JAVA에서는 특수 문자를 표시하기 위해 이스케이프Escape 문자를 제공한다. 이스케이프 문자란 특정 부분을 처리언어가 아니라 출력언어로 통과시키는 구문을 말한다.


System.out.println ("apple");            //따옴표 빼고 출력하는 apple  

System.out.println (" \"apple\" );   // 따옴표까지 출력하는 "apple"

 

따옴표는 안의 문자열을 출력하라는 자바 문법의 일부이기 때문에 일반적으로는 따옴표 자체를 출력할 수 없다. 이처럼 이스케이프 문자는 특수문자를 처리구문에 포함시키지 않고 출력하게 할 수 있는 문자다. 

위 코드에 나오는 역슬래쉬(\)는 일반 한글키보드에서는 누를 수 없고, 한글로 ㄱ을 쓴 다음 한자키를 눌러보면 방향키로 선택할 수 있는 문자들이 나온다. 이때 역슬래쉬(\)를 선택해서 입력해주면 된다.


자바JAVA의 이스케이프Escape 문자


b(백스페이스)

t(탭)

n(라인피드)

f(캐리지 리턴)

"(더블 쿼테이션)

'(싱글 쿼테이션)

\(역슬래쉬)

null (특수 리터럴) 참조 타입의 값으로 객체의 사용 불가능을 나타낸다. 즉 값이 없다는 이야기.



공부 외 단상


우리 사이의 리터럴Literl 문자. 

원래 있는 것처럼, 우리만 쓰는 말들. 나에게만 너를 말해주기를, 이라는 디어클라우드의 노래가 떠오른다.


반응형
반응형


자바JAVA의 데이터타입에는 자바에서 기본적으로 제공하는 기본형과 사용자가 지정해 사용하는 사용자 정의 타입이 있다. 기본타입에는  정수형과 실수형, 문자형, 불린형(논리형)이 있다. 형변환은 프로그램 문장에서 데이터 타입을 일시로 변경하는 것이다. 


int a = 11, b = 12, c = 13, d = 1;

float e = 0;

c = (a+b+c)/4

System.out.println ("a와 b와 c와 d의 평균은 "+c+" 이다.");


a와 b와 c와 d의 합은 37이다. 이것을 나눈 값을 e에 대입한다. 11과 12와 13와 1을 더한 값이 37이므로, 이것을 4으로 나누면 c는 9.25다. 그렇다면 이 프로그램의 실행 결과가 "a와 b와 c의 평균은 9.25 이다."로 출력되는가? 


아니다. "a와 b와 c의 평균은 9.0 이다." 라고 출력되는 것을 볼 수 있을 것이다. 일단 뒤의 0.25가 없어진 건 정수끼리 계산하면 정수가 나오기 때문이다. 그런데 대입해야할 좌변의 변수는 실수 타입이다. 어떤 프로그램에서 타입이 다른 것들을 계산할 때는 하나의 타입으로 통일해서 계산한다. 이것을 자동 형변환이라고 한다.


그렇다면 이 프로그램에서는 어떤 타입으로 변환해야 할까? 자동 형변환의 변환 방식은 범위가 큰 쪽으로 통일한다. 수학적으로 정수보다는 실수의 범위가 넓고, 그렇다면 우변이 정수(int)타입이 아니라 실수형(float)타입으로 변환될 것을 예상할 수 있는 것이다. 자동 형변환은 말 그대로 자동으로 이루어지고, 작은 타입에서 큰 타입으로 바뀐다.


자동 형변환의 방향은 이렇다.


byte - short, char - int - long - float - double (오른쪽으로 갈수록 큰 타입)


자동 형변환은 데이터 타입이 다른 피 연산자들끼리 계산할 때 자바JAVA가 자체적으로 수행하는 기능이며, 크기는 작은 데이터 타입에서 큰 데이터 타입으로 변환된다. 그래서 정수형에서 실수형으로 데이터타입이 바뀌는 것이다. 그런데 이때 큰 타입에서 작은 타입으로 변하는 것은 직접 지정해줘야 하는데, 이것을 강제 형변환이라고 부른다.


float f = 20.5f;

int a = (int)f;

System.out.println("a= "+a);


프로그램 구문에서 빨간색 글씨로 표시된 것이 바로 강제 형변환이다. 변수 f앞에 (int)가 있는데, 이것은 캐스팅 연산자로, 캐스팅 연산자는 바꾸고 싶은 데이터 타입이다. 괄호 안에 원하는 타입을 써 주면 된다. 위에서는 int, 라고 썼으므로 정수형으로 바꾸고 싶다는 의미다. 그래서 빨간색으로 표시된 코드는 변수 f의 데이터 타입을 int, 즉 정수로 변환하여 저장한다.


자바JAVA구문에서 주의할 점은 강제 형변환 시, 소수점이 날아갈 수 있다. 보다 범위가 작은 데이터타입으로 축소되어 출력되기 때문이다. 그러니까 위의 프로그램의 결과값은 소수점 없이 그냥 20이 되겠다.



공부 외 단상


데이터타입처럼 마음에도 타입이 있고, 

너는 나를 항상 강제 형변환하려 든다.

내 마음의 범위를 항상 네 마음의 범위로 맞추려 드는 너.



반응형
반응형


1.변수


변수는 데이터를 담는 주머니다. 


int a; 


이와같은 코드에서 "int"는 정수를 나타낸다는 데이터의 타입이고 "a;"는 지정해주는 변수의 이름이다. 이렇게 할당된 메모리에 변수명을 지어주는 것은 나중에 그것을 다시 찾아갈 때 부르기 편하게 하기 위해서다. 32비트 컴퓨터라면 주소는 32자리 이진수로 나타나는데, 이렇게 긴 숫자를 사람이 기억하기 어렵기 때문에 숫자 대신 부를 이름을 붙이는 것이다. 3학년 2반 32번보다 3학년 2반 김개똥이 사람 입장에서는 더 기억하기도, 부르기도 쉽다. 이것이 변수명이다.


데이터타입이란?


저장할 데이터의 성질을 나타낸다. 데이터의 종류는 숫자, 문자, 논리 등 다양하므로 적확한 타입을 선택해 선언하지 않으면 안된다. 자바 문법에 기초적으로 정의된 타입은 정수형, 실수형, 문자형, 논리형이 있고, 타입 이름은 다음과 같다.


1. 정수형 = byte, short, int, long

2. 실수형 = float(32비트 부동 소수점), double(64비트 부동 소수점)

3. 문자형 = char

4. 논리형 = boolean


변수 만드는 규칙


자바에서 변수를 만드는 규칙은 몇 가지가 있다.


1. 문자와 숫자, '$', '_'의 조합으로 만들 것. 나머지 특수키는 사용하면 안된다.

2. 대소문자를 맞춰서 사용해야 한다. 대문자로 만든 변수를 소문자로 부르면 안된다.

3. 변수명을 숫자로 시작하지 말 것

int 1a 


4. super, short같은 자바 예약어를 쓰지 말 것

int super; 


5. 하나의 프로그램 안에서 중복해서 선언하지 말 것.

int a;

int a; 

    


이상과 같은 기초 규칙은 변수명 뿐 아니라 메서드, 클래스의 이름을 만들 때도 해당한다.



2. 예약어


자바 문법에서 예약어는 키워드라는 말로도 쓰인다. 아까 학년, 반, 번호로 예를 들었으니, 학교로 예를 들어보면 예약어는 학생들을 움직이는 차렷, 열중 쉬엇, 선생님께 대한 경례,같은 명령어에 해당된다. 일을 하기 위해서는 컴퓨터와 사람같이 미리 정해진 말이 필요한 것이다. JAVA에서는 abstract, continue, for같은 예약어들이 쓰인다. 



공부 밖 단상 -사랑고백-


하나의 프로그램 안에서 변수는 중복 선언하면 안되지만 

하나의 연애에서 사랑은 중복 선언해주는 게 좋다. 




반응형
반응형
반응형

'Study Hot > 유용한자료' 카테고리의 다른 글

요즘 뜨는 핫 이슈  (0) 2014.08.14
톰캣 서버 한글화  (0) 2014.08.14
ajax 프로젝트 적용한 예제  (0) 2014.08.06
자바스크립트 셀렉트박스 선택 값 구하기  (0) 2014.07.31
db to json  (0) 2014.07.29
반응형
반응형

'Study Hot > 유용한자료' 카테고리의 다른 글

프리소프트 다운로드  (0) 2014.08.14
톰캣 서버 한글화  (0) 2014.08.14
ajax 프로젝트 적용한 예제  (0) 2014.08.06
자바스크립트 셀렉트박스 선택 값 구하기  (0) 2014.07.31
db to json  (0) 2014.07.29
반응형

URIEncoding="UTF-8"    <--추가




 <Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8083" protocol="HTTP/1.1" redirectPort="8443"/>


반응형

'Study Hot > 유용한자료' 카테고리의 다른 글

프리소프트 다운로드  (0) 2014.08.14
요즘 뜨는 핫 이슈  (0) 2014.08.14
ajax 프로젝트 적용한 예제  (0) 2014.08.06
자바스크립트 셀렉트박스 선택 값 구하기  (0) 2014.07.31
db to json  (0) 2014.07.29
반응형


  <script type="text/javascript">


    window.onload = function() {

    $.ajax({

type : "GET",

url : "/Api/Show/showsidecount.tiki_show",

contentType : "application/json; charset=utf-8",

dataType : "text",

success : function(showListCount) {

//전체 공연예매 가능 수  화면에 뿌리기

var showdbcount = document.getElementById("showcount");

showdbcount.innerHTML=showListCount;

},

error : function(json) {

alert("실패");

}

});

   

    $.ajax({

type : "GET",

url : "/Api/Show/showsideplacecount.tiki_show",

contentType : "application/json; charset=utf-8",

dataType : "text",

success : function(showplaceCount) {

//전체 공연예매 가능 수  화면에 뿌리기

var placeCount = document.getElementById("showplaceCount");

placeCount.innerHTML=showplaceCount;

},

error : function(json) {

alert("실패");

}

});

   

    $.ajax({

type : "GET",

url : "/Api/Show/showsideshowrooncount.tiki_show",

contentType : "application/json; charset=utf-8",

dataType : "text",

success : function(RoomListCount) {

//전체 공연예매 가능 수  화면에 뿌리기

var showRoomCount = document.getElementById("RoomCount");

showRoomCount.innerHTML=RoomListCount;

},

error : function(json) {

alert("실패");

}

});

   

   

   

    };

</script>


반응형

'Study Hot > 유용한자료' 카테고리의 다른 글

요즘 뜨는 핫 이슈  (0) 2014.08.14
톰캣 서버 한글화  (0) 2014.08.14
자바스크립트 셀렉트박스 선택 값 구하기  (0) 2014.07.31
db to json  (0) 2014.07.29
두개의 소스를 비교해주는 유틸, WinMerge  (1) 2014.07.25
반응형

예제 

var form = document.frm;

var text    = form.select.options[form.select.selectedIndex].text;

var value = form.select.options[form.select.selectedIndex].value; 

 

설명

var form = document.폼의 네임값;

var 텍스트를 담는 변수명= form.셀렉트의 네임값.options[form.셀렉트의 네임값.selectedIndex].text;

var  밸류값을 담는 변수= form.셀렉트의 네임값.options[form.셀렉트의 네임값.selectedIndex].value; 

반응형

'Study Hot > 유용한자료' 카테고리의 다른 글

톰캣 서버 한글화  (0) 2014.08.14
ajax 프로젝트 적용한 예제  (0) 2014.08.06
db to json  (0) 2014.07.29
두개의 소스를 비교해주는 유틸, WinMerge  (1) 2014.07.25
20140716_이전 페이지 이동  (0) 2014.07.16
반응형
반응형
반응형

소스를 참조해서 또 다른 소스를 만들 때 유용하겠더군요 다운, 다운/

WinMerge-2.14.0-Setup.exe

 

반응형

'Study Hot > 유용한자료' 카테고리의 다른 글

자바스크립트 셀렉트박스 선택 값 구하기  (0) 2014.07.31
db to json  (0) 2014.07.29
20140716_이전 페이지 이동  (0) 2014.07.16
tb_user 쿼리문  (0) 2014.07.08
영화 예매에 관련된 파일 첨부  (0) 2014.07.02

반응형

기능 처리를 하고 페이지를 이동시킬때 사용하면 좋은 코드하나를 소개합니다. 


저는 삭제 처리후 페이지 이동을 위해 사용했는데요. 


<%=request.getHeader("referer") %>


위의 코드가 바로 이전 경로를 출력해주는 코드입니다. 


아래는 사용예 입니다. 


삭제정보를 리퀘스트영역에 담아서 삭제처리후 이전 페이지로 이동합니다. 


<span>

<a href="<%=request.getContextPath()%>/Api/Show/ShowDb_delete.tiki_show?

    index=<%=personList.getIndex()%>&url=<%=request.getHeader("referer") %>">

<input type="button" value="공연 정보 삭제">

 </a>

</span>


반응형

'Study Hot > 유용한자료' 카테고리의 다른 글

db to json  (0) 2014.07.29
두개의 소스를 비교해주는 유틸, WinMerge  (1) 2014.07.25
tb_user 쿼리문  (0) 2014.07.08
영화 예매에 관련된 파일 첨부  (0) 2014.07.02
초간단 모델2 게시판  (0) 2014.06.30

+ Recent posts