자바 및 톰켓 경로 export 하기

 

export JAVA_HOME=/usr/local/jdk1.7.0_07
export CATALINA_HOME=/was/tomcat/tomcat7
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/bin/lib/ext:$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/lib/jsp-api.jar:$CATALINA_HOME/lib/servlet-api.jar

'프로그래밍 > 리눅스' 카테고리의 다른 글

리눅스 링크 거는 법  (0) 2015.04.27
linux address already in use  (0) 2015.04.27
리눅스 심볼릭 링크 걸기  (0) 2013.09.30
톰켓설치  (0) 2013.09.30
Linux java 설치  (0) 2013.09.30

아래와 같이 리눅스에서 링크를 걸어 보세요.
ln -s /aa/bb/cc/dd /ee/ff/gg/dd

-s 옵션은 심볼릭 링크를 건다는 것이구요.. 디렉토리를 링크할 때는 심볼릭 링크만 가능합니다.
상기와 같이 링크가 걸렸다면..
cd /ee/ff/gg/dd 로 했을때 경로가 /aa/bb/cc/dd/ 로 바뀝니다.
링크를 설치할때 구태여 cd /ee/ff/gg 로 가서 링크할 필요는 없어요.
만약, pwd 가 /ee/ff/gg/ 인 상태라면.. 
ln -s /aa/bb/cc/dd dd 라고 하거나
ln -s /aa/bb/cc/dd /ee/ff/gg/dd 모두 동일하게 작동합니다. 

만약 /aa/bb/cc/dd/a1/b1/c1 경로를 2개 서버 이상이 NFS 로 공유하고 있다면,
/aa/bb/cc/dd 까지만 NFS 로 잡아주면 됩니다. 

'프로그래밍 > 리눅스' 카테고리의 다른 글

linux address already in use  (0) 2015.04.27
자바 및 톰켓 경로 export 하기  (0) 2013.09.30
톰켓설치  (0) 2013.09.30
Linux java 설치  (0) 2013.09.30
find와 grep을 활용한 검색  (0) 2012.08.27
JDK부터 설치해야한다. root 권한으로 진행~
http://java.sun.com/javase/downloads/?intcmp=1281

Java SE Development Kit (JDK) 6 Update 10

다운받아서 실행하면 지가 알아서 압축다풀고 설치다됐다고한다. -_-;
실행한 위치에 압축이 풀리므로 옮긴다!
(RPM 버전을 받으면 /usr/java에 jdk가 위치한다.)

mv jdk1.6.0_10 /usr/local/

그리고 나중에 버전업이 되었을때 자바 관련 패스를 전부 바꿔야하는 큰아픔을 막기 위해 심볼릭링크를 해준다.
ln -s /usr/local/jdk1.6.0_10 java
SDK와 같은 Kit은 이렇게 링크를 걸어주는게 좋다.
(RPM 버전을 받으면 /usr/java/default라는 링크가 이미 걸려있다.)

패스를 설정해보자.
vi /etc/profile
export JAVA_HOME=/usr/local/java
(RPM 버전이면 /usr/java/default)
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/bin/lib/ext:$JAVA_HOME/lib/tools.jar
위 3줄을 적당한 위치에 넣고 저장한 후~
수정사항을 바로적용하기 위해
source /etc/profile

패스가 제대로 걸렸는지 테스트 해본다! 아무대서나
java
뭔가 쭉쭉 나온다면 OK! env 같은 명령어로 확인해도 된다.

이제 Tomcat을 설치하자!
http://tomcat.apache.org/download-60.cgi
위 링크는 6.x 버전 링크다. wget으로 해당 링크의 파일을 받는다~

압축 풀고 위치를 옮긴다. 관리 편하려고...
tar -xzvf apache-tomcat-6.0.18.tar.gz
mv apache-tomcat-6.0.18 /usr/local/web/
cd /usr/local/web/
apache와 같은 디렉토리에 놓이게 되었다.
설치된 디렉토리 이름을 그냥 tomcat으로 바꾸자.
mv apache-tomcat-6.0.18/ ./tomcat

마지막으로 패스만 설정해주면 끝난다.
vi /etc/profile
export JAVA_HOME=/usr/local/java
export CATALINA_HOME=/usr/local/web/tomcat
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/bin/lib/ext:$JAVA_HOME/lib/tools.jar:$CATALINA
_HOME/lib/jsp-api.jar:$CATALINA_HOME/lib/servlet-api.jar

