2012-08-22

centos]CentOS 4.4에서 Java설치하기





CentOS 4.4에서 Java설치하기

1. Sun의 Downloads페이지에서 플랫폼에 맞는 파일(self-extracting file)을 다운로드받는다.
2. jpackage-utils과 rpm-build패키지를 설치한다.
3. jpackage-nonfree repository에서 java-1.5.0-sun패키지를 다운로드받는다.(yumdownloader 이용)
4. 다운받은 파일들을 /usr/src/redhat/SOURCES/ 로 옮기고, 패키지를 빌드한다.
   setarch i586 rpmbuild –rebuild java-1.5.0-sun*
   (플랫폼은 알아서 변경해주는 센스)
5. 설치한다.
   만약 libXp 라이브러리가 없다는 에러가 발생하면 xorg-x11-deprecated-libs 패키지를 설치해준다.
   ODBC관련 에러가 뜨면 unixODBC-devel 패키지를 설치해준다.

끝.

SUN에서 제공하는 RPM을 이용해도 되지만, 그 경우 패키지 업그레이드시 사라질 수도 있다고 한다.
믿거나 말거나. 속는셈치고 믿어보고 이렇게 설치했다. java-1.5.0-sun-compat 라는 패키지도
있던데 JPackage Java compatibility package for Sun’s JDK 라고 주석이 붙어있는걸 보니
SUN의 패키지를 설치하고 이걸 설치해도 될 것 같기는 함.

출처:
http://fedoranews.org/mediawiki/index.php/JPackage_Java_for_FC4
http://www.fedorafaq.org/#java

centos] centos 5.0 설치하기

 출처 : http://www.howtoforge.com/perfect_setup_centos5.0

CentOS]centos45_oracle10gr2설치하기


이 문서는 http://supike.spaces.live.com/blog/cns!502FB505094D1443!377.entry 와 http://tykim.wordpress.com/2007/04/11/red-hat-rhel4에-oralcle-10g-r2-설치-intsall-howto 사이트를 참조하여 재구성 하였으며, 전체적으로는 http://tykim.wordpress.com/2007/04/11/red-hat-rhel4에-oralcle-10g-r2-설치-intsall-howto를 기반으로 하였 고, 단지 1가지 측면의 설치 방법을 다루고 있다. 
=============================================================================================
CentOS 4.5 에 Oralcle 10g R2 설치, Intsall HOWTO
Filed under: Syste m Guru — Peter Kim @ 수정 : journae
CentOS4.5(RedHat REHL4 clone) 에서 10g를 설치 가이드 자료가 많지 않아 기록차원으로 남긴다. 
0.개요   
1) 시스템 요구 사항 검증   
2) 디렉토리 생성   
3) 오라클 그룹 및 사용자 계정 생성   
4) Linux 커널 매개변수 설정   
5) Oracle계정 Shell Limit 설정   
6) Oracle 계정 환경 변수   
7) Oracle 설치   
Oracle 사용 
0. 전제 조건 OS 는 쉽게 구할 수 있는 Centos 4.5 를 사용했다. 처음에 Centos 5.0 으로 설치를 시도 했으나 gcc, glibc 등의 버전이 맞지 않아 4.5로 downgrade 한 후 다시 설치를 진행했다.
참고로, centos 설치도 GUI를 지원하는 관계로 설치가 예전보다 훨씬 편하다. 아직 윈도우 보다는 불편(?)하지만^^ 
1. 시스템 요구사항 검증
1) Kernel 버전 확인 하여 Kernel버전 및 Architecture(i386, x86_64등)을 확인    # uname -a
2) 설치 필요 패키지를 확인    
* gcc-3.4.3-9.EL4    
* make-3.80-5    
* binutils- 2.15.92.0.2-10.EL4     
* openmotif-2.1.30-11    
* setarch-1.6-1    
* compat-db-4.1.25-9
    - # rpm -q <패키지명> (ex:rpm -q binutils)으로 설치 여부 및 버전확인하여 최근 상위 본으로 설치한다.       특히 binutils는 최신본으로 설치할 것 (binutils를 상기 버전으로하면 중간에 skip가능한 오류가 하나 나옴)    
