'분류 전체보기'에 해당되는 글 85건
- 2010.03.18 Toad 토드 글꼴 설정
- 2010.03.12 개발 순서 1
- 2010.03.12 spring 와 struts2 의 연동
- 2010.03.09 팬션 DB
- 2010.03.09 이클립스 스프링 설치 및 라이브러리 추가
- 2010.02.26 이클립스 스트럿츠2 properties Editor 설치
- 2010.02.23 DOM API
- 2010.02.17 이클립스 ibatis 설치
1. 프로젝트 생성
2. library 복사 (struts2, spring, ibatis, jstl)
3. src/struts.xml, src/struts.properties 파일 생성
4. WEB-INF/applicationContext.xml 파일 생성
5. WEB-INF/web.xml에 struts2, spring 설정 추가
6. META-INF/context.xml 파일 생성
7. action, dao, vo, service 패키지 생성
8. dao 패키지에 ibatis 매핑 파일 생성, WEB-INF/SqlMapConfig.xml 파일 생성
9. WEB-INF/applicationContext.xml에 dataSource 빈 생성, sqlMapClient 빈 생성
10. VO 객체, Dao 인터페이스, Service 인터페이스 생성
DaoImp 구현 클래스 생성
SqlMapClientDaoSupport 상속, Dao 인터페이스 implements
ServiceImp 구현 클래스 생성
Service 인터페이스 implements
Dao 구현 클래스를 저장할 변수 선언, setter 메서드 구현
11. WEB-INF/applicationContext.xml에
DaoImp 빈 생성 --- SqlMapClient 주입
ServiceImp 빈 생성 --- DaoImp 주입
설정이 완료 되면 12번부터 반복
12. ibatis 매핑 파일에 쿼리 설정
Dao 인터페이스에 메서드 선언
DaoImp 구현 클래스에 쿼리 실행용 메서드 구현
13. Service 인터페이스에 메서드 선언
ServiceImp 구현 클래스에 서비스 제공용 메서드 구현
14. XXXAction 구현
Service 구현 클래스를 전달받을 변수 선언, setter 생성
parameter값을 저장할 변수 선언, getter/setter
view에 전달할 값을 저장할 변수 선언, getter/setter
execute()메서드 구현
15. WEB-INF/applicationContext.xml에
XXXAction 빈 설정 --- Service 구현 인터페이스 주입
16. 뷰 페이지 생성
17. src/struts.xml에 url-액션-리절트 매핑
18. 웹브라우져에서 url 입력해서 확인
웹 개발 유용 태그
## 입력폼에 한글변환 금지, 붙여넣기 금지
ex)
<input name="" type="" style="ime-mode:disabled" onPaste="return false;">
add)
1. 영문만 입력가능 : style="ime-mode:disabled"
2. 한/영중 선택가능 : style="ime-mode:auto"
3. 디폴트 한글 : style="ime-mode:active"
4. 디폴트 영문 : style="ime-mode:inactive"
## 주소 안보이게 링크 onclick stype="cursor:hand" (IE용)
ex)
<a onclick="location.href='주소';" style="cursor:hand"> </a>
## 정규식 이용 input box에 숫자만 입력받기
ex)
function SetNum(obj){
val=obj.value;
re=/[^0-9]/gi;
obj.value=val.replace(re,"");
}
onkeyup='SetNum(this)' onblur='SetNum(this)'
## input box에서 엔터처리
ex)
onKeypress="javascript:if(event.keyCode==13) SearchIt();"
## 세자리에 콤마 찍는 스크립트
ex)
// 화폐단위 , 스크립트
function addcomma(str){
var len = str.length;
var s1 = "",s2 = "";
if(len <= 3)
return str;
else{
for(i = len-1 ; i >= 0; i--)
s1 += str.charAt(i);
for(i = len-1 ; i >= 0; i--){
s2 += s1.charAt(i);
if(i % 3 == 0 && i != 0) s2 += ",";
}
document.write(s2);
return s2;
}
}
## TD 라인제어
예)
<td style="word-break:break-all"> ☞ 정해진 TD 사이즈에 맞춰 개행됨
<td nowrap> ☞ 개행없이 모두 표시함
100315
lib
WebContent/WEB-INF/lib 파일들
WebContent/WEB-INF
WebContent/WEB-INF 파일들
WebContent/META-INF
Java Resources:src
struts2 라이브러리 추가
struts-2.1.8.1\apps\struts2-blank-2.1.8.1\WEB-INF\lib
struts2와 spring 연동 플러그인 라이브러리 추가
struts-2.1.8.1-all\struts-2.1.8.1\lib
spring 라이브러리 추가
spring-framework-2.5-rc2-with-dependencies\spring-framework-2.5-rc2\dist
struts2 xml 설정 파일 추가하기
struts-2.1.8.1-all\struts-2.1.8.1\apps\struts2-blank-2.1.8.1\WEB-INF\src\java
spring
applicationContext.xml
생성하기
applicationContext.xml
이라고 꼭 적어줘야 한다.
예시..
context.xml
파일 생성
context.xml
적어야할 내용
struts2와 스프링 연동을 위한
struts.properties
파일생성
struts.properties
내용
ibatis 라이브러리 추가
ibatis xml파일 추가
context.xml
이라고 적어준다.
context.xml 예
Account.xml
SqlMapConfig.xml
파일 등록
SqlMapConfig.xml
web.xml 설정
SqlMapClient.xml
의 맵퍼 파일 등록
create sequence cus_seq;
create sequence review_seq;
create sequence image_seq;
create sequence writeNo_seq;
create sequence map_seq;
create sequence ad_seq;
create suquence bug_seq;
drop table localInfo;
create table localInfo(
localInfo_no number(5),
localInfo_name varchar2(50),
localInfo_addr1 varchar2(100),
localInfo_addr2 varchar2(100),
localInfo_tel1 varchar2(20),
localInfo_tel2 varchar2(20),
localInfo_tel3 varchar2(20),
localInfo_phone1 varchar2(20),
localInfo_phone2 varchar2(20),
localInfo_phone3 varchar2(20),
localInfo_contents clob,
localInfo_imgName varchar2(50),
localInfo_x varchar2(20),
localInfo_y varchar2(20),
regdate Date
);
drop table cus;
create table cus(
cus_no number(5) constraint cus_no_pk primary key ,
cus_id varchar2(30),
cus_name varchar2(30),
cus_pw varchar2(30),
cus_cn varchar2(30),
cus_cf varchar2(30),
cus_nickName varchar2(30),
cus_addr varchar2(100),
cus_sex varchar2(10),
cus_tel varchar2(20),
cus_phone varchar2(20),
cus_email varchar2(100),
cus_birth varchar2(100),
cus_regdate date
);
create table review(
re_no number(11) constraint re_no_pk primary key,
re_writeno number(5),
re_writer varchar2(30),
re_contents clob,
re_regdate date,
re_title varchar2(500)
) ;
drop table bug;
create table bug(
bug_no number(5),
bug_name varchar2(80),
bug_mail varchar2(80),
bug_address varchar2(100),
bug_subject varchar2(80),
bug_content clob,
bug_imgname varchar2(80),
regdate date
);
실행문 : http://localhost/stay/stay.action
dao, vo, service 이름의 형식을 통일했음.
되던게 안될 경우 변수 이름 확인하공, 스트럭처, 맵퍼, 어플리케이션 id, name 안겹치도록 할 것!!
스프링 사이트 http://www.springsource.com/
스프링 다운로드 사이트 http://www.springsource.com/download/community
spring-framework-2.5-rc2-with-dependencies\spring-framework-2.5-rc2\dist
spring-framework-2.5-rc2-with-dependencies\spring-framework-2.5-rc2\lib\jakarta-commons
개발 환경 다운로드
http://www.springide.org/blog/
다운로드후 플러그인 설치
스프링 개발 환경 설치 spring-ide
이클립스에 플러그인 설치
이클립스가 꺼진 상태에서 이클립스 설치 폴더에 복사 할것
spring-ide_updatesite_2.2.0_v200809261800\features -> eclipse\features
spring-ide_updatesite_2.2.0_v200809261800\plugins -> eclipse\plugins
spring-ide_updatesite_2.2.0_v200809261800\features -> eclipse\features
http://propedit.sourceforge.jp/eclipse/updates/
를 복사
http://propedit.sourceforge.jp/eclipse/updates/
붙여 넣기
PropertiesEditor 선택
Document의 메서드 | |
메서드 명 | 설명 |
getElementById(id명) | 주어진 값에 해당하는 ID 속성값을 가진 엘리먼트 하나를 반환한다. 존재하지 않으면 null을 반환 |
getElementsByTagName(tag명) | 지정된 tag명에 해당하는 모든 엘리먼트를 포함한 NodeList를 반환한다. |
Node와 Element의 properties | |
프로퍼티 명 | 설명 |
childNodes | 해당 엘리먼트의 모든 자식노드들을 포함한 NodeList를 반환한다. |
firstChild | 해당 엘리먼트의 첫 번째 자식 노드를 반환한다. |
lastChild | 해당 엘리먼트의 마지막 자식 노드를 반환한다. |
parentNode | 해당 엘리먼트의 부모 노드를 반환한다. |
tagName | 해당 엘리먼트의 tag 명을 반환한다. |
nodeValue | 해당 노드의 텍스트를 반환한다. |
Node와 Element의 메서드 | |
메서드 명 | 설명 |
appendChild(새로운 노드) | 해당 엘리먼트에 새로운 자식노드를 맨 마지막에 추가한다. |
hasChildNodes() | 해당 엘리먼트가 자식노드를 가지고 있는지 여부를 boolean값으로 반환한다. |
insertBefore(새로운 노드, 자식노드) | 해당 엘리먼트이 특정 자식노드 앞에 새로운 노드를 추가한다. |
removeChild(자식노드) | 해당 엘리먼트의 특정 자식노드를 삭제한다. |
replaceChild(새로운 노드, 자식노드) | 해당 엘리먼트의 특정 자식노드를 새로운 노드로 대체한다. |
NodeList의 properties | |
프로퍼티 명 | 설명 |
length | NodeList에 포함된 노드의 개수를 반환한다. |
NodeList의 메서드 | |
메서드 명 | 설명 |
item(인덱스) | NodeList에서 지정된 index에 해당하는 노드를 반환한다. |
아파치 홈페이지로 간후 http://www.apache.org
iBatis를 다운로드 한다.
다운로드가 완료되면