위와 마찬가지로 바로적용하기 위해
source /etc/profile

방화벽이 문제가 될테니 다음과 같이~ iptables 파일에 추가한다.
vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

방화벽을 제시작하고 테스트!
/etc/rc.d/init.d/iptables restart
/usr/local/web/tomcat/bin/startup.sh

http://ip:8080/
접속해서 고양이 나오면 성공!
혹시라도
Cannot find /usr/local/server/tomcat/bin/setclasspath.sh
This file is needed to run this program
이런 메세지가 나온다면 CATALINA_HOME Path를 확인해봐야한다.

만약 톰캣도 리부팅후 자동 실행되게 하고 싶다면 다음과 같이 스크립트를 작성한다.
(소스는 인터넷에서 퍼 온것~ 몇몇 경로 부분만 현재 내 서버에 맞게 고쳤다.)
저장은 -> /etc/rc.d/init.d/tomcatd

#!/bin/sh
#chkconfig: 2345 89 89
#description: tomcatd
#processname: /usr/local/tomcat/bin/catalina.sh
#config : /usr/local/tomcat/conf/server.xml
#config : /usr/local/tomcat/conf/web.xml
#pidfile : /var/run/tomcatd.pid
#
# author      : jongho, Ahn(...)
# email       : skylimit@syspam.co.kr, skylimit71@gmail.com
# date        : 2006. 07. 10
#

# Get Config
[ -f /usr/local/tomcat/conf/server.xml ] && [ -f /usr/local/tomcat/conf/web.xml ] || exit 0

source /etc/profile

# Source function library
. /etc/rc.d/init.d/functions

# caution :
#           variable=<value> space between variable and value is not allowed
RETVAL=0
prog=tomcatd

# Start function
start()
{
  echo -n "Starting $prog : "
  daemon $CATALINA_HOME/bin/catalina.sh start
  RETVAL=$?
  echo
  touch /var/lock/subsys/tomcatd
  return $RETVAL
}

# Stop fucntion
stop()
{
  echo -n "Stopping $prog : "
  daemon $CATALINA_HOME/bin/catalina.sh stop
  RETVAL=$?
  echo
  rm -f /var/lock/subsys/tomcatd
  return $RETVAL
}

# Restart function
restart()
{
  stop
  start
}

# See how we were called
case "$1" in
     start)
           start
           ;;
     stop)
           stop
           ;;
     restart)
           restart
           ;;
     *)
           echo $"Usage : $0 {start|stop|restart}"
esac

exit $RETVAL

그리고 나서 chmod 755 tomcatd로 권한주고 /sbin/chkconfig --add tomcatd 해주면 끝~
만약 다른 대몬과의 연동으로 실행 순서를 변경해야 한다면
아래와 같은 부분을 조정하면 된다.

#chkconfig: 2345 89 89

2345는 런레벨이며 첫번째 89는 시작우선권 두번째 89는 종료우선권이다.
끝~

 

'프로그래밍 > 리눅스' 카테고리의 다른 글

자바 및 톰켓 경로 export 하기  (0) 2013.09.30
리눅스 심볼릭 링크 걸기  (0) 2013.09.30
Linux java 설치  (0) 2013.09.30
find와 grep을 활용한 검색  (0) 2012.08.27
vi 명령 정리  (0) 2012.04.18

CentOS에 자바를 설치하기



http://www.oracle.com/technetwork/java/javase/downloads/index.html

여기에서 jdk를 다운받는다.

본인은 jdk6 update21 버전을 다운받았다.



1. 자바 설치

  /home 에 설치한다고 치자.


  별로 할게 없다.

  ./jdk-6u21-linux-i586.bin

  주르륵 알아서 설치된다.

  중간에 엔터 한번 쳐달라고 한다.


  jdk1.6.0_21 폴더가 만들어진다.

  편의상 java폴더로 바꿔보겠다.

  mv jdk1.6.0_21 /home/java



2. 환경파일 설정

  패스를 걸어줘야 한다.

  vi /etc/profile

  맨 밑에 추가

  JAVA_HOME=/home/java

  export JAVA_HOME

  PATH=$JAVA_HOME/bin:$PATH

  CLASSPATH=$CLASSPATH:$JAVA_HOME/lib

 

  source /etc/profile 적용

 

