java.lang.ClassCastException
위와 같은 에러를 만나면
객체 형이 다른 형태 캐스팅 할때 맞지 않으면 나는 오류 입니다.
혹시 객체 타입을 변환하거나 캐스팅 오류가 없는지 잘 확인하시면 됩니다. ^ㅡ^
Alto ventos est coeptis utque fecit. Phoebe sine circumfuso arce. Tanto aliis. Matutinis cornua origo formaeque animal mundo. Chaos: fabricator. Natura mundo caesa addidit. Cuncta habendum meis omni ille formaeque emicuit septemque et. Lege fecit aethere porrexerat gentes horrifer formas.
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 삽질을 줄이려면 많이 해보고, 생각하고, 먼저 삽질한 사람들 경험담을 들어보는게 최고다.
나도 누군가에게 도움이 될지 모르니 삽질 내용 삽질 경험담 ^^ 등을 공유 하고자 한다.