root-content : DB 연결을 위한
[DB 연동을 위해 해야하는 작업]
1) Dependency 추가 : 5개
2) 한글 필터 설정 : web.xml에서 설정!
3) db properties을 src/main/resources
4) mybatis
5)
root-content
<!-- db.properties 읽어오기 -->
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>classpath:db.properties</value>
</property>
</bean>
<!-- db.properties의 설정 값을 읽어서 setting -->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${user}" />
<property name="password" value="${password}" />
</bean>
<!-- 트랙잭션 관리를 위한 빈설정 -->
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<!-- sqlSessionTemplete -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:mybatis-config.xml" />
</bean>
<!-- sqlSession -->
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" name="sqlSessionFactory"
ref="sqlSessionFactory" />
</bean>
**테이블 생성 (guestbook.sql)
sequence 번호 : guestbooknum pk number
이름 : writer nn varchar
비밀번호 : password nn varchar
글 내용: text nn varchar
글 작성날짜 : regdate default sysdate
SQL 쿼리문
DROP TABLE guestbook;
DROP SEQUENCE guestbook_seq;
--글 저장을 위한 테이블
CREATE TABLE guestbook
(
guestbooknum number primary key, -- 글 번호
writer varchar2(20) not null, -- 작성자
pwd varchar2(20) not null, -- 삭제 시 사용될 비번
text varchar2(2000) not null, -- 글 내용
regdate date default sysdate -- 글 작성 날짜
);
--글 일련번호에서 사용할 시퀀스
CREATE SEQUENCE guestbook_seq;
--글 저장 예
INSERT INTO guestbook
(guestbooknum, writer, password, text)
values
(guestbook_seq.nextval, '홍길동', '1111', '글 내용입니다.');
오라클이 실행되는지부터 확인
[2교시]
테이블 생성 후 VO클래스 생성
**Guestbook.java VO
@Data
public class Guestbook{
}
**GuestbookMapper.java Interface
public int insert(Guestbook guestbook);
public List<Guestbook> select();
public int delete(Guestbook guestbook);
이름 변경
가 나와야함
글쓰는 화면을 요청
아래와 같이 떠야한다.
오류떠서 수정함
required= "required"
데이터를 입력하지 않았을때 입력하라고 뜸
아래와 같이 한글이 깨져서 나오면 안된다.
new는 강결합이기 때문에 권장하지 않는다.
컨트롤러에서 다오로 간다고 하면 강결합을 하지 않고 스프링에서 생성해 던져주는, 또 던져달라고 요청한다.
스프링에서는 new를 사용하지 않고(강결합no), @Autowired 사용
IoC: 제어의 역행, 남이 만들것을 쓴다. 좋은 점은 약결합
@Autowired
DI(Dependency Injection)
수정해주기
'개발자로 가는 길(국비지원과정) > 4.Spring+ Ajax' 카테고리의 다른 글
[210705월] JSTL, EL (c :set, c: if, c: forEach) (0) | 2021.07.05 |
---|---|
[210702금] Spring 리다이렉트 (0) | 2021.07.02 |
[210630수] 스프링 용어 정리, 스프링 마이바티스 연동, 룸북 설치, 애노테이션 설명 (0) | 2021.06.30 |
[210629화] 스프링 get, post (0) | 2021.06.29 |
[210628] 스프링 설치 (0) | 2021.06.28 |