- 패키지의 설치는 RHN의 up2date 혹은 CentOS의 yum을 통해서 update하거나,      RPM repository 서비스 site를 이용하여 해당 RPM을 받아 직접 설치한다.    
- ex) yum install gcc … (package name)
- 참고로 yum을 사용해 본 결과 상당히 편함을 느꼈다. 
2. 오라클 그룹 및 사용자 계정 생성Oralce의 운영을 위해 필요한 계정/그룹을 설치한다. —————————————————————————————-
# /usr/sbi n/groupadd oracle
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -m -g oracle -G dba oracle
# passwd oracle
—————————————————————————————-
3. 디렉토리 생성Oracle 10g (10.2.0.1.0) 설치에 필요한 디렉토리 및 권한을 설정한다. ————————————————————————————— -
# mkdir -p /u 01/app/oracle         (Oralce 프로그램 설치 폴더)
# mkdir -p /u02/ oradata      (Oracle 데이터 설치 폴더)
# chown -R oracle:oracle / u01/app/oracle / u02 / oradata
# chmod -R 775 / u01/app/oracle / u02 /oradata
—————————————————————————————-
4. Linux 커널 매개변수 설정Oracle 운영에 필요한 커널 매개변수를 아래와 같이 설정한다.—————————————————————————————-
# cat >> /etc/sysctl.conf <  > kernel.shmall = 2097152  > kernel.shmmax = 2147483648  > kernel.shmmni = 4096  > kernel.sem = 250 32000 100 128  > fs.file-max = 65536  > net.ipv4.ip_local_port_range = 1024 65000  > EOF# /sbin/sysctl -p—————————————————————————————-
아래와 같이 상기 커널 파라메터가 적용되었는지 확인 한다. 
—————————————————————————————-
# /sbin/sysctl -a | grep shmkernel.shmmni = 4096kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shm-use-bigpages = 0
# /sbi n/sysctl -a | grep semkernel.sem = 250        32000   100     128
# /sbin/sysctl -a | grep file-maxfs.file-max = 65536
# /sbin/sysctl -a | grep ip_local_port_rangenet.ipv4.ip_local_port_range = 1024     65000—————————————————————————————-
5. Oracle계정 Shell Limit 설정Oracle 계정의 shell limit을 아래와 같이 설정한다.
—————————————————————————————-
cat >> /etc/security/limits.conf
cat >> /etc/pam.d/login
6. Oracle 계정 환경 변수Bourn/Korn 쉘의 경우 ~oracle/.bash_profile 파일에 대해서 아래 내용을 추가 하도록 한다.
—————————————————————————————-
export ORACLE_BASE=/disk01/app/oracle                              
export ORACLE_SID=                     
* Note : SID를 orcl로 미리 설정하였음.
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0.1.0/db_1   
* Note : 설치 폴더를 미리 설정하였음.
export PATH=$PATH:$ORACLE_HOME/binexport LD_LIBRARY_PATH=$ORACLE_HOME/lib—————————————————————————————-
7. 시스템 Rebooting & Check Version 시스템을 Reboot 한다.
# vi etc/redhat-release (파일의 내용을 redhat-4 확인 / CentOS일 경우 인식못함으로 변경) 
위의 파일의 내용을 아래와 같이 변경하여 사용한다.
Red Hat Enterprise Linux As release 3 (Taroon) ”
8. Oracle 설치1) Oracle 해당 버전 download     
a. “http://otn.oracle.com/software/products/database/oracle10g/index.html” 에서         RHEL 4AS 64bit를 위해 x86-64bit인 “Oracle Database 10g Release 2 (10.2.0.1.0) for Linux x86-64″를 다운로드 받는다.        (받는 위치는 / u01/app/oracle 에 저장한다.)     
b. “unzip -d 10201_database_linux_x86_64.cpio.gz”하여 unzip을 해주고     
c. “cpio -idmv < 10201_database_linux_x86_64.cpio”를 통해서 묶음을 풀어준다.       (이러면 압축은 /u 01/app/oracle/database 에 풀린다)
** 실제 파일은 10201_database_linux32.zip 파일이 다운된다. 이 파일을 푸는 방법은 unzip 10201_database_linux32.zip 하면 현재 폴더에 database 밑에 쭈~욱 풀리게 된다.
2) oracle 계정으로 login 및 설치 명령
————————————————————————————— 
-$ cd /u 01/app/oracle/database$ ./runInstaller이때부터는 GUI 형태이므로 설명 생략 설치폴더는 / u01/app/oracle/product/10.2.0.1.0/db_1 으로 기재 
—————————————————————————————-
(RHEL4 운영체제에서 binutils, gcc, openmotif에대한 점검작업이 실패한 경우에는 경고 메시지를 무시하고 다음 단계로 진행할 것. )
9. Oracle 사용 확인 
1) Oracle Enterprise Manager 10g Database Control    
설치 후 안내화면에 데이터베이스 컨트롤 URL이 나오면 기록해 놓았다가 접속    
- http://ipaddress:port/em     
- User Name: SYS    
- Password: <설치과정에서 입력한 패스워드>    
- Connect As: SYSDBA
2) 데이터베이스 시작 및 중단
—————————————————————————————-
$ sqlplusSQL> shutdown immediate * Oracle instance 종료 
SQL> startup                           
* Oracle instance 시작 
—————————————————————————————-

