글
Java/J2EE 2012/05/07 23:33[Tomcat] 프로젝트 import후 tomcat에 publishing되지 않을때
서버 설정이 다음과 같이 되어있기 때문입니다.
servers view에서 서버를 더블클릭하면 이런 설정을 볼 수 있는데, 리소스가 바뀌어야 publish하도록 되어 있죠. 개발을 시작한 프로젝트에서는 어차피 만들면서 리소스가 바뀌는데, 임포트 한상태 후 변경되지 않은 클래스 파일은 수정하지 않는 한 바뀌지 않는 거죠. publish되지 않는 다는 것은 tomcat을 실행할 임시 애플리케이션 폴더에 컴파일된 class파일이 복사되지 않는 것을 의미합니다.
이 때 Automatically publish after a built event로 변경한 후 maven build 등으로 build event를 발생시키면 모두 publishing 됩니다. 그 후에는 Automatically publish after a build event로 해놓는 것이 수정할 때마다 자동으로 배포되니 편리합니다.
트랙백
댓글
글
Linux/Utils 2012/04/02 20:16Putty colors.
1. Zenburn
Default Foreground: 255/255/255
Default Background: 51/51/51
ANSI Black: 77/77/77
ANSI Green: 152/251/152
ANSI Yellow: 240/230/140
ANSI Blue: 205/133/63
ANSI Blue Bold 135/206/235
ANSI Magenta: 255/222/173 or 205/92/92
ANSI Cyan: 255/160/160
ANSI Cyan Bold: 255/215/0
ANSI White: 245/222/179
트랙백
댓글
글
C 2012/03/24 23:55리눅스 c++ 프로그래밍 시작하기.
1. vim 배우기
인터넷 검색하면 단축키라든가 사용법이 많이 나와있으나,
사수님이 빌려주신 손에 잡히는 Vim, 김선영 지음, 인사이트,
이 책이 초보도 읽기 쉽게 잘쓰여 있음.
2. 간단한 g++ 사용법
g++ -W -Wall -O2 -o file src1.c src2.c
bluekyu 님의 리눅스에서 기본적인 C 또는 C++ 컴파일 하기 참조.
3. screen 사용법
screen -S mysession
screen 기본 사용법 참조.
4. 코드에서 들여쓰기하기
나중에 좀더 자세히 알아보고 (소스코드에서의 들여쓰기와 탭 관련 문의 이런 글이라든가)
일단은 스페이스 네번.
트랙백
댓글
글
Java/Tip 2012/02/29 15:12이클립스를 이용한 파일 비교
예를 들면,
A라는 프로젝트에서 복사 수정한 B라는 프로젝트가 있는데
A 프로젝트의 소스코드에서 변경된 부분을 확인하고 싶을 때는 다음과 같이 하면 됩니다.
Package Explorer 등에서 두 파일을 모두 선택합니다.
오른쪽 클릭 또는 Context 버튼을 눌러 컨텍스트 메뉴를 띄웁니다.
Compare With > Each Other를 차례로 선택합니다.
출처: Using Eclipse to compare two files
트랙백
댓글
글
상식 2010/08/08 20:37모토로이를 위한 동영상 화질 테스트
트랙백
댓글
글
Android 2010/05/24 00:44android Dev Guide-안드로이드란 무엇인가?
안드로이드에는 이메일 클라이언트, SMS 프로그램, 달력, 지도, 브라우저, 연락처 등의 핵심 앱들이 포함됩니다.(ship with 해석하려다 포기) 모든 앱은 자바로 작성됩니다.
트랙백
댓글
글
C 2010/01/31 16:26[C++ Primer Plus] CH 3. Dealing with data
우선 정수 형식에 대한 코드입니다.
실행해보면,
2:4
3:8
4:16
5:32
6:64
7:128
8:256
9:512
10:1024
11:2048
12:4096
13:8192
14:16384
15:32768
16:65536
17:131072
18:262144
19:524288
20:1048576
21:2097152
22:4194304
23:8388608
24:16777216
25:33554432
26:67108864
27:134217728
28:268435456
29:536870912
30:1073741824
31:2147483648
32:4294967296
33:8589934592
34:17179869184
35:34359738368
36:68719476736
37:137438953472
38:274877906944
39:549755813888
40:1099511627776
41:2199023255552
42:4398046511104
43:8796093022208
44:17592186044416
45:35184372088832
46:70368744177664
47:140737488355328
48:281474976710656
49:562949953421312
50:1125899906842624
51:2251799813685248
52:4503599627370496
53:9007199254740992
54:18014398509481984
55:36028797018963968
56:72057594037927936
57:144115188075855872
58:288230376151711744
59:576460752303423488
60:1152921504606846976
61:2305843009213693952
62:4611686018427387904
63:9223372036854775808
64:0
Signed Integer Type
short values can be -32768~32767 (2 bytes)
int values can be -2147483648~2147483647 (4 bytes)
long values can be -9223372036854775808~9223372036854775807 (8 bytes)
Unsigned Integer Type
unsinged short value can be 0~65535 (2 bytes)
unsigned int value can be 0~4294967295 (4 bytes)
unsigned long value can be 0~18446744073709551615 (8 bytes)
Character Type
CHAR_BIT: 8 bits
char value can be -128~127 (1 bytes)
signed char value can be -128~127 (1 bytes)
unsinged char value can be 0~255 (1 bytes)
커널버전은 2.6.31 이라고 나오고, x86_64인데, 현재 64bit로 컴파일하고 있는지, 32bit로 컴파일하고 있는지도 모르겠습니다. 저는 beginner입니다.
에, 다음은 overflow에 대한 얘기가 쓰여 있는데, 빙글빙글 돌고도는군요
다음은 int와 char 에 대한 형변환 얘기도 있는데, cout이 입력되는 데이터의 형식에 따라 다르게 행동해서 알아두어야 할 필요도 있을 것 같습니다. 예를 들면, 10진수 65가 int에 들어 있으면, cout이 65를 출력하고, char에 들어있으면 A를 출력하는 식이죠.
변수이름에 \u로 escape한 unicode를 쓸 수 있다고 하는데, 일단 패스패스.
int와 char가 signed 인지 unsigned 인지는 구현에 따라 달라진다고 써있네요.
그 다음에, bool 형식에 대한 얘기가 나와있는데, 자바에서는 true는 true고, false는 false 일 뿐이었는데, c++에서는 bool 형식에 0을 할당하면 false가 할당되고, 0이 아닌 값을 할당하면 true가 할당되는, 또 int 형식 변수에 true를 할당하면 1값을 갖게 되고, false를 할당하면 0값을 갖게 되는... 좀더 복잡하게 프로그램을 짤 수 있게 되어있네요.
다음은 const Qualifier(수식어?)에 대한 얘기가 나오는데, #define을 사용하는 대신 const를 사용하면 변수 형식을 지정할 수 있고, 제한된 범위 내에서 사용할 수 있는 등의 장점이 있다고 합니다~
이제 드디어 부동소수점이네요.
실행한 결과는~
FLT_DIG: 6
DBL_DIG: 15
LDBL_DIG: 18
The following are the number of bits used to represent the mantissa
FLT_MANT_DIG: 24
DBL_MANT_DIG: 53
LDBL_MANT_DIG: 64
The following are the maximum and minimum exponent values
FLT_MAX_10_EXP: 38
DBL_MAX_10_EXP: 308
LDBL_MAX_10_EXP: 4932
FLT_MIN_10_EXP: -37
DBL_MIN_10_EXP: -307
LDBL_MIN_10_EXP: -4931
지금 Floating point 를 보니, 부동소수점 자체가 잘 기억이 안나므로 나중에 천천히 보도록 하고 일단 패스패스.
뒤에 Type Conversion 얘기가 나오는데, Type Conversion 을 실제로 쓸 때 읽어보기로 하고 패스~
Chapter 3. 는 너무 대충대충 넘어가네욥.
남은 내용...
CH4. Compound Types
CH5. Loops and Relational Expressions
CH6. Branching Statements and Logical Operators
CH7. Functions: C++'s Programming Modules
CH8. Adventures in Functions
CH9. Memory Models and Namespaces
CH10. Objects and Classes
CH11. Working with Classes
CH12. Classes and Dynamic Memory Allocation
CH13. Class Inheritance
CH14. Reusing Code in C++
CH15. Friends, Exceptions, and More
CH16. The string class and the Standard Template Library
CH17. Input, Output, and Files
+ floating point
이번 장의 영어
humidity
- These plants need heat and humidity to grow well (Naver 영어사전)
Constitution
Constitution and its relative frequency, or the number of available Elvis impersonators. (본문)
사실 본문 중에서 데이터의 예로 들고 있는 문장인데, 해석이 되지 않아서 다시 보니
the most common letter in the U.S. Constitution and its relative frequency,
라는 문장이네요.
트랙백
댓글
글
C 2010/01/31 02:07[C++ Primer Plus] CH 2. Setting out to C++
책을 하나 구입했습니다. C++ Primer Plus.
실습환경은 우분투 9.10, Eclipse 3.5 + CDT 입니다.
CDT를 사용하기 위해서는
Eclipse 사이트에서 CDT가 포함된 이클립스 배포본을 다운받아도 되고,
Help->Install New Software 에서 설치해도 됩니다.
현재 우분투에 설치되어 있는 GTK에 버그가 있는지 SWT에 버그가 있는지,
어쨌든 GTK를 사용하는 이클립스의 버튼들이 작동하지 않습니다.
단축키를 사용하면 누를 수 있습니다. Next 버튼의 경우 N키를 누르면 됩니다.
어쨌든 CDT를 설치하고, 이클립스를 재시작하고 나서 Perspecitve를 바꾸려고 하니
버튼이 눌리지 않는데, OK 버튼에 단축키가 없습니다.
그냥 C/C++을 더블클릭하면 됩니다.
이제 Perspective를 바꾸고 c++ 프로젝트를 생성했습니다.
전 c++ Beginner 이므로 Hello World C++ Project를 만들었습니다.
그런데 Build가 되지 않아서 보니 g++ 패키지가 설치되어 있지 않습니다.
그래서 다시 g++ 관련 패키지를 설치했습니다.
Project -> Build All(Ctrl+B) 하고,
Ctrl+F11 하면 실행을, F11하면 디버깅을~
아주 간단한 HelloWorld.cpp 입니다.
아주 간단하지만 Java에만 익숙한 저에게는
<< 연산자에 대한 Overloading 이 좀 생소합니다.
이 연산자가 어떻게 정의되어 있는지 보고 싶어서
/usr/include/c++/4.4/iostream 과 ostream 등의 파일을 열어봤지만
Beginner인 저에게는 외계어일뿐.
어쨌든 잘 실행되었습니다.
여기서 잠깐 42 페이지의 C++ Source Code Style을 보고 가죠~
저에게는 번역서가 없어서 옳은 해석인지 알 수 없습니다.
한 줄에는 한 문장만 쓰기
An opening brace and a closing brace for a function,
each of which is on its own line
함수를 위한 열고 닫는 괄호는 별도의 줄에 쓰기
Statements in a function indented from the braces
함수 안의 문장들은 괄호에서 들여쓰기
No whitespace around the parentheses associated with a function name
함수 이름과 연관된 괄호 주위에 공백 넣지 않기
그러나 교보문고에서 삼만 육백원이나 하네요.
그럼, 다음 예제는 p.43의 carrots.cpp 응용(이라고는 하지만 같은 예제)
이 예제를 c프로젝트를 만들어 다음과 작성해보면, 이와 같은데,
아무런 문제없이 빌드되고 실행됩니다.
얼마전에 급 C공부하려고 Visual Studio 2008에서 콘솔 C프로그램 만들었을 때는 변수 선언은 모두 가장 먼저 해야 했던 것 같은데...
어쨌든 C++에서는 다음과 같은 팁이 있다고 합니다.
변수가 처음 사용되기 직전에 변수를 선언해주세요~
- cin 사용하기
- cout 사용할 때 문자열 병합하기
- cin과 cout, 클래스와의 첫만남
- functions
등등등...
별 내용은 없고,
'using' 지시어에 대한 얘기가 나오네요~
main을 포함한 함수 안에서 사용되면
그 함수 안에서는 그 네임스페이스를 사용할 수 있다네요.
<Review Question>
1. 씨쁠쁠 프로그램에서 모듈을 뭐라고 부를까요?
function?
2. 다음의 전처리 지시기는 뭘하는 걸까요?
#include <iostream>
... iostream에 정의된 데이터타입과 함수를 쓰겠어요~라는 의미?
3. 다음의 문장은 뭘하는 걸까요?
using namespace std;
... cin과 cout을 쓰겠어요.
4. "Hello, world" 와 줄넘김을 표시하는 문장을 작성하세요~
cout << "Hello, world" << endl;
등등등~
APPENDIX J에 보니 위에 Review Question의 답은...
뒤에 Programming Execises 에는 두번째 장이라서 그런지 별로 재밌는 문제는 없네요.
자 이제 C++의 첫발을 내딪었습니다.
앞으로 남은 부분은
CH3. Dealing with Data
CH4. Compound Types
CH5. Loops and Relational Expressions
CH6. Branching Statements and Logical Operators
CH7. Functions: C++'s Programming Modules
CH8. Adventures in Functions
CH9. Memory Models and Namespaces
CH10. Objects and Classes
CH11. Working with Classes
CH12. Classes and Dynamic Memory Allocation
CH13. Class Inheritance
CH14. Reusing Code in C++
CH15. Friends, Exceptions, and More
CH16. The string class and the Standard Template Library
CH17. Input, Output, and Files
사실 뭔가 많이 남아있는 것 같지만, Java 기초책, 예를 들면, 열혈강의 자바 요런 책 한번 쭉 보는 거나 별 다를 바 없다는 생각을 갖고~하루에 한장씩~후딱 끝내버리겠슴다!
(씨언어책 이틀보고 면접보러 갔더니 면접관 표정이 별로 좋지 않았다는)
(바로 위 달력 그림은 Daum 캘린더 캡쳐해서 사용했습니다)
이번 장의 영어.
Stripped of the trimmings: ?
p.31 Stripped of the trimmings, the sample program shown in Listing 2.1 has the following fundamental structure
prevalent
The current prevalent philosophy is that it's preferable to be more discriminating and limit access...
- 본문 중에서
These prejudices are particularly prevalent among people living in the North.
- Naver 영어사전
myriad
C++ programmers are blessed (or cursed) with myriad options ...
- 본문 중에서
Designs are available in a myriad of colours
- Naver 영어사전
* 그나저나 이 스킨을 아이팟 터치에서 보니 레이아웃이 깨지네요~ 쓰읍
트랙백
댓글
글
Linux 2010/01/24 22:55우분투 이클립스 프로젝트 생성시 버튼 무시 버그
export GDK_NATIVE_WINDOWS=true
그리고 같은 터미널에서 이클립스 실행.
워크스페이스 변경하면 다시 버튼 안눌림.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=291257
더 간단한 해결 방안: 단축키 사용 또는 선택+Enter
https://bugs.eclipse.org/bugs/show_bug.cgi?id=295173
3.6 버전에서는 해결된 것으로 보임~
잡설~
윈도우에서는 딴 짓을 더 많이 하는 것 같아서 여러가지를 배워보고자 리눅스를 사용하기로 했습니다.
우분투가 좋다는 얘기가 많아서 그동안 익숙했던 페도라 대신 우분투를 설치했습니다.
사실 페도라를 설치하려고 했지만 Fedora 12의 설치프로그램이 i5 750, P577D 가 장치되어 있는 하드디스크를 찾지 못해 설치가 진행이 되질 않아서 설치하지 못했습니다.
우분투를 설치하고 나니, 글꼴 때문에 고민이기는 하지만, 지금은 일단 나눔고딕으로 바꿔서 사용하고 있습니다.
자, 이제 OpenJDK를 설치하고, Eclipse를 다운받아서 압축을 해제하고 실행시키고 새 프로젝트를 만들려고 하니,
Next버튼과 Finish 버튼이 눌리지 않는 것입니다. 그래서 찾아보니, 버그 리포트가 있네요~
엄청나게 긴 버그 리포트 페이지네요~
일단 단축키를 사용할래요~
트랙백
댓글
글
상식 2009/12/12 18:21한글 저장 설정
다음 번에 불러오니 파일이 깨져있다고 하셨습니다.
hwp 파일을 기본적으로 UTF-16을 사용하기때문에, 간단한 프로그래밍으로도 기록되어 있는 문자열을 확인할 수 있습니다.
(http://qaos.com/article.php?sid=2239 에서 소개하고 있는 DocRepair 라는 프로그램으로 간단히 해볼 수 있습니다.)
그런데 막상 해보니, 1MB 정도의 파일에서 처음의 한 20줄 정도는 제대로 기록되어 있지만, 나머지는 문자열도 파일의 구조도 확인할 수 없었습니다.
요즘 바쁘기도 했지만 그 나머지 부분에 데이터가 들어 있을지 확인할 수 없어서 시도해보기도 뭐 했습니다. 나중에 시간이 나면 해볼 생각입니다.
그리고 한글과컴퓨터에서도 복구서비스를 제공하지 않고, 그런 서비스를 제공하는 회사도 없습니다.
현재 한글버전이 2007로 올라갔지만, 얼마나 저장 프로세스가 개선되었을지 알 수 없기 때문에,
시간과 노력이 들어간 작업물을 지키려면 백업이 필수라고 할 수 있습니다.
일단 한글의 도구->환경설정에서 저장 옵션을 이용하면 좀더 안전하게 저장할 수 있습니다.
먼저 무조건 자동 저장과 쉴 때 자동 저장 옵션을 통해 자동으로 저장하게 해놓고,
압축저장은 해제합니다. 그리고 백업파일 만듦이나 동시 저장 옵션을 통해 일반 텍스트 파일로 동시에 저장하게 해놓으면 좀더 안전하게 저장할 수 있습니다.
개인의 필요에 따라 적절하게 설정하면 될 것 같습니다.
또 버전관리 프로그램을 이용하거나 아니면 간단히 날짜별로 새로운 이름으로 파일을 저장하는 것도 도움이 될 것 같습니다.
RECENT COMMENT