Development Log
[eGovFram] Template Project 생성 및 DB 설정 본문
1. Simple Homepage 프로젝트 생성
- 단순 홈페이지 기능 구현시 필수적인 부분만 사용 가능하도록 경량화 된 실행환경을 제공한다.
- 메인페이지, 사용자관리, 공지사항 관리, 게시판 관리, 안내 관리 기능을 제공한다.



패키지 구조


egovframework:com:v2:init_deploy_file [eGovFrame]
배포파일을 구성할 때에 패키지간의 종속성과 업무적 연관성을 포함하여 구성하였다. 한 개의 배포파일은 독립적으로 설치하여 동작할 수 있으며, 2개 이상의 배포파일을 설치할 때에는 환경설
www.egovframe.go.kr
2. Servers 추가 (Apache Tomcat)



서버 포트 수정
- 톰캣은 기본적으로 8080포트를 이용해 통신을 수행한다.
- 접근의 편의성을 위해서 80포트를 사용한다.
8080포트와 80포트의 차이
| 8080 포트 | http://localhost:8080/sht_webapp/cmm/main/mainPage.do |
| 80 포트 | http://localhost/sht_webapp/cmm/main/mainPage.do |
80포트는 http의 기본 포트이므로 접속시에 :80이 필요없다. (즉, 생략이 가능하다.)
※ https의 기본 포트는 443이다.


80포트로 설정했을 때, 정상적으로 동작하지 않는 이유
- 보안의 문제로 리눅스, 유닉스는 1024 이하의 포트들은 일반 유저 권한에서 바인딩 할 수 없도록 되어있다.
- root권환으로 구동되게 한다면 80포트에 바인딩하여 통신이 가능하다.
- 톰캣서버는 웹을 이용한 해킹을 방지하기 위해 구동시 tomcat 유저 권한으로 구동한다.
- tomcat 유저 권한으로 동작하는 톰캣 서버는 공격을 받아도 tomcat 유저 권한에 해당하는 부분까지만 접근 가능하기 때문에 root 권한으로 구동되는 것보다는 안전하다고 할 수 있다.
- 이럴경우 포트 포워딩을 통해 해결한다고 한다.
TCP/UDP의 포트 목록 - 위키백과, 우리 모두의 백과사전
잘 알려진 포트(well-known port)는 특정한 쓰임새를 위해서 IANA에서 할당한 TCP 및 UDP 포트 번호의 일부이다. 일반적으로 포트 번호는 다음과 같이 세 가지로 나눌 수 있다. 0번 ~ 1023번: 잘 알려진 포
ko.wikipedia.org
Path 수정

3. DB 설정
[ pom.xml ]
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.16</version>
</dependency>
[ globals.properties ]
# G4C 연결용 IP (localhost)
Globals.LocalIp = 127.0.0.1
# DB서버 타입(mysql,oracle,altibase,tibero) - datasource 및 sqlMap 파일 지정에 사용됨
Globals.DbType = mysql
Globals.UserName=사용자 입력
Globals.Password=암호 입력
# mysql
Globals.DriverClassName=net.sf.log4jdbc.DriverSpy
Globals.Url=jdbc:mysql://127.0.0.1:3306/데이터베이스명
[ context-datasource.xml ]
<!-- mysql 제외하고 주석 -->
<!-- hsql -->
<!-- <jdbc:embedded-database id="dataSource-hsql" type="HSQL">
<jdbc:script location= "classpath:/db/shtdb.sql"/>
</jdbc:embedded-database> -->
<!-- <bean id="dataSource-hsql" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="net.sf.log4jdbc.DriverSpy"/>
<property name="url" value="jdbc:log4jdbc:hsqldb:hsql://localhost/sampledb"/>
<property name="username" value="sa"/>
</bean> -->
<!-- mysql -->
<bean id="dataSource-mysql" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${Globals.DriverClassName}"/>
<property name="url" value="${Globals.Url}" />
<property name="username" value="${Globals.UserName}"/>
<property name="password" value="${Globals.Password}"/>
</bean>

전자정부 프레임워크 - simple homepage Mysql로 변경
전자정부 프레임워크의 Simple homepage는 default로 hsql로 되어있다. 이것을 mysql로 바꾸려면 기존 hsql로 되어있는 설정을 mysql로 바꾸면 된다. (hsql의 GlobalsDriverClassName, Blobals.Url 은 지우거나 주..
nobang.tistory.com
'성장 여행기 > eGovFrame' 카테고리의 다른 글
| [eGovframe] JSESSIONID (0) | 2022.04.04 |
|---|---|
| [eGovFrame] 전자정부 표준프레임워크 설치, 이클립스 실행 (0) | 2022.04.03 |