CentOS]CentOS 일반 사용자 추가 방법



사용자 추가 작업
# useradd 추가할 사용자 id

# passwd 추가할 사용자 id
  비밀번호 입력

CentOS] CentOS 에서 한글 깨지는 문제 해결 방법

CentOS 4.2에서 한글 깨지는 문제 해결방법 입니다.
# /etc/sysconfig/i18n 파일에서
LANG="ko_KR.UTF-8"  =====> LANG="ko_KR.eucKR" 로 바꾸시면 됩니다.(없으면 추가)

Java]스프링프레임워크 링크 모음



ibatis 에서 log4j 사용하기 :  http://v.daum.net/link/1728439

스케줄러를 이용한 메일 발송 : http://v.daum.net/link/2980934



SpringFramework + iBatis 연동시 주의점 및 참조 예제 :  http://lvsin.tistory.com/89

iBATIS에 있는 startBatch(), executeBatch() 메소드로 삽질후기 : http://mudchobo.tomeii.com/tt/category/아이바티스(iBATIS)



 
Spring+ibatis 를 이용한 미니 방명록 작성하기 : http://blog.daum.net/oraclejava/15192535

JAVA] 스프링에서 ajax 사용하기




스프링에서 Ajax 사용 하기 (Use JsonLib) by ultteky

출처 : http://beyondj2ee.blogspot.com/2009/08/ajax-use-jsonlib.html

몇년전만 해도 Ajax 사용은 몇몇 프로젝트에서만 사용했지만
최근에는 Ajax가 점점 필수 사항인 듯 합니다.
하지만 스프링에서 Ajax 지원에 대해서는 다소 미미한 편입니다.
제가 SimpleFormController에서 ajax를 적용한적이 있는데
좀 고생을 한기억이 있었습니다.그때 springsource에서
본 내용을 보면 아무리 스프링이 자유롭다지만 어느정도 J2EE에
대한 스펙을 생각하고 있고 그런 의미에서 Ajax는 아직 스펙이라
말하기가 어렵다고 합니다.
물론 그렇다고 스프링에서 Ajax를 전혀 지원하지 않는냐
그렇지는 않습니다. 서브 프로젝트 중애서 Spring WebFlow 2.0에서
"Spring JavaScript"를 번들을 제공 합니다.
개인적으로 스프링을 좋아하는 저로써는 "Spring Javascript"는
권하고 싶지 않습니다.
이유인즉 첫째 내부적으로 특정 라이브러리 (Dojo)를 사용합니다.
Dojo의 무거움은 경험하신분들은 아실겁니다.
(차라리 jQuery로 했으면..)
둘째로 DWR처럼 강한 결한 형태는 유지보수와 UI 변경을
복잡하게 합니다.
여러 이유가 있겠지만 크게 두가지네요
제 개인적인 Ajax 모델은 일단 클라이언트(Html)와
서버(Spring)가 느슨 결합이 되어야 하고 UI변경시
수정이 최소화 해야 한다고 생각합니다.
UI라이브러리는 기존에 훌륭한 (Extjs,jQuery,YahooUI..)중
플젝에 적합한 라이브러리를 사용하고 서버단은
AbstractView를 상속 받아서 Ajax 전용 뷰를 만들어서
서로간의 간섭이 없도록 구성해야 한다고
생각합니다.

