티스토리 툴바

달력

012012  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  

정리가 안됐으므로 절대 가져가지 말것!!!
/* 기본 스타일 */
body
{
 color:#000000; 
 font-size:75%;
 line-height:1.2;
 font-family:돋움, Dotum, 굴림, Gulim, Verdana, AppleGothic, sans-serif;
 background:#fff url(../images/common/bg_body.gif) repeat-x 0 0;
 /* background-attachment: 스크롤을 따라 움직이는 여부 scroll, fixed */
}

/* 링크스타일 */
/* 가상 클래스 */
a:link, a:visited, a:active, a:focus
{
 text-decoration:none; 
}

a:hover /*  */
{
 text-decoration:underline;
}

a:link /* 방문한적이 없는 링크 */
{
 color:#4f4f4f;
}

a:visited /* 방문한 적이 있는 링크 */
{
 color:#8a2e91;
}

a:hover, a:active, a:focus
{
 color:#100; 
}
/*
a:active /* 링크가 활성화 됐을 때
{
 
}

a:focus /* 포커스가 갔을 때
{
 
}
*/

/* 숨김 컨텐츠 */
#skipNav, .blind, legend, .banner h3, .search h3, #slogan h2
{
 /*
 일반적인 트릭
 visibility:hidden;
 width:0;
 height:0;
 */
 position:absolute;/* 본문의 일반적인 흐름을 벗어남. */
 left:-9999em;
 /* 반드시 블럭 엘리먼트에만 적용
 text-indent:-9999em
 */
}

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro

2011 - 거북이

WantIt 2011/01/24 10:05

요새 이녀석에 꽂혀버렸다.


크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro

2011 - 어항

WantIt 2011/01/24 10:00


이번에는 어항...
기존에 2자 어항이 있었는데...
물관리 제대로 안하면서...
어항 치우고... 그냥 수납장에서 애들 관리하다가...
이제서야 다시 어항을 찾으니...
한 겨울 동장군때문인지 깨져버렸다.
관리소홀...

하긴 애초에 어항 선택을 잘못했다는 마음때문인지 잘 됐다는 생각이 들기도...

청경어항이라는거 외관상 보기 좋게 장만하고 싶지만...
우선 어항이 필요하다는 거에 스크랩 ^^*

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro


사실 난는 약 이틀동안 기계식 키보드에 관해서 공부하면서도 아직 까지 문외한이다.
청축, 흑축, 갈축... 축의 샐깔에 따른 클릭, 넌클릭, 리니어의 구분방식은...
그냥 개념만 이해할 뿐 언젠가 옆 사람이 타이핑을 할 때 들렸던 딸그락 소리만 기억날 뿐이다.
진정한 개발자용 기계식 키보드는 뭐란 말이냐...

우선, 소리가 큰 클릭방식은 무조건 비지향하기 때문에,
넌클릭, 리니어 중에서 알아봤다.

예전에 명성을 떨쳤던 키보드들은 생산이 중단되었다고 하고...
나는 숫자 키패드가 있어야지만 쓰니깐... 작은 놈들은 안되겠고...
104 ~ 106 중에 적당한 넌클릭은 찾기가 힘드니...
우선  제닉스 테소로 M7 LED black 으로 입문이다... 가보자...

희안하리 만치 led 백라이트가 마음에드는 제품이네...
(나 원래 이런놈 아닌데...)

정전용량 키보드라는 놈이 더 좋은 놈이라던데...
이놈은..
기계식으로 리니어 써보고, 넌클릭 써보고...
최종적으로 사용해봐야겠다. 오예 ~



흐음... 댓글평이 좋지 안은 관계로..
레오폴드 약도...

직접가서 견식해보고 결정해야겠다...
언제가지..
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro

1. 이클립스 옵션 조정

우선 이클립스 폴더안에 있는 eclipse.ini에 다음을 추가 하거나 수정해 줍니다.

-Xverify:none
-XX:+UseParallelGC
-Xms256M
-Xmx512M

