java.lang.ClassCastException
위와 같은 에러를 만나면
객체 형이 다른 형태 캐스팅 할때 맞지 않으면 나는 오류 입니다.
혹시 객체 타입을 변환하거나 캐스팅 오류가 없는지 잘 확인하시면 됩니다. ^ㅡ^
java.lang.ClassCastException
위와 같은 에러를 만나면
객체 형이 다른 형태 캐스팅 할때 맞지 않으면 나는 오류 입니다.
혹시 객체 타입을 변환하거나 캐스팅 오류가 없는지 잘 확인하시면 됩니다. ^ㅡ^
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<
html
>
<
head
>
<
meta
http-equiv
=
"Content-Type"
content
=
"text/html; charset=EUC-KR"
>
<
title
>Select Event</
title
>
<
script
type
=
"text/javascript"
>
function selectEvent(selectObj) {
alert(selectObj.value + "가 선택 되었습니다.");
}
</
script
>
</
head
>
<
body
>
<
select
name
=
"select"
onChange
=
"javascript:selectEvent(this)"
>
<
option
value
=
"menu1"
selected>메뉴 1</
option
>
<
option
value
=
"menu2"
>메뉴 2</
option
>
<
option
value
=
"menu3"
>메뉴 3</
option
>
</
select
>
</
body
>
</
html
>
<style type=”text/css”>
/*********************************************************
* javascript 글자수 제한 함수
*********************************************************/
/*
‘ ——————————————————————
‘ Function : fc_chk_byte(aro_name)
‘ Description : 입력한 글자수를 체크
‘ Argument : Object Name(글자수를 제한할 컨트롤)
‘ Return :
‘ ——————————————————————
*/
function fc_chk_byte(aro_name,ari_max,type){
var ls_str = aro_name.value; // 이벤트가 일어난 컨트롤의 value 값
var li_str_len = ls_str.length; // 전체길이
// 변수초기화
var li_max = ari_max; // 제한할 글자수 크기
var i = 0; // for문에 사용
var li_byte = 0; // 한글일경우는 2 그밗에는 1을 더함
var li_len = 0; // substring하기 위해서 사용
var ls_one_char = “”; // 한글자씩 검사한다
var ls_str2 = “”; // 글자수를 초과하면 제한할수 글자전까지만 보여준다.
for(i=0; i< li_str_len; i++){
// 한글자추출
ls_one_char = ls_str.charAt(i);
// 한글이면 2를 더한다.
if (escape(ls_one_char).length > 4){
li_byte += 2;
}else{// 그밗의 경우는 1을 더한다.
li_byte++;
}
// 전체 크기가 li_max를 넘지않으면
if(li_byte <= li_max){
li_len = i + 1;
}
}
$(“#”+type+”_length”).text(li_byte);
// 전체길이를 초과하면
if(li_byte > li_max){
$(“#”+type+”_length”).text(li_max);
ls_str2 = ls_str.substr(0, li_len);
aro_name.value = ls_str2;
}
aro_name.focus();
}
/*
‘ ——————————————————————
‘ Function : fc_chk2()
‘ Description : Enter키를 못치게한다.
‘ Argument :
‘ Return :
‘ ——————————————————————
*/
function fc_chk2(){
if(event.keyCode == 13) event.returnValue=false;
}
</script>
textarea 태그에서 fc_chk_byte를 함수를 호출함으로써 2번자 인자에 입력 글 자 수를 제한한다. fc_chk2함수는 엔터키를 제한한다 ^^;
한글 입력은 한글자에 2byte이기 때문에 함수에 1000으로 입력하면 500글자로 제한이 된다.
<textarea name=”contents” style=”height:100px;width: 402px” id=”msg_contents” onkeyup=”fc_chk_byte(this,1000,’msg’);” onkeypress=”fc_chk2()”></textarea>
자바스크립트에서 EL태그를 이용하여 값을 핸들링 할 경우가 있다.
예를들면 서버 값에 따라서 alert를 뿌려주거나, 서버 값에따라 ui를 핸들링 할 경우
등등 여러가지 많은 경우가 필요하겠지만,
분명 자바스크립트로 EL 태그를 컨트롤 한다면 더욱더 많은 웹 개발 핸들링을 할 수 있을 것이다 ^^;
간단하게 태그 이용방법을 보면
<script>
var example_value = “<c:out value=”${example_el.value}” />”;
</script>
다음과 같이 코딩할 경우 자바스크립트 변수에 EL태그 값을 넣어 줄 수가 있다.
자바스크립트에 날개를 달아보자 ~
2014년 갑오년이 왔습니다.
벌써 5일 이나 지났네요.ㅋ
2013년 1월에 블로그 시작했는데, 벌써 1년 ^^ 됬네요;
앞으로 쭉쭉 말처럼 달려가 말이오~~! ㅋ
2014년에는 전년도 보다 많은 정보와 자주 사용하는 내용 위주로
정리를 해볼 예정입니다.
또한, 앞으로 무궁무진 성장할 자바스크립트와,
자바스크립트 프레임워크 등등을.. 또
^^ 버전관리 Git 사용하고 있는데 이놈도 살짝 다뤄볼 예정입니다.
Java는 쭉 ! 관리될 예정이고
또한 SQL 과 NOSQL 도 다뤄볼 예정입니다.
년초에 너무 계획만 거창하게 생각하지 아닌지 모르겠네요.ㅎ
2014년 말처럼 쭉쭉 달려나가는
성장하는 heewoo 되보도록 하겠습니다. 끝
2013년 끝 자락에서 한해를 정리 하는 글을 써봅니다.
블로그 시작한지도 이제 정확하게 12 개월이 된 것 같네요, 올 1월 달 개설 ? 하여 제 개인 서버에 설치도 해보고,
비록 운영은 제대로 안되었지만, 그래도 조금씩 하고 있다는 것에 만족입니다..
기록 한다는 것은 정말 자신을 되돌아 보게 하고, 또 반성 하게 만드는 것 같습니다.
비록 개인 블로그로 시작했지만, 기록을 남긴다는게 얼마나 힘든건지 ^^ 새삼 느끼게 되구요.
맨날 말로만 ㅠ_ㅠ 한다지만, 역시 습관이 안된 저에게, 힘이 부족했습니다. 다가오는 새해 에는 습관을 더욱더 들일 예정입니다.
2013년 끝자락, 사무실에서 한해를 정리 해보자니, 주마등 처럼 2013년 많은 일들이 스쳐 지나갑니다.
많은 일들 이 있었고, 또 많은 인연들, 개인적인 사건 사고? 도 있었습니다.
물론 이 블로그는 제 개인적인 개발 일지 와 같은 개발에 필요한 글을 정리하고 있지만, 개발 스킬도 1년이 지난 많은
조금(?) 성장했습니다. 앞으로 더더욱 성장세를 탈거구요 ^^; 2014년엔 더더더 긍정적인 개발자가 되도록 많이 노력해야겠습니다.
안되고, 에러나고, 복잡한 문제 일수록, 한 템포 쉬어 가는 heewoo가 되겠습니다.
아 그리고 2013년에 정말 빼놓을 수 없는 사건이 있었습니다.
바로 26년 인생에 ^^ 정말 아름다운 부인이 생겼습니다.
결혼 하게 되었는데, 이 여자가 아니면 안됬기 때문에 ^^; 다가오는 갑오년에는 아내에게 더욱더 잘해줄겁니다.
글을 두서 없이 쓰다보니, 반성문이 된 기분이네요… ㅠㅠ ;
한해를 마무리하고 돌아본다는 건 참 .. 반성하게 되는 시간인것 같습니다. 또한 다가오는 새해를 위해 멋진 목표를 준비해야겠습니다.
목표는 최고를 지향하되, 계획은 최악을 가정하라(Hope for the Best, Plan for the Worst)
앞으로 성장하게 될 heewoo를 위해 파이팅!
갑오년 새해 복 많이 받으세요.
MySQL 에 Auto_increment 라는 속성이 있다. 다들 잘 아시겠지만. PK 또는 게시판 번호와 같은 중복되지 않는 값 을
처리할 때 많이 사용한다. 이름만 봐도 딱 자동 같은 느낌이 드는 넘이다.
그럼 이 자동 증가되는 변수에 그다음 값을 알아내는 방법은
show table status where name = ‘ 테이블 이름’;
다음 과 같이 입력해주면면
+——————–+——–+———+————+——+—————-+————-+—————–+————–+———–+—————-+———————+————-+————+—————–+———-+—————-+———+
| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comment |
+——————–+——–+———+————+——+—————-+————-+—————–+————–+———–+—————-+———————+————-+————+—————–+———-+—————-+———+
| latte_partner_list | InnoDB | 10 | Compact | 5 | 3276 | 16384 | 0 | 0 | 9437184 | 6 | 2013-12-30 17:10:23 | NULL | NULL | utf8_general_ci | NULL | | |
+——————–+——–+———+————+——+—————-+————-+—————–+————–+———–+—————-+———————+————-+————+—————–+———-+—————-+———+
화면이 짤려도 이해 ^^ 바랍니다. 테이블 상태에 대한 꽤 많은 정보를 얻어 올수 있다.
테이블 엔진, 버전, 등등등… 한번 명령어 입력하셔서 어떠한 정보를 알아 낼수 있는지 해보세요 :)
위 필드중 Auto_increment 가 있다. 바로 다음 증가될 자동 변수에 값이 나와있다. (현재값은 -1 하면되지만 데이터가 지워지면 값이 부정확해진다.)
위 속성에서 자동증가값을 찾아서 활용하면 된다. 끝!
ifconfig -a | grep eth
다음과 같이 명령어를 입력하면
랜카드 이더넷 mac주소를 확인 할 수 있습니다.
Git 을 이용하면서 편리하게 사용해주기 위한 웹 사이트가 있다
바로 GitHub 사이트다.
무료로 호스팅 해주는 대신
리누스 형님의 오픈 마인드를 더하면
누구나 공개 소프트웨어를 저장소에 올리는 샘이다.
나도 몇건 올려 놨는데 ^^;;
일단 오늘은 회사 업무차 회사에서 관리하는 코드내용을
공개하면 안되기 때문에 GitHub Private 저장소를 결제했다.
각 결제 버전마다 이름이 알맞게? 붙여진것 같다.
Micro, Small, Medium, Large…
가격은 $ 로 잘 표기 되어있다. ㅎㅎ 일종의 호스팅 비용이라 생각하자 ^^;
난 이중에서 Small 버전을 선택했다.
Private 저장소를 10개 생성 한다고 나와있다 ^,^ 다 채울날이 올런지..
하여간 , 자신의 여건에 맞는 결제버전을 선택한다.
또 한번 느끼는 부분이지만, 외국 사이트는 신용카드 결제가
너무 편하다.. ㅠㅠ 몇가지 정보만 입력하면 결제가 끝 !
순식간에 결제가 완료됬다.
캡쳐로 준비 못하였지만, 결제를 완료하고 나서 매달 결제가 될지 하는 부분도
설정 할 수 있다.
앞으로 Private 저장소로 비밀 프로젝트를 해볼 멋진생각을 하며…
분산버전관리시스템 줄여서 Git 이라 부른다…
리누즈 형님이 또 한건 하셨다.. 사실 위키에 보면 잘 나와있지만
리누즈 형님이 커널 개발에 이용하려 개발하였다고 나온다.
불과 몇년 전까지만해도 인기가 없었지만,
어느새, 형상관리 툴에 다크호스로 군림하여, 최고의 자리까지 넘보고있다.
이미, 많은 블로거님들 사이트에 소개가 있으니 난 패스…
사실 2012년에 진행된 안드로이드 프로젝트에서 팀원들 과 함께
Git을 사용한적이 있다. 그냥 딱 한마디로 너무 좋다..
다른 형상관리 시스템과는 ^^; 또 다른 맛이 있따.
근데 그 맛에 중독 된다…ㅋㅋ
이클립스에도 역시 Egit 플러그인 등 쉽고 편리하게 사용할수있는
기능들이 존재한다.
그럼 이번 카테고리에서는 Git Bash 를 이용한
Git 커맨드 정리와 전반적인 Git 시스템에 대해 정리 한다.
자주 협업을 하거나 팀원들 간에 작업이 많이 있지는 않지만,
내가 작업하는 코드에 버전 관리와
먼 훗날 협업하며 진행할 프로젝트에 대비하여
난 오늘도 Git으로 삽질한다.
-ps 삽질을 줄이려면 많이 해보고, 생각하고, 먼저 삽질한 사람들 경험담을 들어보는게 최고다.
나도 누군가에게 도움이 될지 모르니 삽질 내용 삽질 경험담 ^^ 등을 공유 하고자 한다.