docs: 프로젝트 규칙 추가 및 주소 검색 API 키 업데이트
- **규칙 추가**: `.aiassistant/rules/xit-rules.md` 신규 생성 - 프로젝트 구조, 기술 스택, 중요 규칙 및 코딩 스타일 명시 - DB 구성 및 컬럼명 규칙, 페이징 처리 순서 등 주요 가이드라인 상세 작성 - 기존 전자정부 프레임워크 활용 및 MyBatis, Apache Tiles 사용 규칙 포함 - **주소 검색 API 키 갱신**: `searchAddress.jsp` - 개발용 API 키 업데이트 (2025-08-12 ~ 2025-11-10, 사용 가능 기간 수정)dev
parent
3e3529fe3a
commit
2a3ab495cb
@ -0,0 +1,114 @@
|
||||
---
|
||||
적용: 항상
|
||||
---
|
||||
|
||||
# Project Guidelines
|
||||
|
||||
## 기본 중요 가이드
|
||||
### 한글로 대화, 한글 필수
|
||||
### junie 의 중간 진행상황도 한글로 작성해서 보여줘
|
||||
### 테스트소스는 작성 불가!!
|
||||
### 중요로직 주석 필수 (한글)
|
||||
### 각 컨트롤러 클래스에 스웨거 적용
|
||||
### 기존소스의 공백제거 등 로직에 필요없는 부분은 수정 불가!!
|
||||
### mvc 패턴, springboot + mybatis + jsp 구조, tiles 사용
|
||||
### session 보안
|
||||
### 기본적인 코딩 스타일은 noticeSample 참조 (xml, java, jsp)
|
||||
### url 은 기본적으로 <c:url/> 사용
|
||||
### 정적 리소스는 src/main/webapp/resources/css,js,xit 등등 해당 위치에 있음.
|
||||
- 모달은 src/main/webapp/WEB-INF/views/system/loginLog/list.jsp :: 로그인로그 목록 조회 페이지 참조
|
||||
- 팝업은 src/main/webapp/WEB-INF/views/system/user/auth_popup.jsp :: 팝업 호출 참조
|
||||
- 모달과 메인윈도우는 src/main/webapp/resources/xit/xit-common.css 에 css 추가
|
||||
- 팝업은 src/main/webapp/resources/xit/xit-popup.css 에 css 추가
|
||||
### 신규 sql, DDL 생성시 DB-DDL/maria/dictionary/column_word_dictionary.md, 컬럼 단어사전 무조건 참조!!
|
||||
### 단어사전에 없다면 단어사전 신규 추가!! (규칙은 무조건 지켜야함 특히, 일시->dttm, 같은 경우)
|
||||
### 시간이란 명칭의 컬럼도 LocalDateTime 일경우 일시(dttm) 으로 변경하여 저장
|
||||
### mybatis 기본적으로 camelCase 적용되어 있어 컬럼의 알리아스(별시) 별도로 사용하지 않아도 돼
|
||||
### DB 구조는 DB-DDL/maria/ddl/xitframework/*.sql 참조
|
||||
### 기본적인 key 는 시컨스를 이용, 총 20자리, 데이터약어 4자리, 시컨스포함 16자리
|
||||
```mariadb
|
||||
SELECT CONCAT('BBSN', LPAD(NEXTVAL(seq_notice_id), 16, '0'))
|
||||
```
|
||||
### paging 처리 시 controller 에서 1.totalCount 구하기, 2.setTotalCount, 3.setPagingYn 순서 중요!! 해당순서를 지켜야지만 에러 발생안함.
|
||||
```java
|
||||
// 1. 총 개수 조회
|
||||
int totalCount = excelSampleService.selectExcelSampleListTotalCount(paramVO);
|
||||
// 2. 응답 데이터 구성
|
||||
paramVO.setTotalCount(totalCount);
|
||||
// 3. 페이징 처리
|
||||
paramVO.setPagingYn("Y");
|
||||
```
|
||||
|
||||
## 2 주요 기술 및 라이브러리
|
||||
### 2.1 핵심 기술 스택
|
||||
| 기술 | 버전 | 설명 |
|
||||
|------|------|------|
|
||||
| Java | 개발: 1.8, 배포: 1.8 | 자바 개발 및 실행 환경 |
|
||||
| Spring Boot | 2.7.18 | 스프링 기반 애플리케이션 개발 프레임워크 |
|
||||
| 전자정부 프레임워크 | 4.3.0 | 한국 정부 표준 웹 개발 프레임워크 |
|
||||
| Servlet | 3.1 | 웹 애플리케이션 표준 |
|
||||
| Gradle | - | 빌드 및 의존성 관리 도구 |
|
||||
| MariaDB | - | 관계형 데이터베이스 |
|
||||
|
||||
## 2.2 주요 라이브러리
|
||||
| 라이브러리 | 버전 | 설명 |
|
||||
|------------|------|------|
|
||||
| MyBatis | 2.3.1 | SQL 매핑 프레임워크 |
|
||||
| Apache Tiles | 3.0.8 | 레이아웃 템플릿 엔진 |
|
||||
| TOAST UI Grid | 4.19.2 | 자바스크립트 그리드 라이브러리 |
|
||||
| Lombok | - | 자바 코드 생성 라이브러리 |
|
||||
| Apache Commons Text | 1.10.0 | 텍스트 처리 유틸리티 |
|
||||
| Apache POI | 5.3.0 | 엑셀 파일 처리 라이브러리 |
|
||||
|
||||
## 3. 프로젝트 구조
|
||||
### 3.1 디렉토리 구조
|
||||
```
|
||||
xit-framework/
|
||||
├── DB-DDL/ # 데이터베이스 스크립트
|
||||
│ └── maria/ # MariaDB 스크립트
|
||||
│ ├── ddl/ # 테이블 정의 스크립트
|
||||
│ └── dml/ # 샘플 데이터 스크립트
|
||||
├── src/
|
||||
│ ├── main/
|
||||
│ │ ├── java/ # 자바 소스 코드
|
||||
│ │ │ ├── egovframework/ # 전자정부 프레임워크 확장 코드
|
||||
│ │ │ └── go/kr/project/ # 프로젝트 소스 코드
|
||||
│ │ ├── resources/ # 리소스 파일
|
||||
│ │ │ ├── mybatis/ # MyBatis 설정 및 매퍼
|
||||
│ │ │ └── application.yml # 애플리케이션 설정 파일
|
||||
│ │ └── webapp/ # 웹 리소스
|
||||
│ │ ├── resources/ # 정적 리소스 (CSS, JS, 이미지 등)
|
||||
│ │ └── WEB-INF/views/ # JSP 뷰 파일
|
||||
│ └── test/ # 테스트 코드
|
||||
└── build.gradle # Gradle 빌드 스크립트
|
||||
```
|
||||
|
||||
### 3.2 패키지 구조
|
||||
```
|
||||
go.kr.project/
|
||||
├── common/ # 공통 컴포넌트
|
||||
├── login/ # 로그인 관련 기능
|
||||
│ ├── controller/ # 컨트롤러 클래스
|
||||
│ ├── mapper/ # MyBatis 매퍼 인터페이스
|
||||
│ ├── model/ # 데이터 모델 클래스
|
||||
│ └── service/ # 서비스 클래스
|
||||
└── system/ # 시스템 관리 기능
|
||||
├── auth/ # 권한 관리
|
||||
├── code/ # 코드 관리
|
||||
├── group/ # 그룹 관리
|
||||
├── menu/ # 메뉴 관리
|
||||
├── role/ # 역할 관리
|
||||
└── user/ # 사용자 관리
|
||||
├── controller/ # 컨트롤러 클래스
|
||||
├── mapper/ # MyBatis 매퍼 인터페이스
|
||||
├── model/ # 데이터 모델 클래스
|
||||
└── service/ # 서비스 클래스
|
||||
|
||||
egovframework/
|
||||
├── config/ # 프레임워크 설정
|
||||
├── exception/ # 예외 처리
|
||||
├── filter/ # 필터
|
||||
├── interceptor/ # 인터셉터
|
||||
└── util/ # 유틸리티 클래스
|
||||
```
|
||||
|
||||
Loading…
Reference in New Issue