인스턴스???

객체(Object)를 부르는 다른 이름?? 
- 클래스의 인스턴스영역에서 선언되는 변수
- 클래스가 인스턴스 될때 메모리를 할당 받는다.
- 자동 초기화 된다.
- JVM 메모리 구조에서 Heap영역에서 생성된다.
- static영역에서 인스턴스변수를 사용하려면 반드시 객체화를 해서 사용한다.
- 사용 : 인스턴스명.변수명


° 클래스 != 객체



자바 : 인터프린터 언어.... 

돌아가는 순서 


소스 -> 컴파일러 -> 결과물 -> 가상머신 



자바 코드의 구조



소스파일

 클래스 각각 한 ㄱ쌔기을 정의 클래스는 보토ㅇ 프로그램으ㅣ 한 부분이라고 ㅎ라 수 있다.


클래스

 메소득ㅏ 한개 이상 들어가며, 클래스 안에서 선언되어야 한다.


메소드

 이ㄹ련의 선어ㄴ무ㄴ을 모아놓은 것... 일종의 함수나 프롯지어ㅘ 비슷한 것으로 봐도 무관


아주 기본적인 설정 방법이다..(프로젝트 설정부터 차근 차근 하겠다..)

아래의 스크린샷은 Ianuarias 님의 제공입니다.

(lanuarias.tistory.com)



그럼 본격적으로 포스팅 시작할께요~~ ㅎ




이 프로젝트를 만들것입니다요~ㅎㅎ 파일에서 Other(Ctrl + N) 을 눌러서 프로젝트를 만들어 줍니당. ㅎ



강의 시간에 하는 것은 Maven 기반의 프로젝트를 할것이기 때문에 검색을 통해 Maven Project를 눌러줍니다 ^^



따로 설정 할 것이 없으므로 넥수트~~ㅎㅎ



우리가 만들것은 maven-archetype-weapp 을 만들것이에요~~이것을 눌러서 다음~~



Group ID 에서 위의 스샷처럼 입력을 해줍니다.(이건 자기 맘대로 해도됨... ㅎㅎ) Artifact Id는 생성시킬 프로젝트 이름으로 생각하심 됩니다 ^^ 그리고 나서 Finish!!!



그럼 위의 스샷 처럼 Maven 기반의 웹앱 형태의 프로젝트가 만들어지며 위의 스샷 처럼 기본 골격을 갖춘프로젝트가 완성 됩니다 ^^

이제 서비스를 수행하기 위한 몇가지 폴더(소스폴더)를 추가하고 설정을 할 것입니다 ^^



필요한 폴더는 test를 위한 폴더와 서비스를 수행하기위한 폴더 2개를 필요로 합니다.... ㅎㅎ 스크린 샷처럼 아까 프로젝트 만드는 것처럼 Other를 클릭!!



Source Foler를 클릭!!!! 왜 ??필요하니깐 ㅋㅋ



폴더 이름을 지정을 해주어야 되는데요~ 프로젝트를 수행하기위한 기본적인 폴더 4개(test를 위한 폴더 : resources, java/ main을 위한 폴더 : resources(기본적으로 생성), java)를 필요합니다.. ㅎㅎ

프로젝트를 생성할때 기본적인 폴더를 제외한 3개를 위와 같은 방법으로 만들어줍니다.

각가의 폴더의 이름은 아래와같이 지정해줍니다 ^^


src/main/java

src/test/resources

src/test/java


이렇게 3개를 만들어 줍니다 ^^



만들어진 폴더의 결과 화면입니다.. ^

여기까지 기본적니 골격을 갖춘 스프링 이 되겠스빈다 ^^(아 컴터 버벅거려 ㅠㅠ)



이제부터 서비스를 수행하기위한 기본적인 xmㅣ 설정과 프로젝트 설정에 대해 포스팅 하겠습니다 ^^


처음으로 설정할 것은 Context root 설정인데요  이것을 /(root)로 잡아주어야 편하답니다.. 

이것이 그냥 기본적인 설정일 ㅂ경우 봍ㅇ 톱켓이나 기타 서버에 올려서 실행을 하게되면

localhost:>8080/프로젝트 이름  이런식의URL 로 동작을 하는데

Context root 를 / 로 설정을 했을 경우 localhost:8080 이런ㄱ식으로 동작을 하게된다. %^^


Context root 를 변경할 프로젝트에서 오른쪽 클릭 Properties 를 눌ㄹ준다..


