전자정부프레임워크

[게시판만들기] MyBatis, MySQL DB연결

도하루박 2024. 2. 29. 14:21
반응형

1. Mybatis 설정, MySQL

pom.xml에 mybatis, MySQL 관련 dependency를 추가한다.

 

pom.xml
<!-- MyBatis -->
	<dependency>
          <groupId>org.mybatis</groupId>
          <artifactId>mybatis-spring</artifactId>
          <version>1.2.0</version>
     </dependency>
        
     <dependency>
          <groupId>org.mybatis</groupId>
          <artifactId>mybatis</artifactId>
          <version>3.2.7</version>
     </dependency>
     
 <!-- MySQL -->
 <dependency>
	 <groupId>mysql</groupId>
	 <artifactId>mysql-connector-java</artifactId>
	 <version>8.0.31</version>
 </dependency>

 

위처럼 경로에 xml 추가

 

/resources/spring/context-common.xml

/resources/spring/context-database.xml

/resources/sqlmap/mappers (폴더생성) - 폴더아래 SQL 파일추가될 예정

/resources/sqlmap/sql-mapper-config.xml

 

 

context-common.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">

    <context:component-scan base-package="haru">
    	<context:include-filter type="annotation" expression="org.springframework.stereotype.Service"/>
		<context:include-filter type="annotation" expression="org.springframework.stereotype.Repository"/>
        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" />
    </context:component-scan>
	 
</beans>

<context:component-scan base-package="haru">을 설정하여 패키지안에 있는 어노테이션을 인식하도록 한다.

나의 프로젝트의 경우 base 패키지 명인 'haru'로 설정

 

 

context-database.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:jdbc="http://www.springframework.org/schema/jdbc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
           http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.0.xsd">
           
           
	           
	<!-- MySQL -->
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
	    <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/>
	    <property name="url" value="jdbc:mysql://localhost:3306/haru" />
	    <property name="username" value="root"/>
	    <property name="password" value="root" />
	</bean>
    
    <!-- Mybatis -->
    <bean id="sqlSession" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />  
		<property name="configLocation" value="classpath:/sqlmap/sql-mapper-config.xml" />
		<property name="mapperLocations">
        <list>
        	<value>classpath*:/sqlmap/mappers/*.xml</value>
    	</list>
    	</property>
	</bean>
	
	<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate" destroy-method="clearCache">
		<constructor-arg index="0" ref="sqlSession" />  
		<constructor-arg index="1" value="BATCH" />
	</bean>
	
           
</beans>

mybatis와 db관련 설정을 하는 xml

db정보를 입력하고 mysql mapper를 입력할 list 경로를 연결해준다

 

이제 게시판 목록을 띄워볼까~!

 

 

반응형