3. 설치 확인

  java -version

  우린 1.6이상을 설치했는데 1.6이 아니면 CentOS 설치시 java가 같이 설치된거다.

  어떻게 걸려있는지 확인해보자

  which java

  /usr/bin/java

  이놈이다.

  가서 확인해볼까

  cd /usr/bin/

  어떻게 되어있길래 이런가 볼까.

  ls -al java

  java -> /etc/alternatives/java

  이런.../etc/alternatives/ 여기있는 자바가 실행되고 있었다.

  변경해야지

  alias java='/home/java/bin/java'


4. 확인

  java -version

  javac -version

 

vi /etc/profile 실행
export JAVA_HOME=/usr/java/j2se1.4.3_08
PATH=$PATH:$JAVA_HOME/bin
export PATH
vi 저장후 종료 :wq
그담에
/etc/profile의 실행권한이 없으면 실행권한을 줍니다.
그리고 실행권한은 root만 주세요..아니어도 실행하는 데는 무관합니다.
-rwxr--r--    1 root     root         1414 11월 20  2003 profile
실행
. /etc/profile
하고 아무데서나 javac, java하면 실행됩니다.

'프로그래밍 > 리눅스' 카테고리의 다른 글

리눅스 심볼릭 링크 걸기  (0) 2013.09.30
톰켓설치  (0) 2013.09.30
find와 grep을 활용한 검색  (0) 2012.08.27
vi 명령 정리  (0) 2012.04.18
linux ftp client 사용법  (0) 2012.04.10

이클립스에서 Export --> java>javadoc 을 함으로써 소스파일을 쉽게 html 형식의 javadoc 파일을 쉽게 만들수 있다.

소스 코드를 UTF-8로 작성을 한 경우 빌드된 javadoc 파일들의 한글은 깨져 보이게 된다.

물론 브라우저 상에서 인코딩타입을 UTF-8로 변경하면 깨지지 않은 한글을 볼수 있지만

매번 다른 화면을 이동할 때마다 인코딩타입을 변경해주거나 자동선택을  선택해지 하고 UTF-8로 고정시켜야만 한다.

javadoc파일을 만들때 당연히 옵션이 있을 거라 생각하고 살펴보니..

역시나 javadoc 생성 마지막 단계에서 VM options을 지정함으로써 javadoc 파일의  Charset을 UTF-8로 설정할 수 있었다.

 

 

 

위의 그림과 같이 VM options 텍스트필드에 다음과 같이 입력한다.

 

-locale ko_KR -encoding UTF-8 -charset UTF-8 -docencoding UTF-8

'프로그래밍 > java' 카테고리의 다른 글

java get 방식 한글 전송 시  (0) 2015.05.26
전자정부(Spring) Framework] iBatis 입력(INSERT) 결과  (1) 2015.05.19
java jdbc db instance 설정  (0) 2015.05.06
오라클 페이징  (0) 2014.07.23
sprint MVC interceptor  (0) 2013.09.12

Spring MVC 를 사용하다가 보면 필연적으로 Interceptor 를 사용하게 됩니다.
Controller 에서 공통적으로 또는 특정 패키지들에 속한 부분에 대해서 선후 처리가 필요하기 때문입니다.
예전에 이러한 부분들을 AOP 로 구현한 것을 보았습니다. 다른 부분들은 AOP 로 구현하는것이 문제가 아니지만
Controller 부분이라면 Interceptor로 구현하시는것을 권장합니다.

Spring MVC 에서 interceptor 에 대해서 알아보겠습니다.

org.springframework.web.servlet.HandlerInterceptor ,
org.springframework.web.servlet.handler.HandlerInterceptorAdapter
를 상속받아 Interceptor를 구현하면 됩니다.

HandlerInterceptor 를 상속할 경우

preHandle , postHandle , afterCompletion 이렇게 3가지로 구분되어져 있습니다.
이름에서 대충 알수 있겠지만
preHandle : Controller 가 수행되기 전에 실행됩니다. 여기서는 이후 Controller를 수행할지 여부를 boolean 으로 return 하게 됩니다.
postHandle : Controller 가 수행된후 View 를 호출하기 전 상태입니다.
afterCompletion : View 작업까지 완료된 후 호출 됩니다. responseBody 를 이용할 경우 UI 에 이미 값을 전달후 해당 부분이 호출됩니다.

 