그리고 낫Web Project Setting에 가 Context root 란에 가서 설정을 해준다.




위의 스샷 처럼 설정을 해준다.


그럼 OK 를 눌러주면 설정 완료!!!




이제 pom.xml 을 설정을 할것인데 강의 시간에 기본적인 서버 설정을 위 svn 에 올라와 있는pom. xml 을 복사한다..

(나중에 이것은 따로 블로그에 업로드 시킬 예정임)



그리고 나서 연습을 하고 있는 프로젝트 폴더에다가 붙어 넣기를 해주면 된다 

^^




그럼 위에 스크린 샷처럼 복사가 완료가 되었지만!! 문제가 발생하였다!!!!! ㅠㅠ 

pom.xml 의 변경으로 인해 Update를 시켜주어야 한다.




Update 방법은 연습하고 있는 프로젝트에 오른쪽 클릭 한후Maven 메뉴 안에 Update Project Configuration 이라는 것을 눌러준다.



그리고 나서 업테이트 시킬 프로젝트를 눌러서 OK 버튼을 클릭!!!



그러면 아까와 같은 프로젝트에 빨간 기분을 나쁘게 하는 표시가 사라지게 된다 ㅠㅠ




이제 다른 파일을 설정할 차례이다.. 이제 변경(추가) 할 것은 src/main/webapp/WEB-INF/ 에 있는 web.xml을 수정할 차례이다.

