https://mine-it-record.tistory.com/306

참조

 

[Eclipse] The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

- The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 에러 해결 - SVN에 있는 프로젝트를 CHECK OUT 받았더니 시작부터 저런 에러가 나를 반긴다 해결하는 방법에 대해 기..

mine-it-record.tistory.com

 

The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 에러 해결  -


SVN에 있는 프로젝트를 CHECK OUT 받았더니

 

시작부터 저런 에러가 나를 반긴다

 

해결하는 방법에 대해 기록해두고자 한다.


Multiple annotations found at this line:

- The superclass "javax.servlet.http.HttpServlet" was not found on the Java 

 Build Path

- The superclass "javax.servlet.http.HttpServlet" was not found on the Java 

 Build Path

 

이런 에러가 발생하였다 왜 중복해서 나온지 모르겠지만 그대로 옮겨놨다.

 

해당 에러가 발생한 프로젝트

 

[프로젝트 마우스 우클릭] - [Properties]

 

를 클릭해주자.

 

 

그 다음

 

[Project Facets] - [Java 선택] - [우측 Runtimes 탭 선택] - [Apache Tomcat 체크] - [Apply]

 

하게되면 신기하게도 빨간표시가 사라지며

 

해당 에러가 사라진다.

 

 

'오류모음 다시는 만나지말자 > 이클립스' 카테고리의 다른 글

이클립스 톰캣 오류  (0) 2021.04.20

​참조

https://m.blog.naver.com/PostView.nhn?blogId=vivacarla&logNo=221530801892&proxyReferer=https:%2F%2Fwww.google.com%2F

 

[해결]Server Tomcat v9.0 Server at localhost failed to start.

​이클립스 톰캣 에러서버 시작이 안됨​Server Tomcat v9.0 Server at localhost failed to start.​별...

blog.naver.com

 

이클립스 톰캣 에러

서버 시작이 안됨

Server Tomcat v9.0 Server at localhost failed to start.

별짓 다했는데 안되었음

아래처럼 서버 탭 모듈에서 context 관련 체크 해주니까 스타트 됨

톰켓 서버

Server Option 탭 > Publish module contexts to separate XML files 체크해줌

하고 톰캣 Ctrl + S 해서 저장

하고 톰캣 재시작

 

 

'오류모음 다시는 만나지말자 > 이클립스' 카테고리의 다른 글

이클립스 <% 오류  (0) 2021.04.20

 

클래스 이름

첫번째 문자는 대문자로 시작 

여러단어가 합쳐질때 단어가 시작하는 문자만 대문자로 구분

 

변수, 메소드 이름

첫단어는 소문자, 다음나오는 단어는 시작하는 문자만 대문자로 구분

이름지을때 앞에 변수의 속성을 표시해두면 좋음

 

상수이름

모든문자를 대문자

 

 

'코딩 공부 > JAVA' 카테고리의 다른 글

자바 환경변수설정  (0) 2021.07.28
자바 특징  (0) 2021.04.14
자바 -오픈소스  (0) 2021.04.14
자바역사  (0) 2021.04.14

가장 큰 특징으로 객체지향

클래스 계층구조, 상속성, 다형성, 캡슐와 등

 

멀티스레드 지원

C/C++  은 멀티스레드를 사용하기위해 API 호출해야 가능함

 

소스(.java)와 클래스(.class)파일 

하나의 소스파일에는 하나의 퍼블릭만 가능하지만 여러 클래스 작성가능

소스 파일이름과 퍼블릭클래스 이름은 같아야함

 

클래스 파일에는 단 하나의 클래스만 존재

하나의 자바 소스 파일에다 다수의 클래스를 생성하면 별도 클래스 파일이 생성됨

 

하나의 main() 메소드

자바 실행은 main 메소드에서 시작해서 두개의 main 메소드가 있을 수 없다

 

클래스로 캡슐화

자바의 모든 변수나 함수는 클래스안에 선언

클래스 안에서 새로운 내부클래스 작성 가능

 

패키지

관련 클래스를 패키지로 묶어서 관리

 

'코딩 공부 > JAVA' 카테고리의 다른 글

자바 환경변수설정  (0) 2021.07.28
자바 이름 붙이는 관습  (0) 2021.04.15
자바 -오픈소스  (0) 2021.04.14
자바역사  (0) 2021.04.14

JDK(Java Development Kit)

자바를 개발하는데 필요한 도구(javac, java, jar, jdb, appletviewer)

 

JRE(Java Runtime Environment)

자바를 실행하는데 필요한 환경 (JVM포함)

