[PROPAGATION]
REQUIRED : 이미 tx가 존재할 경우, 해당 tx에 참여 / tx가 없을 경우, 신규 tx를 생성하고 실행
SUPPORTS : 이미 tx가 존재할 경우, 해당 tx에 참여 / tx가 없을 경우, 그냥 실행
MANDATORY : 이미 tx가 존재할 경우, 해당 tx에 참여 / tx가 없을 경우, Exception 발생
REQUIRES_NEW : 이미 tx가 존재할 경우, 해당 tx를 suspend 시키고 신규 tx를 생성 / tx가 없을 경우, 신규 tx를 생성
NOT_SUPPORTED : 이미 tx가 존재할 경우, 해당 tx를 suspend 시키고 tx 없이 실행 / tx가 없을 경우, 그냥 실행
NEVER : 이미 tx가 존재할 경우, Exception 발생 / tx가 없을 경우, tx 없이 실행
NESTED : 이미 tx가 존재할 경우, 해당 tx에 참여 / tx가 없을 경우, nested tx 실행

[ISOLATION]
DEFAULT : datastore에 의존
READ_UNCOMMITED : Dirty Reads, Non-Repeatable Reads, Phantom Reads 발생
READ_COMMITED : Dirty Reads 방지, Non-Repeatable Reads, Phantom Reads 발생
REPEATABLE_READ : Non-Repeatable Read 방지, Phantom Reads 발생
SERIALIZABLE : Phantom Read 방지
 


WRITTEN BY
hopangbear

트랙백  0 , 댓글  2개가 달렸습니다.
  1. 태양이 바다에 미광을 비추면,나는 너를 생각한다.
  2. 태양이 바다에 미광을 비추면,나는 너를 생각한다.
secret
참고 URL : http://www.malisphoto.com/tips/tomcatonosx.html

1. mkdir Tomcat6.0
2. chown username Tomcat6.0 (권한이 사용자 권한일 경우, 실행 안해도 됨)

