..
DEV (257)
addeventListener 쓰는 이유??..
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

'DEV > java' 카테고리의 다른 글

hs-err-pid.log  (0) 2009.03.05
request 요청경로 확인방법 정리  (0) 2009.01.12
validator 값 검증  (0) 2009.01.08
  Comments,     Trackbacks
request 요청경로 확인방법 정리
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

1. request.getContextPath() : 프로젝트 Context 명을 가져온다.

요청 : http://localhost/Project_test/test.jsp 경우
→ /Project_test 경로만 얻는다.

2. request.getRequestURI() : 프로젝트 Context명과 파일 경로를 가져온다.

요청 : http://localhost/Project_test/test.do 경우
→ /Project_test/test.do 까지 얻어온다.

3. request.getHeader("referer") : 요청을 한 부모페이지의 요청을 가지고 온다. 

현재 페이지 : http://localhost/test/test1.do
요청 : http://localhost/test/test2.do

/test/test1.do를 얻어온다.


request.getHeader("REFERER");
request.getRequestURI();
request.getRealPath("/")

4. request.getQueryString() : 요청 파라미터를 모두 가져온다.

5. request.getRequestURI() : 사용한, 파일 이름만 얻어오는 방법(Split)

String[] url = request.getRequestURI().split("/");

String fileName = url[url.length-1]; // 배열의 마지막 값이 파일이름

or

request.getRequestURI().substring(request.getRequestURI().lastIndexOf('/')+1)



request.getAttribute("javax.servlet.include.query_string")

request.getAttribute("javax.servlet.include.path_info")

request.getAttribute("javax.servlet.include.servlet_path")

request.getAttribute("javax.servlet.include.context_path")

request.getAttribute("javax.servlet.include.request_uri")

 

request.getAttribute("javax.servlet.forward.query_string")

request.getAttribute("javax.servlet.forward.path_info")

request.getAttribute("javax.servlet.forward.servlet_path")

request.getAttribute("javax.servlet.forward.context_path")

request.getAttribute("javax.servlet.forward.request_uri")

 

'DEV > java' 카테고리의 다른 글

addeventListener 쓰는 이유??..  (0) 2009.01.12
validator 값 검증  (0) 2009.01.08
sqlMap 복잡한 컬렉션(collection)  (0) 2009.01.07
  Comments,     Trackbacks
[javascript] 이벤트
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.


이벤트 : 사용자가 브라우저에서 행한 행위를 이벤트라고 한다.
            즉 버튼을 클릭하거나 더블클릭, 키보드를 누르는 행위 마우스를 드래그 하는 등등을 이벤트라고 한다.

이벤트 핸들러 : 이벤트(사용자의 행위) 발생 시 그에 따른 작용을 나타내기 위해 작성된 자바스크립트 코드
이벤트 이름 앞에 on을 덧붙인다. ex) 마우스 클릭 - onclick

이벤트 핸들러 작성 방법
: <태그이름 이벤트 핸들러="자바스크립트코드">

이벤트 핸들러의 종류

onabort      이미지 로딩이 중단될 때                                                  
                                                                                           
onload       브라우저가 윈도우, 프레임, 이미지 등의 객체 로딩 직후         
                                                                                           
onunload       객체가 언로드될 때                                                          
                                                                                           
onbeforeunload     객체가 언로드되기 전에                                                    
                                                                                           
onreadystatechange    문서의 로딩 과정에 따라 문서 상태가 변할 때마다 발생          
                                                                                           
onerror       HTML 문서나 이미지 로딩 시 오류가 발생할 때                    
                                                                                           
onstop       사용자가 스톱버튼을 클릭하거나 웹페이지를 이동할 때          
                                                                                           
onhelp       사용자가 F1키를 클릭할 때                                               
                                                                                           
onblur       객체가 포커스를 잃을 때                                                   
                                                                                           
onchange       select, text, textarea 필드의 값 변경 후 포커스를 잃을 때  
                                                                                           
onfocus        객체가 포커스를 받을 때                                                   
                                                                                           
onkeydown       사용자가 임의의 키를 누른 순간에                                      
                                                                                           
onkeypress       사용자가 알파뉴메릭 키를 누른 순간에                                
                                                                                           
onkeyup        사용자가 누른 키를 놓을 때                                               
                                                                                           
onclick        객체가 클릭될 때                                                             
                                                                                           
ondblclick      사용자가 객체를 더블클릭할 때

oncontextmenu   사용자가 클라이언트 영역에서 오른쪽 마우스버튼을 클릭할 때   
      
