ERD (entity-relationship diagram) 링크.

Posted by sabper 프로그램/DB : 2012. 2. 21. 16:40

ERD[이 알 디]는 전략적 계획이나 또는 하향식 계획에서 자주 사용되며, 개략적인 상부계층의 데이터 다이어그램이다.





출처 : [텀즈] http://www.terms.co.kr/ERD.htm


위키 링크

'프로그램 > DB' 카테고리의 다른 글

sql 정리  (0) 2012.02.21
  

1. JDBC드라이버 다운
    - 다운 : 오라클 홈페이지
http://www.oracle.com 에서 다운로드 메뉴 JDBC Drivers
    - 버젼 : 오라클 버젼에 따라 다른 버젼을 다운 받아야 함. 
    - ojdbc5.jar(jdk 1.5 이상), ojdbc6.jar(jdk 1.6 이상) 이지만 크게 상관은 없음.
※ 반드시 오라클 버전과 맞는 ojdbc를 받아야 한다. 맞지 않을 경우 요상한 에러들로 곤욕을 치루게 될것이다.
※ 오라클을 로컬에 깔은 경우 - 오라클설치폴더\product\11.2.0\dbhome_1\jdbc\lib\에 모여있음

2. 이클립스 JDBC 설정
    - 이클립스 자바프로젝트일 경우
       프로젝트 우측 클릭 - properties - Java Build Path - Libraries - Add External JARs.. 클릭
       오라클 버전에 맞는 ojdbc 파일을 찾아서 로드 시켜준다.
    
    - 이클립스 웹프로젝트일 경우
       프로젝트 폴더 중 WebContent -> WEB-INF -> lib 밑에 ojdbc 파일을 붙여넣기만 해주면 된다.

3. jdbc 연결 체크 포인트
    - 네트워크 확인. ip/port가 맞는지 확인해본다. (ping, telnet, tnsping 이용)
    - 오라클 DB가 정상 작동하고 있는지 확인.
         제어판 - 서비스 항목 중 OracleServiceORCL, OracleOraDb11g_home1TNSListener 가 정상적으로 시작 되어 있는지 확인.
         (리스너 설정을 바꿀경우 리스너 서비스를 정지시킨 상태에서 하는 것이 좋다.)
         콘솔창에서 sqlplus로 접속하여 정상적으로 로그인되는지 확인.
    - 리스너파일이 정삭적으로 세팅되어 있는지 확인 (이전 포스트 참고)
    - 서버,클라이언트 양쪽 다 방화벽 설정을 살펴본다.
    - sqlGate등의 프로그램으로 db 연결테스트를 해본다.

※ jsp 페이지로  jdbc연결 확인해보기
    - 웹프로젝트에서 jsp페이지를 만든다.
    - java.sql.*,java.sql.DriverManager.* 를 import
    - jdbc 드라이버를 로딩.
      Class.forName("oracle.jdbc.driver.OracleDriver");
    - 소켓연결을 맺어준다.
       Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@www.sab.co.kr:1521:ORCL","user00","user00");
       변경될수도 있는 값 - 1521(포트) / ORCL(DB이름) / www.sab.co.kr (DB가 깔리 pc ip, 접속하는 pc에 깔려있으면 localhost) /
                                       user00(id) / user00(pw)
    - <body> 에서 conn변수를 out.print 로 찍어본다.
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ page language ="java" import="java.sql.*,java.sql.DriverManager.*" %>
<%
 
 Class.forName("oracle.jdbc.driver.OracleDriver");
 Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@www.sab.co.kr:1521:ORCL","user00","user00");
 
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
 
<%
 out.print(conn);
%>
</body>
</html>

  

1. 오라클 다운 / 설치
   
http://www.oracle.com/ 에서 다운로드 메뉴
   
    버젼 :
Database 11g Enterprise/Standard Editions
             운영체제에 알맞은 것을 골라 다운로드

    file1과 file2를 다운 받고 같은 폴더에 압축을 풀어준다.
    압축을 푼 폴더에서 setup 클릭하여 설치 진행.
    설치진행중 나오는 패스워드 입력란은 반드시 입력하고 잊어먹지 않도록 한다.
    긍정적인 대답...대답.....  설치완료!
     
 설치확인법.
  