-Xverfify :
초기 시동시 verfify체크를 하지 않습니다. 당연히 시동이 빨라 집니다. 플러그인아 features에 문제가 발생 할 수 있습니다. 플러그인아 변경 사항이 있을 경우에는 이걸 키고 시동하시고, 별 문제 없으면 추가해서 사용하세요.
-XX:+UseParallelGC :
Parallel Collector를 사용 하도록 합니다. 패러럴로 모아 준다니.. 빨라지겠죠.. 체감 속도가 올라 갑니다. 다중 프로세서를 사용하시는 분들은 필수.
-Xms256M
이클리스가 시작시 잡는 메모리(256메가 바이트)
-Xmx512M
이클리스가 사용하는 최대 메모리(512메가 바이트). 메모리가 어느 정도 되신다고 생각 하시면, 늘려 주셔도 됩니다.



2. 중간중간 메모리를 정리해 주자


Window > Perference > General에 보면 Show heap status라는 옵션이 있습니다. 이걸 켜 주시면, 화면 오른쪽 하단에 아래와 같은 아이콘이 생깁니다.
사용하다가, 메모리가 많이 올라 갔다 싶거나, 느려졌네 싶을때 마다, 옆에 쓰레기통 아이콘을 눌러 주세요. 메모리가 확 줄어 듭니다. 그러면 좀 더 쾌적하게 작업을 하 실 수 있을 겁니다.

추가로 메모리는 좀 들긴 하지만 자동 가비지 컬랙션 해주는 플러그인을 설치 하셔도 됩니다.




3. 사용하지 않는 검사를 없애 준다.

필요 이상으로 많은 검사를 많이 해서 느려지는 경우도 많습니다. HTML이나 그외 등등의 검사도 거기에 포함되죠, 딱 필요한 검사만 하도록 합니다.
Window > Perferences > Validation에서 자기가 사용하는 옵션을 켜 줍니다. 저같은 경우에는 PHP를 요즘 사용하고 있어서.. PHP만 켜 줬습니다.

그리고, 영어 스펠링 검사입니다. 영어 단어를 잘 모르지만, 느려지는건 못 참아서.. 그냥.. 꺼 줬습니다.
Window > Prereces > General > Editors > Spellings에서 Enable spell checking을 과감하게 꺼 줍니다.



5. 잘 안 쓰는 기능 끄기 및 사용습관 바꾸기.


코딩하는 공간에서 잘 사용하지 않거나, 있는둥 마는둥 하는 기능을 꺼 줍니다.

Automatic folding 끄기
코드 옆에 더하기 표시 나와서, 코드를 펼쳤다.. 닫았다 하는 기능입니다. 눈에도 안 띄고 전 잘 안 쓰는 기능이라서 꺼 버립니다.
Window->Preferences->Java(또는 사용언어)->Editor->Folding 모든 옵션을 해제(disable) 합니다.옵션을 모두 해제(disable)한다.

Automatic Code Insight 끄기
Window->Preferences->Java(또는 해당언어)->Editor->Code Assist 에서 Enable auto activation 항목을 해제(disable)합니다. 자동으로 동작하는 code assist 기능은 꺼지지만, ctrl+space러 여전히 code assist를 사용할 수 있습니다. 손이 좀 불편하면 이클립스가 빨라집니다 -_-;;

사용하지 않는 플러그인 삭제 하기
이클립스를 패키지로 설치 하도 보면, 사용하지 않는 기능도 많이 들어 가게 됩니다. 그리고 이것저것 설치하기도 하고요. 그 중에서 사용하지 않는 플러그인은 삭제해 주세요.

사용하지 않는 프로젝트 닫아주기
현재 작업과 관련없는 프로젝트를 닫아 주세요. 이클립스가 접근하는 파일의 갯수를 줄여 줍니다.

사용하지 않는 파일은 닫아주기
작업하다가 사용하지 않는 창은 닫아주세요. 메모리가 절약됩니다. 이클립스를 종료시 편집하던 문서를 모두 닫고 종료하는건 다음에 이클립스를 띄울때 좀 더 가볍게 띄울 수 있습니다. 그리고 Window->Preferences->General->Editors에서 Close editors automatically를 켜주세요. 그럼 아래 설정된 숫자만큼만 문서가 열립니다. 그 이상의 문서는 자동으로 닫아집니다. 이렇게 사용하면, 무심결에 많이 열린 파일이 적어집니다. 메모리도 절약 되고요.. ^^*

