🚀 from error to study/Server
[Server] 웹 서버와 웹 애플리케이션 서버(WAS)의 차이
더보기 오늘 면접에서 웹 서버와 WAS 프로그램으로 무엇을 사용했냐는 질문을 받음 🗣️ WAS는 동적이며 아파치 톰캣을 사용했고...... 음, 웹 서버는 정적 서버이며 자바 이클립스에서 콘솔로 돌렸습니다 라고 대답했고, 면접관님은 그냥 고개를 끄덕이시고 넘어감 면접 후 알 수 없는 찝찝함에 구글링 했고 내가 이상한 대답을 했음을 감지함 배웠던 건데 왜 말을 못했을까 이번에 제대로 정리해 놓고 개념 숙지해야지 📌 웹 서버와 WAS의 구조 한눈에 보기 📌 웹 서버 👉🏻 웹 브라우저 클라이언트로부터 HTTP 요청을 받아들이고 HTML 문서와 같은 웹 페이지를 반환하는 컴퓨터 프로그램 👉🏻 대표적인 웹 서버: Apache 웹 서버의 역할 1️⃣ 클라이언트가 웹 브라우저에서 어떠한 페이지 요청을 했을 때 웹 서..
ERROR: org.springframework.web.context.ContextLoader - Context initialization failedorg.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in ServletContext resource [/WEB-INF/spring/root-conte..
💡 해결방법 주로 mapper의 .xml 파일에 부등호가 들어 있기 때문에 발생하는 오류임 해당 부등호를 안에 넣어 해결 하나 해결하면 또 하나의 오류가 생기는 매직 그치만 첨 보는 오류 내용으로 나를 당황시킨 것과 다르게 너무 정확하게 오류를 짚어 줬음 MyBatis 사용을 위한 .xml 파일에서 부등호 사용 시() 발생하는 에러라 함 안에 내가 원하는 부등호를 넣어 주니 엑스가 사라졌음 서버를 재구동 했을 때도 오류 없이 돌아감
[Server] 톰캣 에러 - Server Tomcat v8.5 Server at localhost failed to start
산 넘어 산이지만 기죽지 말자 어차피 내가 겪은 오류는 다른 사람도 이미 겪었다 = 구글 뒤지면 나온다 1. Window - Preferences - Java - Installed JREs 접속 후 현재 jdk 삭제 👉🏻 그리고 새로운(나의 경로에 있는) jdk를 넣기 위해 Add 버튼 클릭 2. Standard VM 선택 후 Next 3. Directory 선택 후 JDK 경로 선택 - Finish 4. Apply and Close 5. 서버 더블클릭 6. 서버의 Overview에서 Runtime Envorionment 클릭 7. Browse 클릭 후 Tomcat 경로 지정한 뒤 Finish 8. 서버 돌리기 이거거든
[Server] 톰캣 에러 - The specified Tomcat installation directory does not exist
내가 설정한 디렉토리에 톰캣이 없다는 직관적인 설명 작업 환경이 바뀌면 세팅해 줘야 할 게 너무 많다 1. Preferences - Server - Runtime Environments 접속 Apache Tomcat v8.5 클릭 후 Edit 2. Browse 클릭 후 나의 톰캣 경로를 잘 설정해 준 뒤 Finish 3. 이때 하단에 빨간색 글씨로 이렇게 나오는 경우도 있는데 쫄지 말고 Apply and Close를 눌러 줌 4. 자 이제 서버를 다시 돌려 보자! 그러면! 📖 Server Tomcat v8.5 Server at localhost failed to start 에러가 뜰 것이다 ^^...
[Server] 강제로 포트 죽이기
💡 해결방법 cmd 명령어를 사용하여 강제로 포트 죽임 // 현재 사용 중인 포트 번호 조회 netstat -a -n -o -p tcp // 현재 사용 중인 {검색 포트 번호}만 조회 netstat -ano |findstr {port Number} // {pid 번호}에 해당하는 포트 번호 죽이기 taskkill /f /pid {want to kill pid Number} netstat: 자신의 컴퓨터와 연결된 모든 네트워크 연결을 보여주는 명령어 pid: process id(즉, 현재 실행 중인 프로세스의 고유 번호) netstat에서 자주 사용되는 옵션(-a, -n, -o) -a : 모든 포트를 표시 -n : "IP주소:포트" 형태로 보여 줌 ex) 192.168.0.100:8080 -o : PID(..
[Server] request.getParameter(), request.getRequestDispatcher(), forward(), get/setAttribute(), 스크립틀릿
처음 페이지에서 input 태그들을 통해 정보를 넘겨 받음 정보들을 받아 차곡차곡 가공하기 request.getParameter("키값") ✔️ jsp의 input 태그에서 name 속성으로 받아온 값을 문자열로 넘김 ✔️ request는 요청 시 전달값들을 뽑아서 처리하는 객체 ✔️ 뽑은 값들은 request 객체의 parameter라는 영역 안에 사용자가 입력한 값들이 key-value 세트로 담겨 있음 (사용자 기준 name-value) 나이: 키: 성별: 남자 여자 키: 좋아하는 음식(모두 고르시오): 햄버거 만두 떡볶이 샐러드 건포도라지무침 위의 jsp에서 나이는 20 / 키 170 / 성별은 여자 / 좋아하는 음식은 햄버거, 만두, 떡볶이를 선택했다면 int age = Integer.parse..
[input 태그 기본사항] text/radio/checkbox/range/select, option
input 태그 사용 시 key값은 반드시 넘겨야 함 (name 속성) 빈값으로 넘어갈 경우: 빈 문자열이 넘어감 이름: radio의 경우 같은 묶음으로 묶어 줄 경우에는 name 속성을 동일하게 지정 빈값으로 넘어갈 경우: null이 넘어감 성별: 남자 여자 checkbox의 경우 같은 묶음으로 묶어 줄 경우에는 name 속성을 동일하게 지정 (여러 개의 선택지 중에서 여러 개 선택 가능) 키: 좋아하는 음식(모두 고르시오): 햄버거 만두 떡볶이 샐러드 건포도라지무침 range로 범위를 달리 설정해서 선택할 수 있음 키: option value 값을 적지 않으면 태그 사이 값이 자동으로 value로 넘어감 서울시 경기도 강원도 충청도 경상도 전라도
[태그 사용법] 태그를 사용하여 링크 이동하는 법
1. 태그 2. 1. 버튼 onclick 속성으로 직접 링크 걸기 2. 버튼 onclick 속성으로 function 호출 후 해당 function에 링크 걸기 (보안성 향상)
[이클립스] workspace와 서버 재생성 후 환경 설정 세팅(There are no resources that can be added or removed from the server, no resources that can be added or removed from the server, localhost was unabled to start within 45 seconds)
[환경 설정] 1. workspace 재생성 🤦🏻♀️ 한글과 띄어쓰기 없는 경로로 재생성할 것 2. 서버 재생성 3. 깃허브에서 import 4. 서버와 연결해 주기 [닥친 문제 1. 서버에 올릴 수 있는 프로젝트가 없다?] 🤦🏻♀️ 프로젝트가 Dynamic Web Module로 인식되지 않아서이므로 등록해 주면 됨 There are no resources that can be added or removed from the server. 프로젝트 우클릭 - Properties - Project Facts 접속 후 Dynamic Web Module 체크 박스 (혹시 몰라 나는 Java, JavaScript까지 함께 체크해 줌) [닥친 문제 5. 한글 인코딩이 깨진다?] 🤦🏻♀️ 처음 import 해 ..
[이클립스] java.io.FileNotFoundException: ~\WebContent\WEB-INF\classes\sql\driver\driver.properties (지정된 경로를 찾을 수 없습니다)
[에러 내용] 서버 잘 돌아가고 메인 화면까지는 뜸 로그인 하니까 HTTP 상태 500 – 내부 서버 오류 뜸 학원에서 잘되던 기능이고, 내가 바꾼 거 아무것도 없이 실행만 했는데 코드 잘못일 리는 없음 driver.properties는 오라클의 정보를 담아둔 곳인데 뭐가 문제일까 하다가 구글링으로 경로에 띄어쓰기가 있다면 오류가 날 수 있다는 말을 발견 앗? 확인해 보니 workspace에 정말 띄어쓰기가 있음 [해결 방법] workspace 경로를 바꿔 주자! 실제로 D드라이브의 폴더에 넣었더니 오류 고쳐짐 근데 고치고 다시 환경 설정 세팅하는 과정에서 부딪힌 역경이 있어서 따로 정리함 여기 참고