IT/Java

spring 예제 part.6

성준하이 2021. 12. 20. 09:04
반응형

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

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

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

 

  • 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

 

반응형