사용하지 않는 플러그인을 start list에서 제외하기
Window > Preferences > General > Startup and Shutdown에서, 불필요한 플러그인을 startup list에서 제외합니다. 이렇게 하면 이클립스 실행시 좀 더 가볍게 실행 할 수 있습니다.



6. 그래도 느리다.


좀 더 처절하게 가 보겠습니다.

이클립스가 설치된 폴더에 바이러스를 검사를 꺼보세요.
백신마다 보면, 예외사항이 있을 겁니다. 거기서 이클립스가 설치 된 폴더를 예외에 넣어 주세요. 백신을 끄고 사용하면 더 좋지만, 그것 까지는 좀 그렇다면, 이 정도만 해 주세요.

작업하는 파일들과 이클립스 프로그램을 작은 파티션을 만들어서 관리해 주세요.
헤더의 움직임을 최소화 해주고 빨라집니다. 하드디스크에서 디스크 조각모음하는것 보다 훨씬 좋습니다.

출처 : http://gyuha.tistory.com/289
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro

 

/eclipse/configuration/config.ini 파일을 열어서 다음과 같이 수정해준다.

 

# The comma-separated list of locations to search for the splash screen file (splash.bmp).
# For each list element a subdirectory structure based on the pattern nl/<locale> is searched.
# The system binds to the first matching file.  There is no default value.
# osgi.splashPath = platform:/base/plugins/org.eclipse.platform
osgi.splashPath =
platform:/base/plugins

 

platform:/base/ 의 의미는 이클립스의 Home위치를 말한다.

 

그다음 bmp포맷의 그림파일을 만들어서 /eclipse/plugins 하위에 추가하면

 

위치는 원하는 곳으로 설정하면된다...

 

기본적으로 eclipse/plugins/org.eclipse.platform_3.2.2.r322_v20070117b 하위를 보면 splash.bmp파일이 있다

 

이곳으로 설정하고 bmp를 전환해도 된다.

 

org.eclipse.platform_3.2.2.r322_v20070117b 와 같은 폴더가 아니라도 당황하지말라! 이클립스 버전이 틀려서 그러니..

 

eclipse/plugins/org.eclipse.platform와 비슷한 폴더를 찾어봐라...

 

이클립스 로딩시 원하는 화면으로 세팅할수 있다.



 

Eclipse SDK

Version: 3.2.2
Build id: M20070212-1330

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro

1.DispatcherServlet 

   - 웹브라우저로부터 송신된 Request를 일괄적으로 관리한다.

2.HandlerMapping

  - RequestURL과 Controller 클래스의 맵핑을 관리한다.(즉, DispatcherServlet에서 바로 Controller로 보내는게 아니라 handlerMapping을통해 Requesturl을 구분해서 Controller로 전달한다.)

관련 클래스

 클래스  설명

 org.springframework.web.servlet.handler.

BeanNameUrlHandlerMapping

RequestURL과 스프링 설정 파일에 정의된 Request 컨트롤러의 name 속성을 연관 지음으로써 Request 컨트롤러를 해결한다. 스프링 설정 파일 내에 HandlerMapping 인터페이스의 정의가 존재하지 않는 경우 디폴트값이 인스턴스가 된다 . 

 org.springframework.web.servlet.handler.

SimpleUrlHandlerMapping

RequestURL과 Request 컨트롤러를 정의한다. Bean 정의 파일 내에서의 Request 컨트롤러의 분산을 방지한다. 

 org.springframework.web.servlet.handler.

metadate.CommonsPathMapHandlerMapping

Request 컨트롤러에 메타 데이터를 정의함으로써 RequestURL과의 관련을 정의. Apache Jakarta commons attribute 라이브러리가 필요하다. 

 

3.Controller

  -비즈니스 로직을 호출하여 처리 결과 ModelAndView 인스턴스를 반환한다.

 클래스 설명 

 org.springframework.web.servlet.mvc.

AbstractController

 . GET,POST를 허가하는 Request() 메소드

 . 세션의 체크등을 스프링 설정 파일에서 설정할수 있는 범용적인 클래스 

 org.springframework.web.servlet.mvc.

SimpleFormController

웹 브라우저로부터 송신된 입력 폼을 처리하는 확장된 클래스 

 org.springframework.web.servlet.mvc.

multiaction.MultiActionController

