JSP & Servlet/개념

    JSTL core - JSTL의 기본 액션

    JSTL core - JSTL의 기본 액션

    시작하기에 앞서 EL은 JSP 자체에서 제공이 되고 있지만 jstl은 JSP 자체에서 제공이 되지 않기 때문에 반드시 톰캣 사이트에 접속하여 라이브러리를 다운받아야 한다. https://yeo-computerclass.tistory.com/179 JSTL 설치 📌JSTL 이란? JSTL은 자카르타에서 제공하는 자주 사용되는 필요한 기능들을 모아놓은 커스텀 태그 라이브러리이다. 커스텀 태그란 개발자가 직접 정의한 태그를 말하는 것으로 커스텀 태그를 만 yeo-computerclass.tistory.com JSTL core은 JSTL의 기본적인 기능들을 구현해놓은 라이브러리이다. 예를 들어 문자열을 출력하거나, 반복문, 조건문 같은 내용이 core 라이브러리에 포함되어 있다. 일단 이 라이브러리를 사용하기 ..

    [JSP] EL이란? (Expression Language란?)

    📌EL 이란? EL(Expression Language)은 JSP 스크립트 태그인 를 대신해서 ${ }로 표현식을 바꿔 JSP 값들을 좀 더 편리하게 출력하기 위해 제공되는 언어이다. 기존 EL ${hello} 기존 태그 같은 경우 태그 사이에 표현식이 표현되어 겹쳐지므로 이해하기 어려울 수가 있다. EL은 이런 단점을 보완하고 간결한 데이터 출력을 위해 제공되는 기능이다. EL에서는 변수값도 출력하지만 연산자와 내장 객체도 제공하고 있다. 연산자가 포함되어있기 때문에 연산 기능을 처리할 때도 편리하다. temp 변수를 표현할 때 ${temp} member 객체의 age를 확인할 때 ${member.age} ${member['age']} ${member["age"]} 📌EL의 내장 객체 객체 코드 ..

    JSTL 설치

    JSTL 설치

    📌JSTL 이란? JSTL은 자카르타에서 제공하는 자주 사용되는 필요한 기능들을 모아놓은 커스텀 태그 라이브러리이다. 커스텀 태그란 개발자가 직접 정의한 태그를 말하는 것으로 커스텀 태그를 만듦으로 개발 속도 혹은 개발 효율이 좋아질 수 있다. JSTL은 용도에 따라 기능이 달라지는데 크게 5가지로 나누어진다. core : 기본적인 기능들을 제공 function : 함수에 대한 기능을 제공 fmt : format의 약자로 형식화에 대한 기능을 제공 xml : XML 처리에 좀 더 편한 기능을 제공 sql : SQL처리에 편한 기능을 제공 📌JSTL 설치 JSTL은 JSP 자체에 포함되어 있는 것이 아닌 커스텀 태그 라이브러리이기 때문에 JSTL 라이브러리를 설치하여야 한다. 01. 톰캣 사이트(http:..

    MVC 패턴 (Model, View, Controller)

    MVC 패턴 (Model, View, Controller)

    📌MVC 패턴 개요 WebProgramming 카테고리에서 Servlet부분을 보면 알겠지만 처음 서블릿이 나왔을 때 클라이언트의 요청 처리를 서블릿 홀로 담당하는 올인원 방식이었다. 서블릿이 요청 데이터 처리도하고 비즈니스 로직 및 데이터 처리도 하고 결과 화면도 생성한 것이다. 이는 장점도 있지만 규모가 커지게 되거나 시스템 변경이 잦은 경우에는 오히려 유지 보수가 어려워 운영 비용이 증가하게 된다. 따라서 요즘같은 글로벌 환경에는 서블릿 홀로 담당하는 올인원 방식이 적합하지 않다. 시스템 변경이 잦은 상황에서 유지 보수를 보다 쉽게 하기 위해서는 중복 코드의 작성을 최소화하고 코드 변경이 쉬워야 한다. 이를 위해 기존 코드의 재사용성을 높이는 방향으로 설계를 해야했고 특히 객체지향의 특성을 활용하여..

    이클립스에서 DB 연동하기 (MySQL)

    이클립스에서 DB 연동하기 (MySQL)

    MySQL 데이터베이스를 이클립스와 연결해 놓으면 데이터베이스 작업을 이클립스 내에서 할 수 있으므로 편리해진다. 01. 이클립스 내 "Data Source Explorer" 뷰에 접속 후 아래 이미지에 따라 행한다. 02. [New Driver Definition] 클릭 후 생성 현재 testdb 라는 DB를 사용하기 때문에 url을 jdbc:mysql://localhost:3306/testdb 라고 수정하였다. 03. MySQL 연결 됨을 확인. 04. 사용법 SQL 파일을 생성한다. SQL 문을 작성 후 SQL문을 드래그 한다. 그 후 다음 두 가지 방법으로 SQL문을 적용할 수 있다. [마우스 우측 버튼] 클릭 후 [Execute Selected Text] 클릭 [alt]+[x] 누름 적용됨을 확인.

    [JDBC] 트랜잭션 처리

    [JDBC] 트랜잭션 처리

    트랜잭션의 역할은 DB의 모든 작업을 일관되게 처리해주는 것이다. 그럼 JSP에서 트랜잭션을 이용하여 어떻게 DB의 작업을 일관되게 처리하고, 작업 도중 발생하는 문제를 어떻게 처리하여 원점으로 되돌릴까? 트랜잭션의 명령에는 크게 COMMIT과 ROLLBACK이 존재한다. COMMIT은 처리한 작업을 모두 완료하도록 하는 명령이며 ROLLBACK은 처리한 작업을 모두 되돌리는 명령이다. 예를 들어 인터넷 쇼핑 결제를 생각해보자. 상품을 주문할 때, 주문이 제대로 이루어지기 위해서는 결제 테이블에 결제 정보가 입력되는 작업이 이루어져야 하고, 결제가 제대로 이루어지면 주문 목록 테이블에도 해당 주문 내용이 입력되어야 한다. 이 두 작업이 모두 성공해야 주문 처리가 정상적으로 되는 것이다. 하지만 만약 결제..

    ResultSet과 ResultSetMetaData (feat. 커서 이동 옵션)

    ResultSet과 ResultSetMetaData (feat. 커서 이동 옵션)

    ResultSet 예제 참고 https://yeo-computerclass.tistory.com/142?category=1269285 [JSP] JDBC 연동 (MySQL) - (2) 📌세팅 testDB에 test라는 table을 하나 생성해주었다. statementTest.jsp executeQuery(String sql) executeQuery() 메서드의 경우는 SELECT문을 실행할 때 사용된다. executeQuery() 메서드는 ResultSet 객체.. yeo-computerclass.tistory.com 📌ResultSet ResultSet이란 Statement 객체 또는 PreparedStatement 객체로 SELECT문을 사용하여 얻어온 레코드 값들을 테이블의 형태로 갖게 되는 객체이..

    Statement와 PreparedStatement의 차이점

    📌Statement Statement stmt = conn.createStatement(); stmt.executeUpdate("INSERT INTO test(id, name) VALUES (1,'여승철')"); stmt.executeUpdate("INSERT INTO test(id, name) VALUES (2,'여승철')"); stmt.executeUpdate("INSERT INTO test(id, name) VALUES (3,'여승철')"); Statement는 executeQuery()나 executeUpdate()를 실행하는 시점에 파라미터로 SQL문을 전달하는데, 이 때 전달되는 SQL문은 완성된 형태로 한눈에 무슨 SQL문인지 파악하기 쉽다. 하지만, SQL문을 수행하는 과정에서 매번 컴파일..