onmousedown     사용자가 마우스를 누른 순간                                                      

onmousemove    사용자가 마우스를 움직일 때                                                      

onmouseout    객체위로 올라간 마우스가 내려올 때                                            

onmouseover     마우스 커서가 객체 위로 올라갈 때                                              

onmouseup     사용자가 누른 마우스 버튼을 놓을 때                                           

onmouseenter    마우스 커서가 객체위로 올라갈 때                                               

onmouseleave    객체위로 올라간 마우스가 내려올 때                                            

ondrag      드래그 동작 동안 소스 객체에 계속적으로 발생                              

ondragenter    소스가 목적 객체위로 드래그되는 순간, 목적 객체에 발생                

ondragstart    선택한 소스로 드래그를 시작할 때 소스객체에 발생                        

ondragover     목적객체 위로 드래그되어 있는 동안 목적 객체에 계속 발생             

ondragleave    드래그 상태로 목적 객체에서 마우스가 빠져 나올 때, 목적 객체에     

ondragend     드래그 동작이 끝날 시점 클릭된 마우스가 놓여질 때, 소스 객체에     

ondrop      드래그 동작이 끝날 시점 클릭된 마우스가 놓여질 때, 목적 객체에     

onselect                          현재 선택된 내용이 변할 때                                                

onselectstart                  객체가 선택되어지고 있을 때, 처음 객체에 발생                     

onselectionchange        문서의 선택된 상태가 변경될 때 document객체에 발생         

onmove          윈도우나 프레임 혹은 객체의 위치가 변경될 때, 변경 전에 발생

onresizestart         윈도우나 프레임 혹은 객체의 크기가 변경될 때, 변경 전에 발생

onresize          onresizestart가 불려진 후                                               

onresizeend         윈도우나 프레임 혹은 객체의 크기가 변경된 후                      

onscroll          스크롤바가 존재하는 객체에 스크롤이 발생할 때                    

onreset    폼이 리셋될 때                                                                 

onsubmit          폼이 전송될 때                                                                 

onbeforecopy         선택된 소스객체가 클립보드로 복사되기 전에, 소스객체에       

oncopy    선택된 소스객체가 클립보드로 복사될 때, 소스객체에             

onbeforecut         선택된 소스객체가 문서에서 제거되기 전에, 소스객체에          

oncut          선택된 소스객체가 문서에서 제거될 때, 소스객체에                

onbeforepaste   클립보드로부터 객체를 문서에 붙이기 전, 목적객체에             

onpaste          클립보드로부터 객체를 문서에 붙일 때, 목적객체에   

onstart                             MARQUEE 객체가 매번 루프를 도는 시작 시점에                                             

onbounce   MARQUEE 객체의 behavior가 alternate로 된 경우 텍스트가 한쪽끝에 도달할 때

onfinish     MARQUEE 객체의 루프가 완전히 종료될 때                                                    

onactivate    객체가 activeElement로 설정될 때                                                               

onbeforedeactivate  activeElement가 변경되기 전, 현재 activeElement 객체에                             

ondeactivate    activeElement가 변경될 때                                                                         

onbeforeprint    문서의 프린트나 미리보기를 수행하기 전                                                         

onafterprint   문서의 프린트나 미리보기를 수행한 후                                                            

onlayoutcomplete  프린트나 미리보기시 레이아웃이 끝날 때                                                         

onfilterchange    비쥬얼 필터의 상태가 변할 때                                                                        

onlosecapture    객체가 마우스 캡쳐를 잃을 때                                                                        

onpropertychange  프로퍼티가 변할 때       

onbeforeupdate              데이터를 주로 포함하는 객체의 데이터가 변경될 때                    

onafterupdate         데이터를 주로 포함하는 객체의 데이터가 변경된 후                    

onerrorupdate         데이터를 주로 포함하는 객체에 데이터를 변경하면서 오류발생     

oncellchange   데이터 공급객체인, applet, bdo, object의 데이터가 변경될 때  

ondataavailable  비동기적으로 데이터를 공급받는 객체에 데이터가 도착할 때        

ondatasetchanged        데이터 공급객체들이 노출한 데이터 셋이 새로 변경될 때             

ondatasetcomplete  데이터 공급객체들로부터 모든 데이터가 준비되었을 때               

onrowenter   데이터 공급객체에 현재 행이 변경되고 새 데이터가 사용가능할 때

onrowexit          데이터 공급 콘트롤이 현재 행을 변경하기 직전                          

