Spring을 위한 이클립스 설정

이동언·2024년 8월 28일

new world

목록 보기
34/62
post-thumbnail

8.28(수)

0. Spring / JDK / Tomcat 사용가능버전

📌 Spring 6.xx - JDK17이상 - Tomcat 10이상 (3가지 맞춰줘야함) => Eclipse사용가능 / 인텔리제이 사용불가능
📌 Spring 5.xx - JDK8이상 - Tomcat 9까지만 (3가지 맞춰줘야함) => Eclipse, 인텔리제이 사용가능




1. eclipse설치

1-1. 설치하고 enterpirse로 설치하기
1-2. c드라이브 밑에 ws폴더를 생성한 후 경로를 ws폴더로 하기




2. jdk 및 환경변수 설정

2-1. cmd에서 java -version을 확인하여 17version인지 확인
2-2. cmd종료 하기
2-3. corretto-17 관련된 폴더 들어가서, 폴더경로를 복사 (C:\Users\user.jdks\corretto-17.0.11)
2-4. 시스템 환경변수 편집 -> 환경변수 -> 시스템 변수의 새로만들기
2-5. 새 시스템 변수에 값 넣기 (변수이름 : JAVA_HOME) (변수 값: JDK 폴더경로) -> 확인

2-6. 시스템 변수 내에 Path 눌러서 환경변수 편집에서 새로만들기 누르고 (%JAVA_HOME%\bin) 작성후 확인




3. lombok 설치