스크린 샷에 있는 것을 복사(기본 디폴트 xml 아넹 있는 내용을 복사를 한다.



이제 우리가 연습할 프로젝트에 같은 경로에 있는 web.xmㅣ 에다가 붙어 넣는다.. ㅎㅎ

여기서 복사한 servlet의 내용은 Dispatcher를 수행하기 위한 부분이다. 이것이 설정되 있지 않으면 Dispatcher 가 실행이 ㄷ지 않아 정상적인 접근이 불가능하다.(URㅣ 기반 접ㄴ도 불가능)



위의스크린 샷에 설정된 블럭으Dispatcher를 수애하기위한 설정된 xml 파일의 경로와 이름을 지정해준다.

그럼 이제 저 설정 ㅍ일을 복사해야겠죠?? ㅎ



SVN 에 올라와 있는 기본 설ㅇ 프로젝틍ㅇservlet-context 의 파일을 복사를 해서...



우리가 수행할 프로젝트 안에 붙어 넣어 줍니다 ^^


그리고 기본적으로 이 파일안에 우리가 연습할 부분에 대해 방해를 시킬 수 있는 요소를 주석처리를 해줍니다 ^^





Dispatcher 가 설정되어 있느ㅡservlet-context.xml 파일의 내용입니다.

 내용을 대충 살펴 보게 되면

<context:componet-scan base-package="kr.ac.jejuuniv"/> -> 'kr.ac.jejuuniv'라는 패키지에 있는 context 컴포넌트를 읽게 하기 위함

<annotation-driven/> -> 어노테이션을 수행을 하겠다??

<resources mapping="/resources/**" location="/resources/"/> -> 서비스 수행을 위하ㅏ리소스 폴더 경로 맵핑


<bean~~~~ /beans:bean> -> 프리픽스에 설정된 경로에있는 .jsp 파일을 뷰 


'-컴퓨터 지식 창고- > Spring' 카테고리의 다른 글

About Spring  (0) 2012.01.16


1. import java.lang.*;
    이 패키지를 따로 코딩하지 않아도 JVM은 import된것으로 인식

2. default 생성자
   클래스 내부에 아무런 생성자도 만들지 않으면 JVM은 자동적으로 default 생성자가 있다고 인식

3. this 예약어
   클래스의 멤버는 static을 제외하고 모두 this  객체를 통해 접근하지만 생략할 수 있으므로 일반적으로 사용하지 않아도 알아서 인식

4. 0번째 매개 변수
   서로 다른 객체를 구분하기 위해 0 번째 매개 변수인 [자기_클래스명 this]가 생략되어 있음을 인식

5. toString() 메소드
   모든 클래스의 객체는 그 이름을 출력에 사용하게 되면 자동적으로 위의 메소드를 사용한다.

6. Object 클래스의 상속
   상속관계가 적혀 있지 않은 자바의 ㅁ코든 클래스는 자동적으로 java.lang.Object 클래스가 상속되었다고 JVM에서 자동적으로 인식

7. super메소드
   상속 관계에서는 하위 클래스의 생성자는 첫 라인에 super 메소드나 this 메소드를 기재하지 않았을 때 자동적으로 super가 있다고 JVM이 인식 

'-컴퓨터 지식 창고- > JAVA' 카테고리의 다른 글

인스턴스??  (0) 2012.06.30
자바??  (0) 2012.06.30
자바 중첩 클래스  (0) 2012.02.25
keytool를 이용한 키 생성!!  (0) 2011.12.06
SSL 서버와 클라이언트 실행시 옵션 귀춘.... 해결 방법  (0) 2011.11.19
중첩 클래스

효율적인 관리를 위한 하나의 형식.  다른 클래스 내부에 정의 되는 클래스이다.

중첩클래스의 종류
   - static class : 독립적으로 오브젝트로 만들어질 수 있는 클래스
   - inner class : 자신이 정의된 클래스의 오브젝트 안에서만 만들어질 수 있는 클래스

inner class는 또 3가지로 구분
  1. member inner class : 맴버필드처럼 오브젝트 레벨에 정의되는 클래스
  2. local class : 메소드 레벨에서 로컬 변수를 선언하여 사용하듯 선언된 메소드 내에서만 사용하능한 클래스
  3. anonymous inner class : 이름을 갖지 않는 익명 내부 클래스 
 

출처 : http://kimddochi.tistory.com/70    김또치님의 블로그 
DNS 설정 중 값이 다시 원래대로 돌아오는 경우

변경 후 w!  로 저장.. 
1. What is Spring??
  스프링은 자바 엔터프라이즈 애플리케이션 개발에 사용되는 애플리케이션 프레임워이다.

스프링 컨테이너
스프링 : 스프링 컨테이너 or 애플리케이션 컨테스트라는 불리우는 스프링 런타임 엔진 제공.

스프링 컨테이너 : 설정정보를 참고해서 애플리케이션 구성하는 오브젝트를 생성, 관리, 독립적으로 동작할 수도 있지만 보통 웹 모듈에서는 동작하는 서비스나 서블릿으로 등록해서 사용한다. 
 

공통 프로그래밍 모델 : loC/Di, 서비스 추상화, AOP 
  Framework : 애플리케이션을 구성하는 오브젝트가 생성되고 동작하는 방시기에 대한 틀과, 코드 작성 기준을 제시


스피링의 3가지 핵심 프로그래밍 모델 

1. IoC/Di : 오브젝트의 생명주기와 의존관계에 대한 프로그램이 모델

2. 서비스 추상화 : 환경이나 서버, 특정 기술에 종속되지 않고, 이식성이 뛰어나는 이유-> 서비스 추상화 했기때문

3. AOP : 애플리케이션 코드에 산재해서 나타나는 부가적인 기능을 독립적으로 모듈화하는 프로그래밍 모델 

 

'-컴퓨터 지식 창고- > Spring' 카테고리의 다른 글

Spring 기본 설정(포털 강의 中)  (0) 2012.04.28
생각보다 간단함... 
wget 받을 인터넷 파일 경로

 이 명령어를 친 곳에 파일이 있다..`
Java로 SSL 프로토콜을 위한 키를 생성하기 위해 keytool를 이용함. ㅋ

 여기서 Keytool 이란!!
#Keytool
키와 인증서를 관리하는 유틸로서, 개인키 공개키 및 자신이 권한을 부여한 인증서를 관리 할 수 있게 하며, 자료의 보장과 전자서명에 의한 인증을 관리할수 있게 한다. 여기서 생성된 키와 인증서는 keystore라는 곳에 저장을 하게 되며 파일로 구현이 되며, 비밀번호를 이용하여 키나 인증서를 보호한다. 
 
그럼 생성 방법은?? ㅋ

-개인키 생성
 
keytool -genkey -keyalg RSA -keystore private
 
 
 
위와 같은 화면이 나옵니다. ^^ 명령어에서-keyalg 는 RSA라는 알고리즘을 사용한다는 것!!

공개키 추출

keytool -export -file file -keystore privateServer

privateServer 라는 것에서 file 이라는 이름으로 추출한다는 의미 

privateServer(위에서 생성한 키)의 비밀번호를 입력을 하면 공개키가 추출이 된다. 이 키를 이용하면된다. ^

공개키를 publicServer라는 파일 에 저장

keytool -import -keystore publicServer -file key
 
이렇게 하면 keytool 를 이용하여 privatekey와 publickey 를 관리 할 수 있을 것이다! 

+ Recent posts