여기서는 스프링에서 ajax를 처리 하기 위한 서버 설정을
설명 드리며 클라이언트 코드는 Json 패킷으로 대체
하는걸로 하겠습니다.
  • JsonLib 다운 받기
서버에서 클라이언트로 리턴할 오브젝트를 Json형태로 변환 하거나 또는 그반대로
Json 데이터를 해당 오브젝트로 변환하는 라이브러리가 필요 합니다. 그중에서
Json-lib를 사용 합니다 .
(해당 사이트에 접속하면 다양한 json 라이브러리를 다운 받을 수 있습니다. ).
여기서 최신 버전으로 다운로드를 받습니다.
다운로드 후 이클립스 프로젝트에
라이브러리를 추가 합니다.
웹 사이트 : http://json-lib.sourceforge.net/
다운로드 : http://sourceforge.net/projects/json-lib/files/
사용법은 해당 사이트를 참고 하시면 됩니다.
  • 스프링 전용 JsonView 다운 받기
아래의 사이트로 접속 후 화면 맨 하단을 보면 "json-lib-ext-spring" 가 있습니다.
거기서 최신 버전의 라이브러리를 다운로드 후 이클립스 프로젝트에
추가 합니다.
다운로드 : http://sourceforge.net/projects/json-lib/files/
  • JsonView 스프링 빈 설정
아래와 같이 JsonView를 빈으로 설정 합니다.
           <bean id="jsonView" class="net.sf.json.spring.web.servlet.view.JsonView"/>
          
ViewResolver 설정

JsonView를 인식 하기 위해서 "BeanNameViewResolver"를 설정 합니다.
WebApplication에서는 여러 Resolver가 존재 할수 있기 때문에
우선 순위를 "0"으로 설정해서 최우선으로 설정 합니다.
            <bean id="beanNameResolver"

           class="org.springframework.web.servlet.view.BeanNameViewResolver"

           p:order="0" />
          

  • Controller Code
아래의 코드를 보면 매우 평범합니다. 어떤한 라이브러리 참조도
없이 평소처럼 코딩 하면 됩니다. 모든 ajax 처리는 JsonView가
처리 함으로써 단지 JsonView가 선언된 스프링 빈 id를
ModelAndView의 "setViewName" 메서드에 선언만
하면 됩니다.
           

           public final ModelAndView handlerRequest(final HttpServletRequest request,

           final HttpServletResponse response) throws Exception {

           ModelAndView modelAndView = new ModelAndView();

           

           DummyMember dummyMember1 = new DummyMember();

           dummyMember1.setId("xxxxxxx");

           

           DummyMember dummyMember2 = new DummyMember();

           dummyMember2.setId("yyyyyy");

           

           List list = new ArrayList();

           list.add(dummyMember1);

           list.add(dummyMember2);

           

           Map resultMap = new HashMap();

           resultMap.put("result1", list);

           resultMap.put("result2", dummyMember1);

           

           modelAndView.addAllObjects(resultMap);

           modelAndView.setViewName("jsonView");

           return modelAndView;

           }
          

※ 샘플 도메인
           public class DummyMember {

           private String id;

           

           public String getId() {

           return id;

           }

           

           public void setId(String id) {

           this.id = id;

           }

           }
          
  • 결과 JSON 패킷
           {"result2":{"id":"xxxxxxx"},"result1":[{"id":"xxxxxxx"},{"id":"yyyyyy"}]}
          

customizing이 필요하면 JsonView 클래스를 상속 받은 후에 "renderMergedOutputModel"
메서드를 override 하시거 아니면 직접 다운로드 사이트에서
소스를 받은 후에 수정 후 적용 하시면 됩니다.