따로 똑 떼내서 다운도 가능함

SE

자바의 표준 배포판 - 데스크탑과 서버 응용 개발 플랫폼

 

ME 

자바 마이크로 배포판 - 작은 메모리의 풋프린트, 모바일이나 셋톱박스

 

EE

자바 기업용 배포판 

 

 

오픈소스?

소프트웨어 제작자의 권리 보존 

누구나 접근가능한 소스코드를 무상 공개

 

장점 

공개된 소스코드를 참조함으로 인해 개발의 시간 비용이 크게 단축

공개된 소프트웨어를 다수의 인원이 참여하고 좋은 소프트웨어를 개발 가능

 

단점

오픈되어있다보니 두산으로 사용해서 저작권 침해 발생

다영한 개량버전의 소프트웨어로 인한 호환성 문제

 

 

'코딩 공부 > JAVA' 카테고리의 다른 글

자바 환경변수설정  (0) 2021.07.28
자바 이름 붙이는 관습  (0) 2021.04.15
자바 특징  (0) 2021.04.14
자바역사  (0) 2021.04.14

처음은 91년 선마이크로시스템드의 제임스 고슬링에서 시작되고 목적은 가전제품용 소프트웨어를 위해서 개발

 

1995년 자바 발표

 

자바의 목적 

 

다양한 플랫폼 호환 가능

소스를 수정하거나 다시 작성해야하는 단점 해결

 

플랫폼 독립적인 언어 개발

네트워크 웹에 최적화된 프로그래밍 언어의 필요성

 

사용하는 메모리양이 작고 다양한 플렛폼을 지원하는 가전제품에 적용

 

초기 이름은 오크 (OAK)

2009년에 선마이크로시스템즈를 오라클이 인수!

 

WORA(Write Once Run Anywhere)

요약하면 어디든지 어느 플랫폼이든지 실행이 가능하다

 

 

'코딩 공부 > JAVA' 카테고리의 다른 글

자바 환경변수설정  (0) 2021.07.28
자바 이름 붙이는 관습  (0) 2021.04.15
자바 특징  (0) 2021.04.14
자바 -오픈소스  (0) 2021.04.14

뷰는 자주쓰거나 자주 입력하는 SELECT문을 하나이상의 테이블을 합쳐 테이블로 생성해서 사용하는 가상 테이블

 

장점

편리성 : 미리 정의된 뷰를 일반 테이블처럼 사용할 수 있기 때문에 편리함. 또 사용자가 필요한 정보만 요구에 맞게 가공하여 뷰로 만들어 쓸 수 있음

재사용성 : 자주 사용되는 질의를 뷰로 미리 정의해 놓을 수 있음

보안성 : 사용자별로 필요한 데이터만 선별하여 보여줄 수 있음. 중요한 질의의 경우 질의 내용을 암호화할 수 있음

 

뷰의 생성

CREATE VIEW 뷰이름 [(열이름 [ ,...n ])]
AS SELECT 문

 뷰의 수정

CREATE OF REPLACE VIEW 뷰이름 [(열이름 [ ,...n ])]
AS SELECT 문

 

뷰의 삭제

DROP VIEW 뷰이름 [ ,...n ];

 

 

 

 

INSERT

INSERT  INTO 테이블이름[(속성리스트)]
	 VALUES (값리스트);
-- 속성 리스트와 값리스트의 수가 일치해야함

 

UPDATE문

UPDATE 테이블이름
SET       속성이름1=값1[, 속성이름2=값2, ...]
[WHERE <검색조건>];
-- 주로 아이디값을 찾아서 업데이트함

 

DELETE문

DELETE FROM    테이블이름
[WHERE  검색조건];
-- DELETE문도 주로 아이디 값을 찾아서 삭제

'코딩 공부 > SQL' 카테고리의 다른 글

mysql root 비밀번호 초기화, 재설정  (0) 2021.11.03
<9> 뷰  (0) 2021.04.13
<7> 테이블 CREATE, ALTER, DROP  (0) 2021.04.13
<6> 부속질의 +집합연산, EXISTS  (0) 2021.03.31
<5> JOIN  (0) 2021.03.20

 

 

 

CREATE문