복수 RequestURL에 대해 개별 처리를 구현하는 확장된 클래스 

 

4.ViewResolver

   -Controller 클래스로부터 반환된 View 정보가 논리적인 View이름일 경우에는 bean설정 파일에 정의되어 있는 ViewResolver 클래스를 이용하여 클라이언트에게 출력할 View 객체를 얻게된다.

 

 클래스 설명 

 org.springframework.web.servlet.view.

internal.ResourceViewResolver

.web-inf 디렉터리안에 있는 ViewResource를 해결한다.

.스프링 설정 파일 안에 ViewResolver인터페이스 정의가 존재하지 않는 경우 디폴트 인스턴스이다. 

 org.springframework.web.servlet.view.

ResourceBundleVuewResolver

.프로퍼티 파일 상에서 View 명과 그 실체가 되는 View를 관련짓는다.

. 프로퍼티파일은 클래스 패스 상에 배치한다.

 org.springframework.web.servlet.view.

velocity.VelocityViewResolver

 Velocity템플릿에서 작성된 view를 해결한다.

 

5.View

  -프레젠테이션층으로의 출력 데이터를 설정

 클래스 설명 

 org.springframework.web.servlet.view.

InternalResourceView

JSP등의 리소스 전용의View.Request속성에

모델을 세트하여 requestDispatcher 클래스를 참조한다음, 해당 View로 forward한다. 

 org.springframework.web.servlet.view.

view.JstlView

.JSTL을 사용한 페이지 전용의 view.InternalResourceView클래스의 서브 클래스

.스프링의 메시지 소스파일을 JSTL의 포맷태그로부터 참조할수 있다. 

 org.springframework.web.servlet.view.

velocity.VelocityView

벨로시티 템플릿 전용의 View 

 

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro

스프링 프레임 워크에서 POJO 빈에 대한 정보를 Properties 파일이나 XML 파일을 이용하여

 POJO 빈에 대한 정보를 관리한다.

 

 일반적으로 대부분의 애플리케이션에서는 XML파일을 사용한다.

 그러면 이러한 XML 파일을 스프링 프레임 워크가 어떻게 찾아낼까??

 

 먼저 스프링이 POJO빈에 대한 정보를 담은 XML 파일을 읽을 수 있도록 하기위해서는 web.xml 파일에 아래요소를 추가해야한다.

 

ContextLoaderListener 는 스프링의 root WebApplicationContext 를 시작하기 시키기 위한 Bootstrap listener 이다.

 

<web-app>

...

<listener>

         <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class>

</listener>

...

</web-app>

 

 

Listener 를 추가해 넣으면 서버가 시작되면서 자동적으로 스프링프레임워크의 ContextLoaderListener 클래스가 초기화 된다.

 

ContextLoaderListener 는 기본적으로 설정파일이 "/WEB-INF/applicationContext.xml" 로 설정되어 있다.

따라서, 서버가 시작될 때 web.xml 에 따로 설정해 주지 않는다면 기본 설정 파일을 찾아서 로딩하게 된다. 

                                 // Listener 가 정의되지 않았다면 기본설정 파일은

                          // [서블릿이름]-servlet.xml  파일 이다.

                          // 여기서 [서블릿이름] 이란

                                         <servlet>

                                              <servlet-name>dispatcher</servlet-name>

                                              <servlet-class>

                                                    org.springframework.web.servlet.DispatcherServlet

                                              <servlet-class>

                                                   </servlet>

                          // dispatcher 를 정의한 서블리이름 dispatcher가 된다. --> dispatcher-servlet.xml

)

0

이것을 변경하기 위해서는 context-param web.xml 파일에 설정해 주면 된다. (구분은 콤마( ' , ') 나 공백이다. )

 

<web-app>

       <context-param>

                 <param-name> contextConfigLocation </param-name>

                 <param-value>

                            /WEB-INF/applicationContext.xml ,

                       /WEB-INF/applicationContext-acegi-security.xml ,

                       /WEB-INF/applicationContext-common-authorization.xml,

                       /WEB-INF/applicationContext-acegi-security-memory.xml

                 </param-value>

       </context-param>

</web-app>

 

 

 

 

+ Log4j 적용 방법

 