cmd창에서 sqlplus 명령어로 접속되는지 확인.
   사용자 : system
   비밀번호 : 설치시 입력 했던거
   
   관리도구-서비스 실행
   OracleService(ORCL) [괄호친부분은 db이름이다. 설치시 입력했던 값으로 나오게된다. 기본값은 ORCL]
   OracleOraDb11g_home1TNSListener [소켓통신]
   위 2개외에 몇개 더 있지만 위의 2개가 보이면 설치에 성공한것으로 봐도 무방할듯 싶다.
 ※ 위의 서비스는 메모리를 많이 잡아먹으므로 테스트용으로 로컬에 설치했을 경우 서비스를 수동으로 해놓고 필요할때만 써먹으면 컴퓨터 버벅거리거나 윈도부팅후 딜레이 되는 현상등이 없어진다.

2. 연결확인

    2-1. 네트워크 연결 확인 (소켓연결확인)

     xp일경우는 cmd창에서 telnet localhost 1521 실행

     windows7은 telnet명령어가 없으므로..
     자바코드 작성 후 실행해본다.

import java.net.Socket;

public class Test {
    public static void main(String[] args) throws Exception{
        String url = "localhost";
        int port = 1521;
        Socket socket = new Socket(url, port);
        System.out.println(socket);
    }
}

결과값

Socket[addr=localhost/127.0.0.1,port=1521,localport=52919]

위와같이 잘나오면 url,포트연결은 일단 문제가 없는것이다.



    가상호스트
  주소값 localhost 는 windows\system32\drivers\etc\hosts 파일 수정하여 바꿀수 있다.
  파일을 열어보면

  # localhost name resolution is handled within DNS itself.
  # 127.0.0.1 localhost
  # ::1 localhost
  # 192.168.123.158
www.sab.co.kr 임으로 추가한 내용

  임의로 추가한 도멘인으로도 접속이 가능해진다.

   2-2. 리스너세팅
    ※ 작업전 리스너 서비스 정지 권장.

    C:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN
    오라클 설치폴더\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora 파일 수정.