onrowsdelete         행들이 레코드셋으로부터 삭제될 때                                         

onrowsinserted         새로운 행들이 레코드셋에 추가될 때      
  Comments,     Trackbacks
콘솔 로그 쉽게 지우기
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

마우스 오른쪽 R

'DEV > 개발관련 툴' 카테고리의 다른 글

다른 이름으로 저장시 경로 설정하기  (0) 2009.03.12
vmware  (0) 2009.03.09
[이클립스] history 기능  (0) 2009.01.08
  Comments,     Trackbacks
validator 값 검증
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
validator를 이용하여 손쉽게 값들을 검증 할 수 있다.

폼안에 있는 값들이 널값인가? 숫자를 입력해야 하는데 문자를 입력하진 않았는가? 등등 폼들의 값을 손쉽게 검증하는 것이다.

자바스크립에서 검증 하는 것 보다 validator을 이용하여 값을 검증하는 것이 더 안전하다.

자바스크립의 경우 클라이언트 언어이기 때문에 사용자들이 손쉽게 조작이 가능하므로 중요한 폼 값 검증의 경우에는

validator를 이용하자!!

< Spring 에서의 validator 사용 방법 >

1. A 패키지 안에 avalidator.java 파일을 만든다.

2. spring 설정 파일인 applicationContextA.xml 안에 validator 사용에 대해서 설정해 준다.

_M#]
3. aController 파일에 아래와 같이 입력하면 드디어 Controller에서 Validator를 사용할 수 있다.
 
4. 이제 AValidator 파일에 검증하려는 코드를 적고 Controller에서 이를 적용하면 된다.

5. validator 파일 만들기

1) org.springframework.validation.Validator 인터페이스를 사용한다.(두개의 메소드 존재함)
- boolean supports(Class arg0) :
- void validate(Object obj, Errors errors) :
                          Controller에서 넘어온 Object를 검사하고 에러가 있을 시 Error 발생

2) controller에서 호출 시 => aValidator.validate(aVo, errors);
                                           Vo에 담겨져 있는 모든 값을 validator에서 검증해 볼 수 있다.

3) validator 에서는... => if(isEmpty(aVo.getId()){ errors.rejectValue("id","required"); }
                                     if 조건에 맞는다면 id값이 올바르지 않으므로 에러를 반환(requird)해라!

'DEV > java' 카테고리의 다른 글

request 요청경로 확인방법 정리  (0) 2009.01.12
sqlMap 복잡한 컬렉션(collection)  (0) 2009.01.07
setView / setViewName  (0) 2008.12.29
  Comments,     Trackbacks
[이클립스] history 기능
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
이클립스 내부 기능 중에 History기능이 있다.

마우스 오른쪽 replace with - history를 누르면 나오는데

확인해본 결과 10정도의 history의 기능을 가지고 있다.

현재소스와 history의 소스를 어느 부분이 달라졌는지 잘 나타나 있다.

이전에 했던 소스로 돌아갈 경우 유용하다.

'DEV > 개발관련 툴' 카테고리의 다른 글

다른 이름으로 저장시 경로 설정하기  (0) 2009.03.12
vmware  (0) 2009.03.09
콘솔 로그 쉽게 지우기  (0) 2009.01.08
  Comments,     Trackbacks
sqlMap 복잡한 컬렉션(collection)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
부모테이블 a와 자식테이블 b 가 존재한다고 가정한다면

Dao를 통해서 부모테이블인 a 의 값을 가져올 수 있는 sql문을 

sqlMap에서 id 에 접근하여 Data를 들고 올때

Dao를 통해 자식테이블 b의 id에 접근 하지 않고서도 자식테이블 b의 data를 가져 올 수 있게 할 수 있다.

이것이 복잡한 컬렉션 즉 resultMap 이다. 

Vo파일1



sqlMap.xml파일

 
 <select id="select-aa" resultMap="resultMap아이디">
  SELECT /*+ INDEX(A PK_CCUROMI_CHASINO) */ 
         a1,
         a2,
         a3,
         a4
  FROM   aa
  WHERE  a1= #value#   
 </select>


<select id="select-ccuromi-data-list-with-chasino" parameterClass="String" resultClass="chasiDataVo">
  SELECT *
  FROM CT_CCUROMI_CHASI_DATA WHERE CHASINO = #value# ORDER BY ORDERED ASC
 </select>

_M#]

'DEV > java' 카테고리의 다른 글

validator 값 검증  (0) 2009.01.08
setView / setViewName  (0) 2008.12.29
숫자 -> 문자 문자 ->숫자 Integer.toString  (0) 2008.12.29
  Comments,     Trackbacks
요청과 동시에 자바스크립트가 실행되게 하기 위해서는..?
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
function 안에 넣지 말고
</body>직전에 <script></script >안에 실행을 원하는 스크립트를 넣는다. 

'DEV > html/css/js/img' 카테고리의 다른 글

[javascript] 이벤트  (0) 2009.01.09
문자 길이가 길경우 ...(말줄임표)  (0) 2008.12.29
prototype.js에서 setStyle() 사용하기  (0) 2008.12.29
  Comments,     Trackbacks
setView / setViewName
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
void setView (Object view)
          Set a View object for this ModelAndView.

=> URL도 이동 / 화면도 이동한다.  완전 다른화면으로 이동한다. request가 이어지지 않는다.
     ex) mv.setView(new RedirectView("../url명.do"))
