일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 디지털하나로입학식
- 미래내일일경험
- 백틱
- 배포
- 버전생성프로세스
- 프론트엔드배포
- DIGITALHANARO
- 디지털교육
- 맥북백틱입력
- 프로젝트캠프
- 웅진씽크빅
- 부트캠프
- 개발자교육과정
- udemy
- github
- 맥북백틱
- 취준생
- 스나이퍼팩토리
- `
- 네이버로그인창만들기
- kdt
- Next.js
- s3
- 디지털하나로
- 깃허브 레포지토리와 로컬 코드 연결하기
- 유데미
- 디지털취업
- 하나은행
- 프론트엔드개발자양성과정
- Today
- Total
Land of Joe
23년 10월 26일 JSP를 이용한 백엔드 개발 본문
들어가기
- 백엔드 개발의 특징
- 코딩이 차지하는 비율이 높지 않음
- 서버 관리, 데이터베이스 구축, 그리고 프론트엔드와의 연결을 하는 백엔드 개발
- 백엔드 언어의 역할
- 프론트엔드와 데이터베이스를 연결해주는 중간 과정
- 프론트엔드의 요청을 분석해서 sql로 바꾸고, 이를 db에 전달
- db에서 온 값을 정제한 뒤 다시 프론트엔드로 돌려주는 것
- 백엔드는 수동적인 형태를 띈다.
- === http 통신은 수동적인 형태를 띈다 (http통신의 특징임: 수동적)
- 프론트엔드가 요청하면 서버가 주는 것밖에 못함
- ex) 채팅이나 알람설정 등은 http 통신이 아닌 다른 통신방법을 이용해야 한다.
- 백엔드 언어의 변천사
- 1세대 백엔드 언어: jsp, php,.net
- 2세대 백엔드 언어: node.js, spring
- 2015년까지만 해도 프론트엔드, 백엔드 단어가 없었음 (개념 및 구분이 없었음)
- 과거의 구분: 웹 퍼블리셔 & 웹 개발자
- 웹 퍼블리셔: 사실상 디자이너 (html css를 할 줄 아는)
- 웹 개발자: 이벤트를 달고, 백엔드 개발을 하는 사람
- 2세대 백엔드 언어부터의 특장점
- 백엔드가 프론트엔드에서 독립함
- 그래서! 서로에게 영향 받지 않고 알아서 개발하면 되게 되었음
- 그럼 내가 jsp 를 배우는 이유?
- 웹 개발자의 고질적인 문제인 코딩스킬 부족을 연습할 수 있음
- 과거를 아는 게 미래 발전에 도움이 된다 (역사를 잊은 자에게 미래는 없다?!!)
- 특정 이유에 의해 2세대 백엔드 언어가 나왔다는 것을 체화할 수 있음
-
JSP 언어의 특징
- 모든 1세대 언어의 특징: 백엔드 요청에 대해 return이 존재하지 않음!!!!!
- 위에서 데이터베이스 조회해서 밑에서 출력함
- 백엔드 요청을 하려면 무조건 페이지 이동을 해야함
- (리턴을 그 자리에서 받는 게 아니기 때문에)
- (백엔드 코드와 프론트엔드 코드가 한 개의 파일에 작성되어 있으니까)
- 문법이 java와 100% 동일 → 구글링 할 때 jsp로 검색하는 것보다 java로 검색하는 게 더 빠름
- 현업에서 잘 안 쓰다보니 vsc 지원이 거의 없음
- 작성한 코드 컬러링을 안 해줌
- 스파게티 코드가 되기 쉬움
- html 파일 안에 css, js 작성할 수 있음
- jsp 파일 안에 html,css,js 작성할 수 있다 → 마구잡이로 섞여질 수 있는 문제점!
- 섞어쓰지 않게 조심하고 노력해야함
- (css, js는 따로 파일 분리할 거니까 jsp, html만 섞이지 않도록 유의하면 됨)
- 모든 1세대 언어의 특징: 백엔드 요청에 대해 return이 존재하지 않음!!!!!
JSP 개발 시작!
1. 와스(톰캣)과 마리아디비가 서로를 알아보고 연결되게 해야하기 위해 그 둘을 연결하는 connector 파일을 설치한다.
커넥터 파일: "mysql-connector-java_8.0.23-1ubuntu20.04_all.deb"
2. 위에서 설치한 connector 파일을 파일질라를 이용해 서버의 HOME에 넣는다.
3. 압축파일을 푼다: sudo dpkg -i (파일명)
>> '압축 해제'와 동시에 '설치'라는 의미 >> 우분투 어딘가에 설치되어 있음! 어딘가?
4. cd / > cd usr > cd share > java 안에!
5. java 안에 있는 걸 이동해준다: lib로!
(왜? 톰캣의 외부파일 설치는 lib에, 실행파일은 bin에, 톰캣을 설정하는 것은 conf에, 코드 저장은 webapps에!!)
>> sudo mv mysql-connector-java_8.0.23.jar ~/apache-tomcat-9.0.82/lib
: (mysql-connector-java_8.0.23.jar)을 (~/apache-tomcat-9.0.82/lib)로 이동해줘
6. 파일 이동했으니까 껐다가 켜준다: bin에서!
>> cd bin
>> ./shutdown.sh
>> ./startup.sh
7. 개발환경을 세팅해준다: webapps에서!
>> cd webapps/ROOT
>> mkdir (폴더명)
>> touch (파일명.jsp)
**만약 폴더명 잘못 적었을 때 수정하기: mv week8 week7 (week8을 week7으로 바꿔라)
8. ftp-simple (원격 개발 환경) 연결한다.
ftp-simple 설치에 관한 글 ⬆️⬆️⬆️
'📚 Educations > ⏳ StageUs' 카테고리의 다른 글
23년 11월 09일 모의외주#1 요구사항 명세서, 스토리보드 (1) | 2023.12.05 |
---|---|
AWS EC2를 이용한 웹서버 생성/ mariaDB를 이용한 DB 생성 및 연결/ JSP를 이용한 백엔드 개발 (1) | 2023.11.02 |
23년 10월 19일 프로토콜, 데이터베이스 (3) | 2023.10.19 |
23년 10월 12일 AWS EC2 이용한 웹서버 생성하기 (0) | 2023.10.12 |
23년 10월 05일 Javascript-2) CreateElement, list배열 (0) | 2023.10.05 |