1. Log4j 라이브러리를 다운로드 받아 웹 어플리케이션의  classPath 에 위치시킨다.

2. Web.xml 파일을 수정한다.

 

<web-app>

...

        <context-param>

               <param-name> log4jConfigLocation </param-name>

               <param-value> /WEB-INF/config/log4j.properties </param-value>

        </context-param>

 

        <listener>

               <listener-class> org.springframework.web.util.Log4jConfigListener </listener-class>

        </listener>

...

</web-app>

[출처] Spring - Web.xml 바로 알기|작성자 freesemo

원문 적어주신분 ~ 감사합니다.

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro
얼마전에 ibatis의 프로젝트명이 mybatis로 변경됐다는 사실을 알게됐습니다.
홈페이지 주소도 http://www.ibatis.com 에서 http://www.mybatis.com 으로 변경되었죠.

그래서 문제가 되는 내용은 기존에 ibatis 를 사용하며
sqlMap XML 파일의 DOCTYPE 을
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
이렇게 사용하신 분들은 이클립스에서 지원하는 ibatis 코드어시스트 기능이 동작하지 않는다는 것입니다.
(http://www.ibatis.com/dtd/sql-map-2.dtd 을 익스플로어에서 열어보면 깨져버리죠...)

허나, ibatis 진영도 생각이 있는지라 dtd주소를 그대로 없애버리지는 않고 기존에 apache 진영에서 사용하던 주소의
dtd 를 남겨두었습니다.
(apache 에 있던 문서가 그대로 남은건지 ibatis 에서 대응한건지는 -ㅁ-;)
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
지금 당장 ibatis 2.3.x 이하 버젼에서 코드어시스트 기능이 안된다면,
xml DOCTYPE 선언에서 http://www.ibatis.com/dtd/sql-map-2.dtd 을 사용했다면,

xml DOCTYPE 을
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
이렇게 수정해주시면 코드어시스트 기능이 제대로 작동합니다.

별도로 알게된 놀라운 사실은,
이클립스도 캐쉬를 사용한다는 점!!!
window - Preferences - General - Network Connections - Cache

메뉴를 보시면 각 프로젝트에 xml DOCTYPE 으로 추정되는 URL 들이 나열되어있습니다.

이는 이클립스에서 validation 체크를 위해 dtd 를 캐쉬해서 가지고 있다가
추후에 별도 접속없이 캐쉬에 있는 내용으로 validation 및 어시스트 하는 기능으로 추정됩니다.
비록 추정이긴 하지만, 이클립스에서 캐쉬를 사용한다는 상당히 놀라운 사실을 알게되었습니다.

감사합니다 ㅋㅋㅋ



크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro

position 속성

HTML/CSS 2010/06/14 13:25
원문 : http://shony.tistory.com/76

position property (http://www.w3.org/TR/CSS21/visuren.html#positioning-scheme)

  • static

  • relative

    • static일때의 위치를 기준으로 top, left, bottom, right 속성이 적용된다.
    • relative인 box B가 있고, 그 다음에 나오는 sibling은 B의 static 영역을 기준으로 자리를 잡는다.
    • relative가 적용되지 않는 block elements : table-row-group, table-header-group, table-footer-group, table-row, table-column-group, table-column, table-cell, table-caption
  • absolute

    • top, left, bottom, right 속성이 자신을 포함하는 box의 위치를 기준으로 적용된다.
    • 다른 sibling과의 위치에 영향을 주지 않는다. 
    • margin 값이 있어도 다른 box의 margin과 합쳐지지 않는다. (Box model : Collapse margins)
  • fixed

    • absolute와 비슷하지만, 자신을 포함하는 box가 아닌 viewport의 맨위좌측을 기준으로 적용된다.
    • 스크롤되지 않고, 항상 같은 위치에 보이게 된다.
    • print media type에 적용되는 경우, 모든 페이지에 나타난다.
    • 따라서 화면에는 항상 나타나지만, 프린트할때는 한번만 보이게 할경우... screen의 경우 fixed, print의 경우 static으로 다르게 설정해 주어야 한다.

      @media screen { 
        h1#first { position: fixed } 
      }
      @media print { 
        h1#first { position: static }
      }
      


** position 속성 예제 포스트 참고하기! - http://mkyoon.com/56>

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by piyoro