프로그래밍(81)
-
[Intellij] JSP Web Project 생성 세팅(Tomcat 연동)
* 실습환경 intellij Ultimate , mac ventura os 13.3.1를 기준으로 작성됨. * intellij, JSP, Tomcat을 이용해 간단하게 web개발 실습을 하는 초보자에게 도움이 될만한 글임.(DB연동 x) * 나를 비롯한 초보자를 위해 A부터 Z까지 상세하게 서술하는 글이니 특정 정보를 얻고자 방문한 분은 시간낭비할 확률이 높음. * 또한 단순히 방법론적인 정보 전달 측면의 글이 아닌 어떤 이유로 이러한 과정을 거치는지에 대해 아는 만큼 서술할 예정. * 이 글을 보시는 분들도 단순히 따라하면서 프로젝트를 만들고 실습환경을 세팅하는데에 급급하기보다 공부하는 차원에서 보셨으면 함. 1. intellij로 Web Project를 생성하게 된 계기 : 기존에 eclipse로 J..
2023.06.20 -
[JSP] JSP란 무엇인가(feat.Servlet과 차이점?)
1. JSP(Java Server Page)란 무엇인가? JSP는 HTML언어를(HTML, CSS, JavaScript) java코드를 기반으로 작성하게끔 도와주는 프로그램 언어이다. 언어라고해도 크게 다를 건 없고 기존의 HTML언어와 java언어를 사용하되 몇가지 표현법(expression)을 이용하는 것이다. 즉 JSP는 간단하게 말하면 파일의 확장자는 .jsp를 기반으로 한 파일위에 java code를 얹을 수 있게 해주는 언어인 것이다. 2. JSP 태그종류와 사용방법 JSP 태그를 어떻게 사용하는지 잘 보여주는 Reference Code이다. 태그에는 일반적인 java태그를 작성하는데 여기에서 작성된 java code는 홈페이지 상으로 노출되지 않는다. 홈페이지에 값 혹은 문자열같이 변수를 나..
2023.06.14 -
[Java] 백준 입력값 받는 법(BufferedReader, next())
1. 백준 코딩테스트 입력값 받는 법 백준 코딩테스트를 준비하려고 하는데 기존에 프로그래머스에서 진행하던 방식과는 입출력 방식이 조금 다른 형태라 당황했다. 우선 간단하게 정리하자면 백준에 답안을 제출할때는 다음과 같은 형식을 지켜야한다. 1. 클래스의 이름은 Main클래스, 이외에 package 경로는 없어야한다. 2. 입력값이 주어진다고 하는 문제가 대부분인데 이 때 Scanner 혹은 BufferedReader를 통해 입력값을 받아야 한다. 뿐만 아니라 입력값이 첫 째줄에 띄어쓰기로 들어오느냐 개행 후 별개로 들어오느냐에 따라 처리방식이 달라진다. 현재까지는 다음과 같은 규칙들만 확인한 상태이다. 1번 규칙같은 경우는 쉽게 적용시킬 수 있으나 2번의 경우 초급자에게는 조금 난해할 수 있다. 백준에서..
2023.06.13 -
[Git] Git 다른 브랜치에서 pull 하기
같은 remote에 서로 다른 branch가 있다고 했을 때 branch에 내용은 서로 다를 것이다. 이 때 다른 branch에 commit하기 위해서는 remote 저장소에 있는 것을 당겨오는 pull을 진행해야 하는데 pull이 되지 않는다. 우선 기본적인 git의 pull 조건은 다음과 같다. 현재 local 저장소(staging area를 뜻한다.내 컴퓨터의 저장소를 뜻하는 것이 아님. add한 상태가 staging area에 변경사항이 올라간 것) 보다 remote 저장소에 추가 commit 내용이 있을 경우 -> 이 때 remote에만 변경사항이 있을 수 있고 local과 remote 둘다 변경사항이 있을 수 있다. local만 변경사항이 있는 경우는 문제되지 않는다. 그냥 push가 가능. ..
2023.05.26 -
[MySQL] group by에서 최대값을 가진 row들을 가져오기
테이블에서 최대값을 구하기 위해서는 집계함수를 써야 하는데 이 때 집계함수는 select문에서 사용 가능하다. 최대값만 가져오는 건 쉽지만 최대값을 가진 row를 불러오는 것은 또 다른 문제이며 group by에서 여러개의 그룹에서 각 column에 해당하는 최대값 row들을 불러오는 것은 또 다른 문제이다. 쉬운 것부터 확인해보자 1. 특정 column에서 최대값을 가진 table의 row 가져오기 다음과 같은 테이블이 있을 때 가장 비싼 가격을 가진 물건을 가진 id와 물건의 이름을 가진 row를 가지고 오고 싶다면 어떻게 해야할까? 1. 서브쿼리를 사용하던지 2. 가격을 내림차순으로 정렬한 후 첫번째 row를 가지고 오면된다. # 1번 방법 select * from post1 where price ..
2023.05.26 -
[MySQL] foreign key(외래키) 사용법
MySQL에서는 제약 조건이라는 것이 있다. 데이터를 저장할 때 특정 조건에 해당하는 데이터만 레코드에 집어넣을 수 있게 설정하는 것이다. 대표 제약 조건으로 NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, DEFAULT가 있다. 여기서는 주제에 맞게 FOREIGN KEY만 다루겠다. FOREIGN KEY는 여러 테이블에 서로 공통된 값을 참조할 수 있도록 도와준다. table1과 table2가 있을 때 table1에서의 id값을 다른 테이블에서도 사용하고 싶을 수 있다. 예를 들어 다음과 같이 테이블이 있다고 해보자. 이 때 table1의 id1값을 table2에서 참조하고 싶어한다. 즉 table2의 id(id2)값은 외래키로 지정하고 싶다면 위와 같이 작성한다. tab..
2023.05.26