=> 새창으로 이동한다.
 void setViewName (String viewName)
          Set a view name for this ModelAndView,
          to be resolved by the DispatcherPortlet via a ViewResolver.

=> URL의 변화는 없고 화면만 변한다. request가 이어진다.
     ex) mv.setViewName("/화면이름view");

=> 주로 validation 할때 사용된다.
      에러가 있을 경우에 이전 창을 그대로 보여주고 에러부분은 에러 메시지를 띄우고 
      값이 입력된 부분은 내용이 그대로 전달된다. 즉 request값이 이어진다. 
     
      값이 그대로 남게 하기 위해서는 value="testVo.title" 이런식으로 이전에 입력한 값이
      Vo안에 담겨지도록 한다.

'DEV > java' 카테고리의 다른 글

sqlMap 복잡한 컬렉션(collection)  (0) 2009.01.07
숫자 -> 문자 문자 ->숫자 Integer.toString  (0) 2008.12.29
[sql-map] tip!!  (0) 2008.12.23
  Comments,     Trackbacks
문자 길이가 길경우 ...(말줄임표)
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
ellipsis
잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용
<nobr style="text-overflow:ellipsis; overflow:hidden; width:200px" title="말풍선에 나올 내용">잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용</nobr>

ellipsis-word
잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용
<nobr style="text-overflow-mode:ellipsis-word ;overflow:hidden; white-space: nowrap; width:200px" title="말풍선에 나올 내용">잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용</nobr>

clip
잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용
<nobr style="text-overflow:clip;overflow:hidden;width:200px">잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용</nobr>

inherit
잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용
<nobr style="text-overflow:inherit;overflow:hidden;width:200px">잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용</nobr>

링크에 넣을 경우
잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용
<nobr style="text-overflow:ellipsis;overflow:hidden;width=280px;cursor:Hand">잘려질 내용 잘려질 내용 잘려질 내용 잘려질 내용</nobr>

ex)))테이블에 넣었을 경우
200px로 잘리는 테이블에 넣었을시 보이는

<table width='200' border='0' cellpadding='0' cellspacing="0" style='table-layout:fixed;' cellspace='0'>
 <tr>
  <td><nobr style="text-overflow:ellipsis;width:200px;overflow:hidden"> 200px로 잘리는 테이블에 넣었을시 보이는</nobr>
  </td>
 </tr>
</table>



ex)))링크에 걸기 예2
<%=SUBJECT%>
<nobr class="nobr" style="width:120px;"><a href="javascript:goView(<%=BBS_SEQ%>);"><%=SUBJECT%></a></nobr>

------------------------------------------------------------------------------------

#example1 {text-overflow-mode: clip; width: 200px; overflow:hidden;white-space : nowrap; }
#example2 {text-overflow-mode: ellipsis; width: 200px; overflow:hidden;white-space : nowrap; }
#example3 {text-overflow-mode: ellipsis-word; width: 200px; overflow:hidden;white-space : nowrap; }

 

------------------------------------------------------------------------------------

 

 

[ white-space ]


요소 안에서의
띄어쓰기와 같은 빈 공간을 조절할 때 사용합니다.


white-space에 사용되는 값

normal : 줄 바꿈 디볼트 값을 유지합니다.
pre : 문서 소스에 서식을 할당해서 문서가 표시되게 합니다.
nowrap : 요소 내에서 줄바꿈이 되지 않습니다.

예제

H1 {white-space: nowrap}
H1에서의 줄바꿈을 하지 않도록 설정합니다.  

[출처] text-overflow|작성자 알사장

[참고 사이트] http://kais.tistory.com/96
  Comments,     Trackbacks