servlet, spring 과는 다르게 배포가 좀 빡쌤
jsp는 jar로 묶으면 실행이 안되는 문제가 있음.
그래서 war로 묶을 것임

1.
<packaging>war</packaging> 삽입 위치 중요
디펜던시 필요한거 있으면 추가
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<version>2.7.9</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>

2.
war도 해당 설정 포함시켜야한다.
mybatis 안쓰면 안넣어도 됨. mybatis를 쓰는데 매퍼가 없을 경우를 위한 설정이다.
<!--메퍼 누락방지 추가 -->
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
<!--메퍼 누락방지 추가 -->

3.
외부에서 실행되게 하게끔 하는 설정 추가
- 상속받기 SpringBootServletInitializer
extends SpringBootServletInitializer
- configure 오버라이드 및 수정
```
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// TODO Auto-generated method stub
return builder.sources(Boot13Mvc1Jsp1Application.class);
}
```
Boot13Mvc1Jsp1Application.class)는 프로젝트명으로 삽입




7. target 폴더에 생성된 war파일을 톰켓 9.* 폴더의 webapp으로 war에 배포

<Context docBase="boot13_MVC3_jsp_mybatis-0.0.1-SNAPSHOT" path="/app" reloadable="true"/>boot13_MVC3_jsp_mybatis-0.0.1-SNAPSHOT는 프로젝트 주소명을 입력하면 된다.
실행 : cmd에서 톰켓9->bin까지 이동 / startup 명령어로 실행
큰 특징 : tomcat 설정이 없다
참고로 h2 db에 접근하는 프로젝트는 따로 h2를 수동으로 띄워주고 시작해야한다.
<!--메퍼 누락방지 추가 -->
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
<!--메퍼 누락방지 추가 -->
그냥 빌드
생성된 jar 파일은 단독실행이 된다.
cmd -
해당 폴더까지 cd
java -jar boot14_thymeleaf2__JPA_H2-0.0.1-SNAPSHOT.jar
로그인 까지

리눅스 명령어 연습
https://bellard.org/jslinux/
여기서 연습 대부분 됨
자료 pt 참조
C:\apache-tomcat-9.0.72\webapps\manager\META-INF/context.xml
C:\apache-tomcat-9.0.72\webapps\host-manager\META-INF/context.xml
두 파일 다아래 구문 주석으로 막기
<!--<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
C:\apache-tomcat-9.0.72\conf/tomcat-users.xml
맨아래의 </tomcat-users>의 바로 위쪽에 해당 설정 구문 추가
manager 권한 부여
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="admin"
roles="manager-gui,manager-script,manager-jmx,manager-status"/>
<user username="deployer" password="deployer" roles="manager-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui"/>
http://localhost:8090/manager 로 접속하여 admin/admin을 입력하면
서버에서 서비스 중인 주소들을 관리할 수 있음