3-1. 롬복 다운로드(https://projectlombok.org/download)
3-2. 이클립스 폴더에 eclipse.ini 메모장으로 열어서 vm아래 부분을 한줄 지운뒤 환경변수 값 넣고+\bin\javaw.exe라고 적기 , 그리고 21버전을 17버전으로 수정하기

3-3. C:\Users\user>cd Down* 를 하면 Downloads로 이동하게 되는데 여기서 (java -jar lombok.jar) 입력

3-4. specify location 눌러서 현재 이클립스 exe파일이 경로로 들어간뒤에 이클립스 exe파일 선택한뒤 install 하면

이클립스 폴더내부에 lombok.jar 파일이 생긴걸 볼 수 있음.

3-5. create dynamic web project -> target runtime은 아파치 10.1 directory browser는 아파치 톰켓 폴더로 설정 -> jre는 17ver으로 변경했음 -> next -> next ->
generate 체크 -> finish

3-6. w1이라고 만든 프로젝트 오른쪽클릭 -> 아래 configrue -> conver to maven project -> finish 하면 pom.xml 파일이 생성됨.



4. 프로젝트 생성확인

4-1. src/webapp (Webapp 에서 오른쪽클릭임) 오른쪽클릭해서 jsp파일을 새로 생성한다. (이름은 sample.js)

4-2. sample.js파일 내부에 UTF-8로 다 변경해주고 시험작업으로 H1태그생성

4-3. 가장위의 w1프로젝트에 오른쪽클릭하고, run -> run on server -> 아팟치10.1 선택하고 finish

4-4. 그러면 검색창에 (http://localhost:8080/w1/sample.jsp) 라고 치면 해당 내용이 나옴





5. UTF-8

5-1. window - preference - web - jspFile - UTF-8로 변경해주기
5-2. HTML, CSS File 둘다 마찬가지로 변경해주기





6. lombock eclipse설정

https://mvnrepository.com/artifact/org.springframework/spring-core/6.1.11

6-1. 브라우저에서 maven을 선택한뒤 복사 (아래코드 사용해도 무방함)

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>6.1.11</version>
</dependency>

6-2. 프로젝트 가장 아래 pom.xml 내부에 dependencies 태그를 만들어서 해당 태그 내부에 복사한 dependency 내용들을 넣는다.

6-3. 추가한 이후에 저장하고, w1프로젝트 오른쪽클릭 -> maven -> update project 해주면 refresh 해줌 (maven 추가해준 이후에는 해주는게 좋음)

6-4. 이후에 추가로 2개 더 넣어주자 첫번째꺼 복사해서 core부분만 수정해주면 됨. (context / webmvc)





7. spring

7-1. src/WEB-INF (WEB-INF에 오른쪽클릭) 해서 spring이라는 폴더를 생성

7-2. spring폴더에 오른쪽클릭해서 new -> other -> 가장아래로 -> xml눌러서 xmlfile선택

7-3. 파일이름은 (모든나라가 똑같음) root-context.xml 으로 생성

7-4. web.xml 파일 내부에 welcome 태그 다없애고 해당 코드를 복사해서 집어넣는다.

<listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>WEB-INF/spring/root-context.xml</param-value>
    </context-param>

7-5. root-context.xml 파일 내부에도 해당 내용을 붙혀넣는다

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!-- bean definitions here -->

</beans>




8. 새로운 패키지 생성

8-1. JAVA Resources 아래에 src/main/java 라는 이름의 폴더를 오른쪽클릭해서 패키지 생성
이름은 org.zerock.w1

8-2. 새로 만든 org.zerock.w1패키지에 오른쪽 클릭해서 Hello라는 클래스 생성
(파일생성하고 클래스생성하는거 아님 그냥 클래스만 생성)

8-3. 클래스 내부에 확인용으로 hello클래스 내부에 생성자 만들기

8-4. root-context 파일 내부에 bean태그를 생성해서 해당 사진과 같이 class경로 설정해준다.

8-5. 이후에 서버 재 시작 해줬을때 콘솔창에 Hello가 뜨는지 확인

8-6. spring 폴더에서 오른쪽 클릭하여 xml파일을 root-context생성한것처럼 똑같이 생성
이름은 servlet-context.xml

8-7. servley-context.xml 파일 내부에 해당 코드 작성하기

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans
		https://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/mvc
		https://www.springframework.org/schema/mvc/spring-mvc.xsd">

	<mvc:annotation-driven/>

</beans>

8-8. web-xml 파일 내부에 해당 코드를 추가하기

<servlet>
        <servlet-name>appServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>WEB-INF/spring/servlet-context.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>appServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>




9. servlet

9-1. org.zerock.w1 패키지에서 오른쪽클릭하여 새로운 패키지 생성
이름은 org.zerock.w1.controller

9-2. 컨트롤러 패키지에서 오른쪽클릭하여 HelloController 클래스 생성

9-3. servlet context 코드를 아래 코드로 전체 변경

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/views/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

    <context:component-scan base-package="org.zerock.w1.controller"/>

    <mvc:annotation-driven/>

    <mvc:resources mapping="/resources/**" location="classpath:/static/"/>

</beans>

9-4. Hello Controller 클래스 내부에 해당 코드로 변경

9-5. WEB-INF 폴더에 오른쪽클릭하여 views라는 폴더를 새로 생성

9-6. views 내부에 hello.jsp 파일을 생성하고 내부에 h1태그로 hello jsp file이라고 확인차 적어주기

9-7. 이후 브라우저에 주소를 입력하면 (http://localhost:8080/w1/hello)




10

10-1. 해당 코드를 pom.xml에 추가해주기

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.34</version>
    <scope>provided</scope>
</dependency>

10-2. servlet-context의 해당 코드를 복사해서

10-3. root-context에 붙혀넣기

10-4. 기존에 있던 노란부분의 코드를 지우고 아래 해당 코드를 root-context에 붙혀넣기

http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">

10-5. 그러면 root-context에 <con 이라고 치고 컨트롤 스페이스 누르면 목록들이 뜰텐데, component-scan을 선택하고 helloService 폴더 가장 상단에 있는 경로를 복사해서 사진처럼 붙혀넣기

10-6. 컨트롤러 패키지에 HelloController 클래스 생성 후 코드작성

10-7. service패키지 생성후 helloService 클래스 생성후 코드 작성

10-8. 브라우저 및 콘솔창 확인




11. 백업용으로 만들어 사용하기

11-1. 오른쪽 버튼 눌러서 프로젝트 클로즈

11-2. 다이나믹으로 새로운 프로젝트 생성

11-3. 해당 p1프로젝트를 maven으로 전환하기

11-4. 이클립스 종료후에 기존에 있던 w1 파일 경로로 들어가서 pom.xml을 p1프로젝트의 pom.xml에 덮어씌우기

11-5. w1의 src에 있는 main폴더도 똑같이 복사해서 붙혀넣기

0개의 댓글