카테고리 없음
VO, DTO, Maven 설정,jar,war_210525(화)
docc
2021. 7. 25. 12:42
DAO( Data Access Object ) v.s DTO ( Data Transfer Object )
DAO : 객체 ( 지금까지 한 방법, getter&setter 사용 )
DTO : 전송되는 데이터의 컨테이너이다. ( 전송만을 목적으로 객체지향은 관계 없이 데이터를 요구에 맞게 그냥 짜맞춘 방법 )
DAO 는 객체. 즉 주로 java 를 사용하는 곳에서만 호환가능(객체지향 프로그램만) | ||
DTO 는 값 덩어리이니 서로 다른 시스템, 다른 회사끼리 호환가능 |
VO v.s DTO ( Data Transfer Object )
VO ( Value Object ) : 데이터 그 자체로 의미 있는 것을 담고 있는 객체이다.
// ex) DB 연결할 때 DB의 열값을 그대로 멤버변수로 만들어 놓은 클래스
- DTO와 동일한 개념이나 차이점은 Read–Only 속성 객체이다.
- 간단한 독립체( Entity )를 의미하는 작은 객체를 의미한다.
- 관계데이터베이스의 레코드에 대응되는 자바클래스이다.
VO와 비교를 하여 보면 DTO는 같은 시스템에서 사용되는 것이 아닌 다른 시스템으로 전달하는 작업을 처리하는 객체이다.
Maven project
1. next 하다가 Select an Archetype 나오면 위에 all category 한번 눌렀다 때기
2. 검색창에 simple 검색 - > Artifact Id 열에 'simple-webapp-archetype' 선택 후 next
3. Group Id : com_stone
Artifact Id : board3_maven
하고 finish
Maven? | ||
프로젝트 관리 - 빌드 - 라이브러리 관리 (.jar) |
||
app 용이였던 Dynamic project와 달리 범용으로 사용가능 프로젝트를 가져올 때 마다 사용한 라이브러리 등을 다 가져와야 하는데 Maven 은 모든 라이브러리등들을 다 가져오게 해줌 |
||
전 버전 : ANT |
pom.xml | ||
맨위 태그들에 내가 설정한 Groug Id, Artifact Id 보임 | ||
<packaging> : 파일들을 어떤 형식으로 만들지 | ||
<dependencies> : jar 들을 넣는 코드부분 ( 여기에 jar코드들을 넣으면 다운로드 받지 않고도 사용가능해진다// jdbc도 다운안해도됨) 다운받은 library는 Java Resources > Libraries > Maven Dependencies 에 들어가 있다. |
||
<dependency> : 하나의 jar 파일들 | ||
<build> : 여기서 파일들(java, jsp, html 등등) 을 .war 파일로 packaging(만들어줌)해 줌 |
src 폴더 탐색 | ||
main -> webapp : jsp 파일등을 만들곳 ( WEB-INF 이 하단에 있는 폴더가 가능한 것 이름바꾸면 안된다. 상위폴더인 webapp의 이름은 달라도 된다) |
Java Resources 폴더 탐색 | ||
src/main/java 에 'com_store.board3_mave' 를 규격으로 하위에 패키지를 만들어 java 파일을 만들면 된다. (기본으로 만들어져있는 애들 지워도됨) ex) com_store.board3_mave.boardmanage |
>> pom.xml 설정
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.stone</groupId>
<artifactId>board3_mave</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>app1</name>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
</dependencies>
</project>
다하면 export 로 .war 파일로 만들어보기
WAR(Web application ARchive) | ||
웹 애플리케이션 아카이브) 파일은 소프트웨어 공학에서 자바서버 페이지, 자바 서블릿, 자바 클래스, XML, 파일, 태그 라이브러리, 정적 웹 페이지 (HTML 관련 파일) 및 웹 애플리케이션을 함께 이루는 기타 자원을 한데 모아 배포하는데 사용되는 JAR 파일이다. |
JAR(Java Archive, 자바 아카이브) | ||
여러개의 자바 클래스 파일과, 클래스들이 이용하는 관련 리소스(텍스트, 그림 등) 및 메타데이터를 하나의 파일로 모아서 자바 플랫폼에 응용 소프트웨어나 라이브러리를 배포하기 위한 소프트웨어 패키지 파일 포맷이다. |