호출됩니다.

01 package com.softline.study.interceptor;
02  
03 import javax.servlet.http.HttpServletRequest;
04 import javax.servlet.http.HttpServletResponse;
05  
06 import org.springframework.web.servlet.HandlerInterceptor;
07 import org.springframework.web.servlet.ModelAndView;
08  
09  
10 public class ControllerLoggingInterceptor implements HandlerInterceptor {
11  
12     public boolean preHandle(HttpServletRequest request,
13             HttpServletResponse response, Object handler) throws Exception {
14         System.out.println("preHandle");
15         return true;
16     }
17  
18      
19     public void postHandle(HttpServletRequest request,
20             HttpServletResponse response, Object handler,
21             ModelAndView modelAndView) throws Exception {
22         System.out.println("postHandle");
23     }
24  
25     public void afterCompletion(HttpServletRequest request,
26             HttpServletResponse response, Object handler, Exception ex)
27             throws Exception {
28         System.out.println("afterCompletion");
29     }
30  
31 }

CSS3 투명도(opacity) 그림자(shadow) 설정

초창기 부터 주목되었던 투명도와 그림자에 대해 알아본다

투명도(opacity)

투명도를 설정함으로서 뒤의 z-inex설정에서 뒤에 엘리먼트라던가 겹친 엘리먼트를 보이게하는 등의 모습을 구현 할 수 있다.브라우저는 역시 IE가 예외 IE9는 지원한다. 단 IE8이하버전은 필터를 사용해야한다.

<div class="box1">box1 opctical 50%</div>
<div class="box2">box2 opctical 30%</div>

포지션은 겹치게 했다.

div{ width:300px; height:150px; position:relative;}
.box1{ left:100px; top:30px;
       background-color:#F00;
       opacity:.5;
     }
.box2{ left:150px; top:-50px;        
       background-color:#00F;        
       opacity:.3;
     }


투명도 쓸때 생각할것

 

1. 투명도는 누적되어 나타난다. 첫번째 박스는 50% 두번째 박스는 30%이다.
2. 투명도는 자식 엘리먼트에도 역시 적용된다. 자식엘리먼트는 부모것을 그대로 받아들이지 다시 원래대로 돌릴 수 없다.

문제의 IE8이하 버전을 해결할 필터를 이용한 방법은 다음과 같다.

#IE{ background-color:#00F;
     filter: alpha(opacity=75); }

투명도로 0~100%를 나타낸다.

그림자(shadow)

텍스트 그림자 효과와 같다. 좀더 옵션이 있다. IE는 IE9부터 지원한다
값은 색깔 가로 옵셋, 세로 옵셋, 블루어 효과, 그리고 마지막 값은 안쪽으로 그림자 옵션이다(inset)

.box3{ background-color:#090;
       box-shadow:#000 15px 15px 10px;
	 }
.box4{ background-color:#090;
       box-shadow:#C00 15px 15px 30px
	   ,#000 10px 10px 3px;
	 }
.box5{ background-color:#090;
       box-shadow:#000 15px 15px 10px inset;
	 }   

결과는 여기서 확인 http://sianasiatiger.cafe24.com/study/css3-box_03.html
첫번째는 간단한 적용한것. 마지막은 안으로 한 것이다.
두번째와 같이 여러개를 줄수도 있다. 여기서 먼저 설정해준것이 맨위에 보인다.

'프로그래밍 > CSS' 카테고리의 다른 글

CSS 리스트 스타일  (0) 2012.04.13

<?php
echo strtotime("now") . "\n"
;
echo 
strtotime("10 September 2000") . "\n"
;
echo 
strtotime("+1 day") . "\n"
;
echo 
strtotime("+1 week") . "\n"
;
echo 
strtotime("+1 week 2 days 4 hours 2 seconds") . "\n"
;
echo 
strtotime("next Thursday") . "\n"
;
echo 
strtotime("last Monday") . "\n"
;
?>

'프로그래밍 > php' 카테고리의 다른 글

mysql 함수 사용법  (0) 2019.11.26
Hierarchical queries in MySQL  (0) 2019.10.04
PHP $_SERVER 정리  (0) 2013.08.01
Mysql table의 AutoIncrement 값을 가져오기  (0) 2013.07.09
ORACLE, MSSQL, MYSQL 날짜함수 비교  (0) 2012.08.08

+ Recent posts