본문 바로가기
IT/Java

spring 예제 part.6

by 성준하이 2021. 12. 20.
반응형

저번시간까지 화면에 보이는 페이지를 준비했고,

이번엔 보이고 쓰이고, 수정되고 삭제될 데이터를 저장할 데이터베이스 셋팅을 해보겠다.

일단 먼저 데이터베이스가 설치가 안되어 있으면 참고 포스팅을 참조.

 

  • book 데이터베이스 생성
  • book 테이블 생성
    (데이터베이스 명은 book으로 지정하였고 계정은 root 계정으로 그냥 진행할것이다.
    실제로 상용화가 될 예정이라면 root보다는 다른 계정을 만들고 권한을 부여하여 사용하는것이 바람직하다.)
create database book;

CREATE TABLE `book` (
`book_id` BIGINT NOT NULL AUTO_INCREMENT,
`title` VARCHAR(200) NOT NULL,
`category` VARCHAR(200) NOT NULL DEFAULT '',
`price` INT NULL,
`insert_date` DATETIME NOT NULL DEFAULT NOW(),
PRIMARY KEY (`book_id`)
)
COLLATE='utf8mb4_general_ci';

다음은 자바에서 셋팅을 해준다.

  • pom.xml 수정
    (jdbc, mybatis 등을 사용할것이라는 내용)
<!-- database -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.4</version>
</dependency>

<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.4</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${org.springframework-version}</version>
</dependency>

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-dbcp2</artifactId>
<version>2.7.0</version>
</dependency>

<dependency>
<groupId>org.bgee.log4jdbc-log4j2</groupId>
<artifactId>log4jdbc-log4j2-jdbc4</artifactId>
<version>1.16</version>
</dependency>

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.19</version>
</dependency>

pom.xml 수정 하면 maven 빌드를 다시 실행.(maven clean 하고 project > clean 추천!)

 

다음은 데이터베이스 접속을 위한 정보 설정이다.

외부 정보 관련은 context에서 설정한다 .

위치는 src/main/webapp/WEB-INF/spring/root-context.xml이다.

  • root-context.xml 수정(아래 내용을 추가)
<!-- for mysql -->
<bean id="dataSource"
class="org.apache.commons.dbcp2.BasicDataSource"
destroy-method="close">
<property name="driverClassName"
value="com.mysql.cj.jdbc.Driver" />
<property name="url"
value="jdbc:mysql://localhost:3306/book?serverTimezone=UTC&amp;useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8" />
<property name="username" value="root" />
<property name="password" value="rootpw" />
</bean>

<bean id="sqlSessionFactory"
class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="mapperLocations"
value="classpath:/sqlmap/**/*_SQL.xml" />
</bean>
<bean id="sqlSessionTemplate"
class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="sqlSessionFactory" />
</bean>

여기까지 하면 데이터베이스 설정은 마무리가 된다!


참고 포스팅

https://thenicesj.tistory.com/29

 

[mac setting .m1pro] APM 설치

서버를 다뤄보신분들이나 개인 로컬피시에 뭘 구축을 해보신 분이라면 apm에 대해서 알고 있을것이다. 아파치는 웹서버를 의미하고 mysql은 데이터베이스이고 php는 프로그래밍 언어로 이 세가지

thenicesj.tistory.com

 

반응형

'IT > Java' 카테고리의 다른 글

spring 예제 part.8  (0) 2021.12.22
spring 예제 part.7  (0) 2021.12.21
spring 예제 part.5  (0) 2021.12.19
spring 예제 part.4  (0) 2021.12.17
spring 예제 part.3  (0) 2021.12.16

댓글