Java Spring

    18. 모델 구현

    18. 모델 구현

    1️⃣ DB 생성 테이블 생성 제목, 이미지, 내용, 등록 날짜와 시간으로 구성되는 뉴스 기사를 구분하기 위해 기본키로 aid 칼럼을 둘것이다. DB는 MariaDB이다. CREATE DATABASE `spring`; CREATE TABLE news ( aid INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT, title VARCHAR(50) NOT NULL, img VARCHAR(50) NOT NULL, date TIMESTAMP, content VARCHAR(50) NOT NULL ); 만든 결과는 아래와 같다. 2️⃣ News 클래스 구현 뉴스 데이터 구조를 표현하기 위한 DO 클래스이다. 테이블 구조와 일치해야한다! 하지만 화면에 보이는 날짜와 시간정보를 처리하기 위해..

    17. 뉴스기사 관리 서비스 설계

    17. 뉴스기사 관리 서비스 설계

    1️⃣ 개요 뉴스기사관리 웹 서비스를 만들어볼것이다. 뉴스 DB에 새 뉴스 등록, 조회, 삭제가 가능하게 할것이다. 전체적인 기능 구현이 목적이며, 관리자 페이지를 중심으로 설명할것이다. 이번 프로젝트에서 구현할 내용은 다음과 같다. 부트스트랩을 이용한 화면 구현 DB 연동 뉴스등록(이미지 파일 첨부를 포함) 뉴스 목록에서 등록한 뉴스 확인 뉴스 에러 처리 이번에 만들 프로젝트는 나중에 진행할 프로젝트에서 연계될 예정이니 유의하길 바란다. 2️⃣ 구조 전체 구성요소 DB 모델 뷰 컨트롤러 소스패키지 : ch10 jsp : webapp > ch10 데이터 베이스 H2는 더이상 사용하지 않겠다. 이제부턴 필자의 컴퓨터에 설치되어있는 마리아DB + HeidiSQL 조합으로 사용하겠다. 테이블 명은 news로 ..

    16. JDBC 종합 :  학생정보 조회와 등록

    16. JDBC 종합 : 학생정보 조회와 등록

    진행에 앞서 설정해줘야 할것이 있다. pom.xml에 H2데이터베이스 의존성을 추가해주자. com.h2database h2 1.4.200 test 1️⃣ 모델구현(DO) : Student Student 클래스 [src/main/java] 폴더에 ch09 패키지를 생성 후 Student클래스를 만들어주자. 그리고 아래와 같이 코딩해주자. package ch09; import java.sql.Date; //import java.util.Date; public class Student { private int id; private String username; private String univ; private Date birth; private String email; public int getId() { ..

    15. SQL : 학생정보 목록 생성

    15. SQL : 학생정보 목록 생성

    시작에 앞서 H2 데이터베이스 설치가 필요하다. https://www.h2database.com/html/main.html에 접속하여 최신 버전의 H2 DB를 내려받아 설치하자. 설치를 마치면 윈도우 시작버튼에서 H2 console 앱을 실행하자. 실행하면 웹으로 아래와같이 실행이된다. 우측 하단의 시스템 트레이에 h2 아이콘에 우클릭 해주자. Create a new database... 를 클릭해주자. 그리고 아래와 같이 입력해주자. Database path: ~/jwbookdb Username: jwbook Password: 1234 그리고 Create를 클릭하자. 그럼 DB가 생성이 된다. 이제 콘솔화면으로 돌아와 [연결 시험]을 눌러보자. 1️⃣ H2 콘솔 활용 위에서 연결시험에 성공했다면 연결을..

    14. 고급 컨트롤러 서블릿 구현

    14. 고급 컨트롤러 서블릿 구현

    여러 요청을 하나의 컨트롤러에서 처리하는 구조를 구현해볼것이다. 기본적으로 MVC구조이며, 전체 상품 목록을 보여주고 상품을 선택하면 세부 정보를 보여주도록 구현할것이다. 1️⃣ 뷰 구현: productList 뷰는 아래의 정보를 보여주는 화면으로 구성된다. 전체 상품 목록 상품의 세부 정보 상품 목록 화면 [ch08]에 productList.jsp를 새로 만들어주자. 생성된 코드는 아래와 같다. 코드를 아래와 같이 바꿔주자. 상품 목록 번호 상품명 가격 ${i.count} ${p.name} ${p.price} 상품 정보 출력 화면 [ch08]에 productInfo.jsp를 만들어주자. 생성된 코드는 아래와 같다. 코드를 다음과 같이 바꿔주자. 상품정보 조회 상품코드: ${p.id} 상품명: ${p.n..

    13. 컨트롤러 기초 : 계산기 구현

    13. 컨트롤러 기초 : 계산기 구현

    이전 글들이 HTML, JSP 기초/응용이라면 이번 글은 본격적인 MVC 패턴 시작이다. 뷰 구현 : calcForm.html, calcResult.jsp 모델 구현 : Calculator.java 컨트롤러 구현 : CalcController.java 1️⃣ 뷰 구현: calcForm [webapp] 폴더에 [ch08] 폴더를 만든 후 [ch07]의 calcForm.html을 복붙해주자. 그리고 html 내용을 다음과 같이 수정해주자. 계산기-컨트롤러 + - * / 다음으로 계산 처리 결과를 보여주는 화면 구현을 위해 calcResult.jsp파일을 만든후 아래와 같이 코딩해주자. 계산 결과-컨트롤러 결과 : ${result} 별도의 useBean이나 스크립트 요소없이 EL을 사용해 결과값을 출력. 2️..

    12. JSTL과 EL 종합 예제

    12. JSTL과 EL 종합 예제

    JSTL은 개발에 적용하기 위해서는 실제 구현된 라이브러리가 필요하다. 여러 구현 버전이 있지만 Apache Standard Taglib을 주로 사용한다. http://tomcat.apache.org/download-taglibs.cgi에 접속하여 , 을 다운로드 해주자. + EL 까지 다운로드 해주자!! 다운로드한 파일을 아파치 톰캣 라이브러리에 넣어주자. 그리고 인텔리제이로 돌아가 Ctrl + Alt + Shift + S를 누른후 Module > Dependencies > +를 눌러 의존성을 추가해주자. 이렇게 추가되면 OK를 눌러주자. 1️⃣ JSP 생성 [ch07]폴더에 jstlExam.jsp를 생성해주자. 생성된 코드는 아래와 같다. 아래와 같이 수정해주자. JSTL 종합 예제 2️⃣ , c:s..

    11. 액션 종합: 계산기 구현

    11. 액션 종합: 계산기 구현

    이전 글에서 만든 계산기를 액션 버젼으로 구현해볼것이다. 액션에 대한 설명은 다른 카테고리에 작성하겠다. MVC 패턴 구조는 아니지만 구성요소 간의 역할이 어느정도 분리되며 프로그램 요소를 JSP에서 제거했기 때문에 비교적 깔끔한 코드구조를 가지게된다. 이제 코딩을 시작하겠다. 1️⃣ 계산기 화면 구현 webapp 폴더에 ch07 폴더를 만든후 ch06의 calcForm.html을 복붙해주자. 그리고 다음과 같이 코드를 수정해주자. 계산기-useBean + - * / 2️⃣ 자바 빈 객체 생성 계산기 기능 구현을 위해서 2개의 숫자를 입력받아 계산하는 기능이 필요한데 이 기능을 JSP나 서블릿으로 구현하지 않고 별도의 클래스로 독립해서 구현한다. [src/main/java] 에서 [ch07] 패키지를 생..