주의 사항 
1. New Server에서 Apache - Tomcat v6.0 Server가 선택이 안될 경우, 다음의 순서로 해당 디렉토리 삭제
(ubuntu에서 설치시 동일한 오류가 발생) 

  • close eclipse
  • go to {workspace-directory}/.metadata/.plugins/org.eclipse.core.runtime/.settings
  • remove the files org.eclipse.wst.server.core.prefs and org.eclipse.jst.server.tomcat.core.prefs

  • 2. catalina.out permission denied가 발생할 경우, Tomcat 설치 폴더의 권한 확인 (root가 아닌 사용자 권한이어야 함)


    WRITTEN BY
    hopangbear

    트랙백  0 , 댓글  0개가 달렸습니다.
    secret

    WRITTEN BY
    hopangbear

    트랙백  1 , 댓글  0개가 달렸습니다.
    secret

    중급 자바 개발자의 난관, 클래스 로딩 문제 분석하기



    필자 | 장동수, 한컴 씽크프리 모바일 오피스 개발팀 dsjang@thinkfree.com

    2007년 12월 11일

    초급을 넘어 중급 단계로 들어서는 자바 개발자에게 몇 가지 난관 중 하나가 클래스 로딩 문제입니다.

    적당한 jar 파일을 찾아 적당한 디렉터리에 넣어주면 해결되는 단순한 문제부터, 커스텀 클래스 로더가 필요한 경우까지 다양한 원인과 해결책이 있겠지만, 원리를 이해하지 않고 검색 엔진의 힘에 의지해 문제를 해결하다 보면 더 큰 문제를 만들게 됩니다.

    이 연재에서는 클래스 로딩의 작동 원리에서 시작해, 개발하는 과정에서 발생할 수 있는 다양한 클래스 로딩 관련 문제에 대한 원인과 해결책을 4회에 걸쳐 설명하고 있습니다.

    또한 직접 확인해 볼 수 있는 풍부한 예제와 실습을 통해, 이 연재에서 설명하지 않은 다른 형태의 클래스 로딩 문제를 만나더라도 신속하게 원인을 규명하고 해결책을 찾을 수 있는 응용 능력을 습득할 수 있을 것입니다.

    • 1회: 클래스 로딩과 디버깅 툴 소개(한글)
      첫 번째 연재에서는 클래스 로더 위임 모델과 각각의 클래스 로더를 제어하기 위한 JVM의 명령어 옵션을 알아봅니다. 그리고 클래스 로딩 과정을 단계별로 설명합니다. 마지막으로 IBM의 JDK에 내장된 도구들을 사용해 이러한 과정들을 직접 확인하는 방법을 설명합니다.

    • 2회: 기본적인 클래스 로딩 예외(Exception)(한글)
      흔히 볼 수 있는 ClassNotFoundException, NoClassDefFoundError 같은 예외부터 ClassCircularityError, ExceptionInInitializerError 같은 평생 한 번 보기도 힘든 예외까지 클래스 로딩과 관련된 거의 모든 예외와 에러(error) 들에 대해 자세히 알아봅니다.

    • 3회: 특이한 클래스 로딩 문제 해결(한글)
      클래스패스 끝에 붙은 '/' 문자 때문에 발생하는 사소한 문제부터, 클래스 로더 위임 모델과 클래스 가시성 때문에 발생하는 문제, 커스텀 클래스 로더를 만들 때 부주의로 발생하는 문제, 그리고 클래스로 로더가 가비지 컬렉션되면서 발생하는 문제까지, 클래스 로딩시 일어날 수 있는 더 복잡한 문제들에 대해 자세히 설명합니다.

    • 4회: 교착 상태와 제약 조건(한글)
      마지막으로 클래스 로더 교착 상태, 클래스 로더 제약 조건 위반 같은 쉽게 발생하지 않지만 일단 발생하면 해결하기 어려운 문제들에 대해 자세히 설명합니다.

    - 출처 : http://www.ibm.com/developerworks/kr/series/j-dclp.html?ca=drs-kr -


    WRITTEN BY
    hopangbear

    트랙백  0 , 댓글  0개가 달렸습니다.
    secret
    그림. WTP(이클립스 웹 툴즈)의 아키텍처

    웹 툴즈(webtools)
    라고도 부르는 WTP 는 크게 J2EE Standard Tools (JST)Web Standard Tools (WST)로 나뉜다.

    JST의 구성은 아래와 같다. JSP/Servlet 개발을 지원하고, Server Runtime을 통해서 특정 제품에만 배포되는 코드를 줄일 수 있도록 도와준다. 그리고 부가 기능으로 EJB와 Annotation 지원 등이 있다.

    JST의 구성


    WST 의 구성은 아래와 같다.

    WST 의 구성


    W3C 등이 주도하는 XML, HTML, CSS 와 함께 자바 스크립트 구현을 돕는 툴과 함께 웹 서비스 구현을 지원한다. 더불어 Data Tools를 제공하지만 기능은 다소 미약한 것 같다. 이부분은 DTP에서 주도하기 때문에 향후 별도 개발보다는 DTP와의 연동으로 발전할 것으로 짐작된다.
    원문 작성 일시: 2005/11/25 (금) 11:35


    원문 http://ahnyounghoe.tistory.com/283

    WRITTEN BY
    hopangbear

    트랙백  1 , 댓글  2개가 달렸습니다.
    1. 차가운 나를 움직이는 너의 미소, http://ypc.pedidri.com/ christian louboutin discount
    2. 하지만 알면서도 너의 모든 것이 욕심이나, http://ypc.mysonfactoryoutlet.com/ toms outlet
    secret
    http://raibledesigns.com/rd/entry/re_what_web_application_framework

    WRITTEN BY
    hopangbear

    트랙백  0 , 댓글  0개가 달렸습니다.
    secret
    http://jspgeek.com/tt/entry/Choosing-a-Java-Web-Framework

    WRITTEN BY
    hopangbear

    트랙백  0 , 댓글  0개가 달렸습니다.
    secret
    Top 5 Must-Read Software Development Books
    http://java.about.com/od/advancedjava/tp/mustreadsoftdev.htm

    WRITTEN BY
    hopangbear

    트랙백  0 , 댓글  0개가 달렸습니다.
    secret
    AWAF_전자신문
    http://www.etnews.co.kr/news/detail.html?id=200603210170

    S/W개발병으로 복무하면서 근 2년 동안 이 개발에 매달렸다...

    설계도 참여하고.. 개발도 직접 참여하고... 성과가 무척 좋았었다...

    개발 표준으로 채택되고... 해군과 공군에서도 관심을 가져주고...

    거기에 TTA 인증 테스트도 통과하고...

    전역하고서 이런 분야에서 일하고 싶었는데... 뜻대로 안되네...


    WRITTEN BY
    hopangbear

    트랙백  0 , 댓글  0개가 달렸습니다.
    secret
    Tomcat Connection Pool 관리

    [Tomcat - Pool 관리기법] 데이타베이스 커넥션 풀이 새는 것을 막는 방법

    데이타베이스 커넥션 풀은 데이타베스의 커넥션들의 풀을 만들고 관리합니다. 이미 있는 커넥션을 재생하여 재사용하는 것은 새 커넥션을 가져오는 것보다 효율적입니다.

    커넥션 풀링에는 한가지 문제가 있습니다. 웹 애플리케이션은 명시적으로 ResultSet, Statement, Connection을 닫아야 합니다. 웹 애플리케이션에서 이들 자원들을 닫지 못하게 되면 다시 재사용할 수가 없으며 데이타베이스 커넥션 풀 "구멍"이 생깁니다. 이것은 결국 웹 애플리케이션에서 더 이상 쓸 수 있는 데이타베이스 커넥션이 없을 때 커넥션 에러를 내게 될 것입니다.

    이에 대한 해결책이 있습니다. Jakarta-Commons DBCP는 이렇게 버려진 커넥션을 추척하고 복구하도록 설정할 수 있습니다. 복구할 뿐만 아니라 이들 자원들을 열고서는 닫지 않았던 코드를 찾아 추적 결과를 만들어내기도 합니다.

    버려진 커넥션이 제거되고 재생되도록 DBCP DataSource를 설정하기 위해 DBCP DataSource Resource의 ResourceParams에 아래 매개변수를 추가하면 됩니다. :
       
                  <parameter>
                  <name>removeAbandoned</name>
                  <value>true</value>
                </parameter>

       
    사용할 수 있는 커넥션이 부족해진다면 DBCP는 버려진 커넥션을 찾아 복구하고 재생합니다. 디폴트는 false로 되어 있습니다.


    커넥션이 버려졌다고 간주되기 전에 사용되지 않은 시간(초)를 설정하기 위해 removeAbandonedTimeout를 설정하십시오.
       
                  <parameter>
                  <name>removeAbandonedTimeout</name>
                  <value>60</value>
                </parameter>

       
    버려진 커넥션을 제거하는데 기본적으로 정해진 타임아웃 시간은 300초입니다.


    만일 커넥션 자원을 낭비한 코드 위치의 로그를 남기려고 한다면 logAbandoned 패러미터를 true로 할 수 있습니다.
       
                  <parameter>
                  <name>logAbandoned</name>
                  <value>true</value>
                </parameter>

       
    기본은 false로 되어 있습니다.


    WRITTEN BY
    hopangbear

    트랙백  1 , 댓글  0개가 달렸습니다.
    secret