본문 바로가기

전체 글61

MySQL 기초 정리 root 계정으로 DBMS에 접속:mysql -uroot -p Database 생성:mysql> create database DB이름;예) create database connectdb; Database 사용자 생성 및 권한 부여:(MySQL 5.x)mysql> grant all privileges on db이름.* to 계정이름@'%' identified by '암호’;mysql> grant all privileges on db이름.* to 계정이름@'localhost' identified by '암호’;mysql> flush privileges; (MySQL 8.x)mysql> create user '계정이름'@'%' identified by '암호';예) mysql> create user 'conn.. 2018. 7. 3.
EL(Expression Language)과 JSTL(JSP Standard Tag Library) EL(Expression Language)이란? Expression Language(표현 언어)는 값을 표현하는 데 사용되는 스크립트 언어로, JSP의 기본 문법을 보완하는 역할을 한다. JSP에는 Java 코드와 markup 요소들이 섞여있다. 그러다보니 프론트엔드 개발자, 디자이너들도 쉽게 볼 수 있는 코드에 대한 needs가 있었고, 프론트엔드와 백엔드 사이에 어떻게 하면 효율적으로 일들을 나눌 수 있을 것인가라는 고민이 있었다.이를 위해 Java 코드보다 더 간단하고 직관적으로 사용할 수 있는 형태로 나온 것이 EL이다. EL이 제공하는 기능들은 다음과 같다.JSP의 스코프(scope)에 맞는 속성 사용 각 scope의 변수들을 손쉽게 사용할 수 있다.(Framework에서 제공하는)집합 객체에 .. 2018. 7. 1.
Servlet & JSP의 4가지 Scope Servlet과 JSP를 개발하다보면 변수를 많이 다루게 된다. 변수를 어떤 범위 내에서 사용하기 위해서는 스코프(scope)라는 것에 대해서 알아야 한다. 위의 그림처럼, Servlet과 JSP에서는 Page, Request, Session, Application의 4가지 Scope이 있다. 1) (JSP) Page scope실제 선언된 JSP 페이지 내에서만 사용할 수 있는 것. 페이지 내에서 지역변수처럼 사용. PageContext 추상 클래스를 사용한다. JSP 페이지에서 pageContext라는 내장 객체(Implicit Object)로 사용 가능하다. 다른 것 필요 없이, pageContext이름.setAttribute(), pageContext이름.getAttribute() 등의 방법으로 바.. 2018. 7. 1.
Forward, 그리고 Servlet & JSP의 연동 Forward란? 1. 웹 브라우저에서 Servlet1에게 요청을 보냄2. Servlet1은 요청을 처리한 후, 그 결과값을 HttpServletRequest에 저장. (Servlet1이 모든 일을 혼자 처리하지 않는다)3. Servlet1은 결과가 저장된 HttpServletRequest와, 응답을 위한 HttpServletResponse를 같은 웹 어플리케이션 안에 있는 Servlet2에게 넘겨준다 (⇒ forward)4. Servlet2는 Servlet1으로 부터 받은 HttpServletRequest와 HttpServletResponse를 이용하여 요청을 처리한 후, 웹 브라우저에게 결과를 전송물론 여기서 forward를 꼭 Servlet과 Servlet 사이에서만 할 수 있는 것은 아니다! 뒤에.. 2018. 6. 30.
Redirect Redirect는 HTTP 프로토콜로 정해진 규칙이다.서버는 클라이언트의 요청에 대해 특정 URL로 이동을 요청할 수 있다. 이를 Redirect라고 한다.서버는 클라이언트에게 HTTP 상태코드(Status Code) 302로 응답하는데 이때 헤더 내 Location 값에 이동할 URL 을 추가한다. 클라이언트는 redirection 응답을 받게 되면 헤더(Location)에 포함된 URL로 재요청을 보내게 된다. 이때 브라우저의 주소창은 새 URL로 바뀌게 된다.Servlet이나 JSP는 Redirect하기 위해 HttpServletResponse 클래스의 sendRedirect() 메소드를 사용한다. 예제 코드를 통해 살펴 보자.먼저 redirect01.jsp라는 파일을 아래와 같이 만들었다. res.. 2018. 6. 29.
JSP 기초 선언문(Declaration) - - 선언문은 JSP 페이지 내에서 필요한 멤버변수나 메소드가 필요할 때 선언해 사용하는 요소 스크립트릿(Scriptlet) - - 가장 일반적으로 많이 쓰이는 스크립트 요소 - 주로 프로그래밍의 로직을 기술할 때 사용 - Scriptlet에서 선언된 변수는 지역변수 - Scriptlet 안에 있는 것들은 출력 결과에는 포함되지 않는다. 표현식(Expression) - - JSP 페이지에서 웹 브라우저에 출력할 부분을 표현 (즉, 화면에 출력하기 위한 것) - Scriptlet 내에서 출력할 부분은 내장 객체인 out 객체의 print() 또는 println() 메소드를 사용해서 출력 (☚ JSP; 표현식)out.print(total) (☚ Servlet) 서로 같다. J.. 2018. 6. 29.
Servlet 기초 Servlet이란, Java 웹 어플리케이션의 구성요소 중, 동적인 처리를 하는 프로그램의 역할을 한다. 즉 Servlet은 - WAS에서 동작하는 Java 클래스이다. - HttpServlet 클래스를 상속받아야 한다. - 웹 페이지를 개발할 때 Servlet과 JSP를 조화롭게 사용하여 최상의 결과를 얻을 수 있다. Servlet 작성 방법 @WebServlet("/LifecycleServlet")public class LifecycleServlet extends HttpServlet { private static final long serialVersionUID = 1L; // Constructor: 해당 서블릿 클래스를 메모리에 올림 public LifecycleServlet() { // Syst.. 2018. 6. 29.
[Javascript] Global 변수, Global 함수가 좋지 않은 이유 Javascript에서(다른 언어에서도 마찬가지지만), 변수나 함수를 전역 범위에서 선언하는 것은 두 가지 이유로 인해 권장하지 않는다. 1. Tight coupling2. Name collisions Tight Coupling Tight coupling이란, 각각의 코드들이 서로 지나치게 의존적인 상황이 되는 것을 말한다. coupling이란 두 아이템의 쌍이 함께하는 것을 뜻하는데, 즉 tight coupling은 서로 다른 두 묶음의 코드들이 서로 의존적이어서 어느 한 쪽에 의도치 않은 변화를 일으키는 상황을 뜻한다. var instructor = 'Richard'; function richardSaysHi() { console.log(`${instructor} says 'hi!'`);} 위의 코드.. 2018. 6. 26.