본문 바로가기

Blog/Spring

Maven Project

1. Maven Project 생성

Maven Project 선택
아키타입(Achetype) 선택 -> webapp

아키타입 : 일종의 프로젝트 템플릿, 어떤 아키타입을 선택했느냐에 따라 여러 파일을 생성 / 라이브러리 셋팅 등의 일 해줌

Group Id : 프로젝트 진행 회사 / 팀 도메인 이름 (거꾸로 적음)

Artifact Id : 해당 프로젝트 이름

버전은 주로 0.0.1-SNAPSHOT

package : group id + artifact id (자동)

 

finish

 

 

2. pom.xml 확인/수정

코드 추가

이렇게 하고 프로젝트 우클릭 -> properties에서 java ee integration을 들어가야 하는데, 보이지 않았다.

걍 프로젝트 클릭해놓은 상태에서 위에 옵션 Project -> Properties로 들어가면 보임

Properties -> Java EE Integration -> Enable Project Specific Settings 체크

 

그럼 1.5였던 자바 컴파일러가 1.8로 바뀌는 것을 볼 수 있음

 

 

3. src/webapp/index.jsp 확인

HttpServlet을 찾을 수 없다는 오류 메시지

현재는 WAS 런타임을 지정하지 않았기 때문에 서블릿 라이브러리 찾을 수 없음

나중에 WAS Runtime 지정하면서 Tomcat 연결하면 톰캣 안에 서블릿 라이브러리를 사용하게 됨

 

4. servlet 라이브러리 추가

pom.xml에 dependency 추가

scope(범위) -> provided : servlet 라이브러리를 컴파일 시에만 사용하고 배포 시에는 사용치 않는다.

  • scope

 

4. Project -> Run on Server

index.jsp 오류 없어짐

 

5. pom.xml -> JSTL 라이브러리 추가

JSTL은 Tomcap이 기본으로 제공하지 않음 -> 컴파일 할 때, 배포할 때도 사용해야 함

 

6. Test 코드 index.jsp에 작성 -> run on server

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
<%
request.setAttribute("n", 10);
%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
	<title>Insert title here</title>
	</head>
	<body>
		<c:if test="${n == 0}">
		n은 과 0과 같습니다.
		</c:if>
		
		<c:if test="${n == 10}">
		n은 과 10과 같습니다.
		</c:if>
	</body>
</html>

암것도 안나옴

 

7. 프로젝트 Properties -> Project facets 설정

dynamic web module 2.3 설정되어 있음 -> 3.1로 변경

2.4부터 EL이 기본으로 사용할 수 있도록 설정되기 때문에 위에서 결과가 출력되지 않는 것

 

그래서 2.4에서 3.1을 직접 코드로 설정해줄거임

WEB-INF/web.xml 원래 파일 내용

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
  <display-name>Archetype Created Web Application</display-name>
</web-app>

 위에 코드로 바꿈

 

Windows > Show view > Navigator

.settings 파일 수정

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="jst.web" version="3.1"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
  <installed facet="java" version="1.8"/>
</faceted-project>

일케 하면 dynamic web module이 2.3에서 3.1로 변경되어있음(직접 properties에서 바꾸지 않아도..)

 

8. run as server 실행

성공

여기서 잠깐, 서버 충돌로 실행이 제대로 되지 않아서 올라가 있는 애플리케이션 다 삭제하고 다시 했음

'Blog > Spring' 카테고리의 다른 글

Servlet  (1) 2020.08.25
JDBC(Java Database Connectivity)  (0) 2020.08.19
Maven  (0) 2020.08.18
DDL (Create, Drop, Alter)  (1) 2020.08.18
08.12 - DML(select, insert, update, delete)  (0) 2020.08.12