SID_LIST_LISTENER =
   (SID_LIST =

      (SID_DESC =
         (SID_NAME = CLRExtProc)
         (ORACLE_HOME = C:\oracle\product\11.2.0\dbhome_1)
         (PROGRAM = extproc)
         (ENVS = "EXTPROC_DLLS=ONLY:C:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
      )

      (SID_DESC =
         (SID_NAME = ORCL)
         (ORACLE_HOME = C:\oracle\product\11.2.0\dbhome_1)
         (PROGRAM = extproc)
         (ENVS = "EXTPROC_DLLS=ONLY:C:\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
      )

   )

LISTENER =
   (DESCRIPTION_LIST =
      (DESCRIPTION =
         (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
         (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
         (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.123.161)(PORT = 1521))
//추가
      )
   )





     2-3. 방화벽 해제
       
 
  

※ 자바 jdk설치, 환경변수 설정 등은 이미 진행된 상태.

1. 이클립스 다운로드 및 설치
    http://www.eclipse.org/ 사이트 다운로드 메뉴에서 이클립스 다운로드
    버젼 : Eclipse IDE for Java EE Developers

    다운로드 후 c:\webex\ 에 압축 풀어주기 (폴더는 자동으로 생기므로 webex에 걍 풀어준다.)
    workspace는 c:\webex\workspace 로 잡아준다.

2. 톰켓 다운로드
    http://tomcat.apache.org/ 사이트 다운로드 메뉴에서 톰캣 다운로드
    버젼 : tomcat 7.0
    Core: 에 zip파일로 받는다.    

    다운로드 후 c:\webex\ 에 압축 풀어주기 (폴더 걍 생기므로 webex에 걍 풀어준다.)
   
3. 이클립스 톰켓 세팅
    이클립스 실행.
    상단 windows - preference - Server - Rutime Enviroment - Add - Apache Tmocat v7.0을 골라준다.
    Next 버튼 클릭 - Tomcat installation directory 에서 C:\webex\apache-tomcat-7.0.25 로 설정
    Finish 버튼 클릭

4. 프로젝트 생성
    이클립스 우측 클릭 - new - Dynamic Web Project 를 클릭.
    Project name : day01
    Target Runtime : Apache Tomcat v7.0
    Dynamic web module version : 2.5
    next - next - Finish

5. Servlet 파일 생성
    우측 클릭 - new - Servlet 클릭
    Java package : org.thinker (?)
    Class name : HelloServlet
    Next 클릭
    URL mapping : /HelloServlet 를 -> /hello 로 바꿔준다. 실제 url주소부분이 되므로...
    Next - Finish
    
6. 구현

package org.thinker;

import java.io.IOException; 
import java.io.OutputStream;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class HelloServlet
 */
public class HelloServlet extends HttpServlet {
 private static final long serialVersionUID = 1L;
      
    /**
     * @see HttpServlet#HttpServlet()
     */
    public HelloServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

 /**
  * @see HttpServlet#service(HttpServletRequest request, HttpServletResponse response)
  */
 protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  
  OutputStream out = response.getOutputStream(); //서버에서 브라우저로 내보내기 위한 선언문
  
  String str = "<h1>Hello Servlet</h1>"; //내보낼 데이터를 스트링으로 저장.
  out.write(str.getBytes()); //스트링에 저장된 값을 바이트로 바꿔서 내보낸다. 소켓은 바이트로 전송
   
 }

}

녹색 글자외에는 Servlet 을 생성하면 자동으로 코딩된다.

7. 결과값 확인
    project 에서 우측클릭 후 Run As - Run On Server 를 클릭한다.
    Next - Finish
    404 에러.
    주소를 http://localhost:8081/day01/ 에서 http://localhost:8081/day01/hello 로 바꾸어 준다.
    hello는 서블릿 생성할때 url mapping 값에서 설정된 값.
    이후 정상적으로
    Hello Servlet가 출력된다.


   

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

query maker  (0) 2012.02.23
JDBC드라이버 이클립스 세팅 / 연결 체크 포인트  (0) 2012.02.10
오라클 설치 및 기본세팅  (0) 2012.02.10
Java - JDK다운/설치 및 환경변수 설정  (0) 2012.01.18
hashmap  (0) 2011.12.29
  

1.JDK 다운

다운로드 사이트 : http://www.oracle.com/technetwork/java/index.html

Top Downloads 중 Java SE 클릭

Java SE 7u2 또는 Java Se 6 Update 30 다운로드

다운로드 후 설치...ㄱㄱ

jdk설치 위치 필히 기억. 추후 환경변수 설정할때 필요함.

jdk가 설치되면서 jre도 같이 설치되므로 끝까지 next~~

jre설치 부분에서 경로 설정으로 jdk설치 폴더와 동일하게 해줘야 콘솔창에서 javac 명령으로 정상 수행이 가능함.


2. 환경변수 설정

시스템 등록정보 - 고급탭 - 하단의 환경변수 클릭

환경변수 창에서 새로 만들기로 JAVA_HOME을 만든다.

변수이름 : JAVA_HOME
변수값 : jdk가 설치된 폴더 (ex. C:\Program Files\Java\jdk1.7.0_02)

다음으로 PATH 값을 수정한다.
기존에 들어있는 값 뒤에 %JAVA_HOME%bin; 을 입력해준다.

PATH 다른 값을 지우게 되면 콘솔창에서 안먹는 DOS명령어가 많아질듯...

다음은
CLASSPATH 만들기. JAVA_HOME과 마찬가지로 새로만들기로 ㄱㄱ

 CLASSPATH란? 

 컴파일러나 JVM등이 클래스의 위치를 찾는데 사용한다.
 따라서 class파일을 classpath에서 지정하지 않은 위치에 두고 컴파일 하면 에러가 나는것이다.



변수이름 : CLASSPATH
변수값 : .;%JAVA_HOME%\lib\tools.jar

제대로 설정되었는지 확인 하는 법은

콘솔창을 띄운 후

java

javac

를 입력한 후 제대로 나오는지 확인해보면 된다.



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

query maker  (0) 2012.02.23
JDBC드라이버 이클립스 세팅 / 연결 체크 포인트  (0) 2012.02.10
오라클 설치 및 기본세팅  (0) 2012.02.10
이클립스 톰캣 설정 ~ HelloServlet 찍기  (0) 2012.02.09
hashmap  (0) 2011.12.29
  

바베큐 준비물

Posted by sabper 먹자 : 2012. 1. 13. 14:30

 

장봐야 하는것들 아니면 집에서 가져올수도 있는거 대략 추스려 봤습니다

보시고 더 필요한거라든지 아니면 수정해야될 내용이 뭐가 있을까요??

품목

수량

비고

대략 가격

마트에서 사야만

하는 품목

3kg짜리

번개탄포함

10,000

석쇠

1개

5,000

일회용 접시,젓가락,컵

각 10세트

5,000

고추,마늘

각 한봉지..

5,000

쌈장,고추장,초고추장

 

3,000

상추등 야채

가격에 맞춰서

3,000

버섯,양파,쌈무

가격에 맞춰서

5,000

감자,고구마

고기류

목살

3근

익일구입

30,000

소고기

2근 (갈비살) 수입산

익일구입

30,000

해물류

가격에맞춰서

새우

15,000

소시지

가격에 맞춰서

수제

10,000

찌개거리

마트표찌개

섞어찌개

김치찌개

참치넣어서

라면

5개짜리 2개

8,000

과일

귤 1박스?

주류

소주

1박스 20개

33,000

맥주

피쳐 6개

25,000

음료수

3,000

생수

3,000

집에서 가져올수도

있는 품목

집게,가위

호일

위생팩,위생장갑

패쓰

소금(구이용,굵은)

참기름

여러명이 분배해서

김치

종인이형

참치



대략 합계 193,000 입니다.

여기서 혹시 모르니 오바되면 30,000까지만 더 쓰겠습니다.

그 이상 오바되면 품목을 줄이고요

'먹자' 카테고리의 다른 글

닭갈비 만들기  (1) 2006.07.19
  

hashmap

Posted by sabper 프로그램/웹프로그래밍 : 2011. 12. 29. 13:51
public static void main(String[] args) {
HashMap<String, String> h= new HashMap<String, String>();
h.put("나","홍길동");
h.put("너","성춘향");
h.put("우리","홍길동&성춘향");
String str = (String) h.get("우리");  //캐스팅
System.out.println(str);
String str1 = (String) h.get("너");
System.out.println(str1);
String str2 = (String) h.get("나");
System.out.println(str2);
}//of main

}//of ArrTest class

  

왕복오래달리기

Posted by sabper 기타 : 2008. 5. 29. 10:56
왕복오래달리기 (셔틀런)
1단계 : 9초                7회 (7회)

2단계 : 8초                8회 (15회)

3단계 : 7.5초             8회 (23회)

4단계 : 7초                9회 (32회)

5단계 : 6.7초             9회 (41회)

6단계 : 6.5초             10회 (51회)

7단계 : 6.2초             10회 (61회)

8단계 : 6초                11회 (72회)

9단계 : 5.7초              11회 (83회)

http://125.245.65.210/~lkj2232/bbs/zboard.php?id=bugwonpds&page=1&page_num=20&select_arrange=headnum&desc=&sn=off&ss=on&sc=on&keyword=&no=179&category=1

'기타' 카테고리의 다른 글

자동차 보험 가입기  (0) 2007.10.09
제일 마음에 드는 사진  (0) 2007.04.18
깃발이미지 단순  (0) 2006.07.21
一切唯心造  (0) 2006.07.13
  

바탕화면 꾸미기

Posted by sabper computer : 2007. 12. 5. 14:39
폰트 바꾸기

바꾸고 싶은 폰트를 windows/fonts 폴더에 넣으면 자동으로 설치 된다.

간혹 가독성이 떨어지는 폰트일 경우 ms에서 제공하는 프로그램을 이용하여 가독성을 높인다.

gLass gaRden



바탕화면 여러개 쓰기

deskspace



sytlexp / blind / 마이테마 /

'computer' 카테고리의 다른 글

엑셀 - 색깔이 같은 셀만 합계 구하기  (8) 2007.10.31
효과음은 나오는데 동영상 재생시 사운드카드 오류날경우  (0) 2007.09.13
에버레스트  (0) 2007.06.07
wake on lan  (0) 2007.04.27
리눅스 정복기 #2  (0) 2007.04.26
  

엑셀 - 색깔이 같은 셀만 합계 구하기

Posted by sabper computer : 2007. 10. 31. 11:09
엑셀 - 색깔이 같은 셀만 합계 구하기

엑셀 합계를 구할때 색깔이 같은 셀들의 합계만 구하고 싶을때 메크로 vb editor을 이용하여 할 수 있다.

사용자 삽입 이미지

보기


위 그림첨럼 vb ediotr의 사용자 정의 함수로 채우기 색이 빨간색인 셀들의 합만 구할 수 있다.

물론 채우기색뿐만 아니라 글자색깔에 별로도 합계를 구할 수 있다.


이러한 조건의 함수를 vb editor을 이용하여 사용자정의 함수로 만들 수 있다.


1. 일단 엑셀에서 도구 -> 메크로 -> Visual Basic Editor 로 이동합니다.

사용자 삽입 이미지


2. 다음 그림과 같이 메뉴 중 삽입 - 모듈 을 클릭합니다.

사용자 삽입 이미지



사용자 삽입 이미지

3. 모듈 창에 다음과 같은 코드를 붙여넣기 합니다.

/------------------------------------------------------------------------------------------/
Function Sum_Color(rng As Range, color As Integer, ctype As Variant)
Dim onerng As Range, sum As Integer '함수선언

If ctype = 0 Then '타입이 0일 경우(글자색깔별)
sum = 0
For Each onerng In rng '합계를 구할 셀들의 범위지정 (지정범위까지 아래 2행 반복)
If onerng.Font.ColorIndex = color Then '색깔지정 숫자가 같을 경우
sum = sum + onerng.Value '합계 계산
End If
Next
Sum_Color = sum
Else '타입이 0이 아닐경우 (채우기색깔별)
sum = 0
For Each onerng In rng
If onerng.Interior.ColorIndex = color Then
sum = sum + onerng.Value
End If
Next
Sum_Color = sum
End If

End Function
/------------------------------------------------------------------------------------------/

초록색 부분은 코드에 대한 설명이다.

타입이 0일경우 font.colorindex 값(글자색깔에 대한 숫자)을 비교하여 합계를 구하고
타입이 0이 아닐경우 Interior.colorindex 값(채우기색깔에 대한 숫자)을 비교하여 합계를 구한다.

사용자 삽입 이미지

붙여넣기를 모듈창에 완료한 상태입니다.
그런 후 상단의 디스켓모양의 저장하기 버튼을 눌러서 저장합니다. 엑셀파일 형태로 저장됩니다.
엑셀 자체에 저장되는것이 아니라 지금 열려있는 엑셀파일에 저장되는 것입니다.
따라서 다른 엑셀 파일에는 적용이 안됩니다.

4. 이제 방금 정의 한 함수를 이용하여 글자색깔이 같은 셀만 합계를 구해보겠습니다.

사용자 삽입 이미지

위와같이 합계를 구할 데이터를 입력하고 글자색깔별 / 채우기 색깔 별로 합계를 구했습니다.

사용법은 =sum_color(범위, 색번호, 타입) 입니다
  범위합계를 구할 셀들의 범위입니다.
  색번호는 각 색깔들의 번호입니다. 빨강: 3 / 초록 : 4 / 파랑 : 5 / 노랑 : 6 / 검정 : 0 / 흰색 : 2
  타입 0글자색깔조건 이고, 타입 1채우기 색깔조건 입니다.

위 그림처럼 글자색깔인 빨간색인 셀들의 합들을 구하려면 다음과 같이 수식을 입력합니다.
=sum_color(C4:H4,3,0)

이렇게 하면 글자색깔별 혹은 채우기색깔 별로 합계를 구할 수 있습니다.


추가사항
이포스트 올린지 너무 오래되서 댓글을 못봤었는데 몇년에 보니 문제점이 있었네요..
32,767 까지만 계산되고 소수점이나 그이상 계산 안되는 거는
아마도 sum 변수 integer로 선연되 있어서 그럴거 같네요.
double 정도로 선언하면 그이상도 충분히 계산될 듯 싶어요.
요즘에 엑셀을 다루지 않아 테스트는 안해봤지만....요.
혹시 해보신분들 트랙백이나 댓글 남겨주세요

'computer' 카테고리의 다른 글

바탕화면 꾸미기  (0) 2007.12.05
효과음은 나오는데 동영상 재생시 사운드카드 오류날경우  (0) 2007.09.13
에버레스트  (0) 2007.06.07
wake on lan  (0) 2007.04.27
리눅스 정복기 #2  (0) 2007.04.26
  
 «이전 1 2 3 4 5 ··· 12  다음»