To Do List - 기본작업

1. MYSQL 테이블 생성

  • SCHEMAS에서 DB 선택한 후 쿼리치면 그 DB안에 테이블이 생성된다.
CREATE TABLE todo ( id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, title VARCHAR(255) NOT NULL, name VARCHAR(100) NOT NULL, sequence INT(1) NOT NULL, type VARCHAR(20) DEFAULT 'TODO', regdate DATETIME DEFAULT NOW(), PRIMARY KEY (id));

image

사용자에게 DB 사용 권한 주기

  • mysql 환경 변수 등록 안했으면, mysql/bin 파일에서 cmd 실행 후 진행.

  • 환경 변수 등록했으면 그냥 cmd 후 진행.

    --cmd--
    mysql –uroot  -p
    
    --mysql--
    grant all privileges on todo.* to 'callie'@'localhost';
    -- 이 명령어가 다른 IP에서도 접속가능하게 해준다는데.. (안됐다..)
    grant all privileges on todo.* to 'callie'@'%';
    
    flush privileges;
    

2. ECLIPSE MAVEN 프로젝트 만들고 환경설정

  • Maven project - org.apache.maven.archetype - webapp => Group Id, Artifact Id 넣기

image

메이븐 환경 설정

  • pom.xml 파일에서 dependencies를 아래와 같이해준다.
    • mysql 버전 5.1.46
    • javax.servlet 버전 3.1.0
    • jackson.core 2.9.4 버전
    • junit 3.8.1 버전
<dependencies>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.46</version>
    </dependency>
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.9.4</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>
</dependencies>
  • pom.xml 파일에서 failOnMissingWebXml를 false로 해준다.
  • 그리고 test폴더 지워줌(오류떠서) 왜 오류뜨지?
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
    <failOnMissingWebXml>false</failOnMissingWebXml>
</properties>
  • project faucet에서
    • java 1.7
    • Dynamic Web Module 3.1
  • 설정 바꾸고, 빨간 아이콘이 뜬다면, 폴더 - 우클릭 - maven - update project를 눌러줘본다. 되면 럭키 안되면 말고.

3. 생성할 파일들 - OVERVIEW

image

JAVA 파일

  1. DB의 한 ROW에 들어간 정보를 객체로 나타내기 위해 VO(Value Object) 생성 - Task.java
  2. doGet, doPost, doUpdate, doDelete메소드를 사용해 webAPI로 알맞게 사용할 수 있는 서블릿 파일 세개 - taskById.java , register.java, arc.java
  3. mySQL에 접속해 CRUD를 수행하는 DAO(Data Access Object) 생성 - TaskDao.java

JSP 파일

  1. main.jsp : 목표들을 보여줄 화면 , 뒷작업은 taskById.java가 수행.

    image

  2. write.jsp : 목표 작성할 때의 화면 , 뒷작업은 register.java가 수행.

    image

  3. archive.jsp : 목표 다 끝내면 저장하는 화면 ,뒷작업은 arc.java가 수행.

    image


© 2018. All rights reserved.

Powered by Hydejack v8.5.2