CREATE TABLE 테이블이름
 ( { 속성이름 데이터타입
     [NOT NULL | UNIQUE | DEFAULT 기본값 | CHECK 체크조건]
    }
     [PRIMARY KEY 속성이름(들)]
     {[FOREIGN KEY 속성이름 REFERENCES 테이블이름(속성이름)]
 	 [ON DELETE [CASCADE┃SET NULL]
     }
 )

 

ALTER문

테이블의 속성과 속성제약을 변경 하며, 기본키, 외래키를 변경

ADD, DROP 추가 제거

MODIFY 속성의 기본값을 정정하거나 삭제

ALTER TABLE 테이블이름
[ADD 속성이름 데이터타입]
	[DROP COLUMN 속성이름]
	[MODIFY 속성이름 데이터타입]
	[MODIFY 속성이름 [NULL┃NOT NULL]]
	[ADD PRIMARY KEY(속성이름)]
	[[ADD┃DROP] 제약이름]

 

DROP문

테이블을 통째로 삭제 (데이터만 삭제하려면 DELETE)

DROP TABLE 테이블이름;

'코딩 공부 > SQL' 카테고리의 다른 글

<9> 뷰  (0) 2021.04.13
<8> 데이터의 추가,수정, 삭제  (0) 2021.04.13
<6> 부속질의 +집합연산, EXISTS  (0) 2021.03.31
<5> JOIN  (0) 2021.03.20
<4> GROUP BY +HAVING  (0) 2021.03.18

 

부속질의 - SQL문 안의 SQL문

 

<스칼라 부속질의 / SELECT,UPDATE >

SELECT 절에서 사용되는 부속질의로, 부속질의의 결과 값을 단일 행, 단일 열의 스칼라 값으로 반환

스칼라 부속질의는 원칙적으로 스칼라 값이 들어갈 수 있는 모든 곳에 사용 가능하며, 일반적으로 SELECT 문과 UPDATE SET 절에 사용

주질의와 부속질의와의 관계는 상관/비상관 모두 가능

-- 주문테에 각 주문에 맞게 가져오는 행을 새로운 행으로 추가

UPDATE 	주문테 주
SET 	새로운 행 = ( SELECT 가져오는 행
   FROM 가져오는테 가 
   WHERE 가.아이디 = 주.아이디 );

 

<인라인 뷰 / FROM >

FROM 절에서 사용되는 부속질의

테이블 이름 대신 인라인 부속질의를 사용하면 보통의 테이블과 같은 형태로 사용

부속질의 결과 반환되는 데이터는 다중 행, 다중 열이어도 상관없음

다만 가상의 테이블인 뷰 형태로 제공되어 상관 부속질의로 사용될 수는 없음

SELECT 	고.이름, SUM(주.가격) "총합"
FROM 	(SELECT 고객아이디, 이름
	 FROM  고객테이블 
	 WHERE 고객아이디 <= 2) 고,
	 주문 주
WHERE 	고.고객아이디 = 주.고객아이디
GROUP BY 고.이름;

 

<중첩질의 / WHERE >

중첩질의(nested subquery)WHERE 절에서 사용되는 부속질의

WHERE 절은 보통 데이터를 선택하는 조건 혹은 술어(predicate)와 같이 사용. 그래서 중첩질의를 술어 부속질의(predicate subquery)

SELECT	열이름
FROM     	테이블이름1
WHERE    	공통열이름 IN (SELECT    공통열이름
                           	FROM    테이블이름2);
          
-- 문장의 해석은 우측하단에서 좌측상단으로 

 

합집합 UNION, 차집합 EXCEPT, 교집합 INTERSECT

-- 구매하지 않은 고객구하기
SELECT 	고객이름열
FROM 	고객테이블 -- 전체 고객에서
EXCEPT -- 차집합
SELECT 	고객이름열
FROM 	고객테이블
WHERE 	고객구분열 IN (SELECT 고객구분열
	              FROM  구매테이블); -- 구매한 고객

 

EXISTS는 원래 단어에서 의미하는 것과 같이 조건에 맞는 튜플이 존재하면 결과에 포함

(부속질의문의 어떤 행이 조건에 만족하면 참인 반면 NOT EXISTS는 부속질의문의 모든 행이 조건에 만족하지 않을 때만 참)

-- 주문이 있는 고객의 이름
SELECT 	이름열
FROM 	고객테이블 고
WHERE 	EXISTS (SELECT *
	           FROM  주문테이블 주
	           WHERE 고.고객아이디 = 주.고객아이디);

 

'코딩 공부 > SQL' 카테고리의 다른 글

<8> 데이터의 추가,수정, 삭제  (0) 2021.04.13
<7> 테이블 CREATE, ALTER, DROP  (0) 2021.04.13
<5> JOIN  (0) 2021.03.20
<4> GROUP BY +HAVING  (0) 2021.03.18
<3> WHERE  (0) 2021.03.12

+ Recent posts