버전을 1.4.0 으로 설정했다.
2.0 대 버전은 다르다.
초기에 설정한 것들은 다음과 같다.
jdbc ,mail, mustache, web , mybatis, devtools, lombok , mariadb
스프링 부트의 1.4 버전에 맞는 mybatis 를 설정하기 위해서 다음 아래와 같은 버전을 사용하였다.
버전이 틀리면 당연히 에러 발생.
<!-- myBatis 설정 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.2</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version> </dependency>
위와 같이 mybatis 를 설정을 하고 실행을 하면 다음과 같은 에러 메시지가 나온다.
Cannot determine embedded database driver class for database type NONE
에러를 해결하기 위해 다음과 같이 설정을 하자
http://mainia.tistory.com/5634
환경: Eclipse Mars
스프링붓을 시작할 때 Cannot determine embedded database driver class for database type NONE 에러가 발생하는 이유는 데이터베이스 연결을 위한 DataSource 가 설정되어 있지 않아서 입니다. 개인이 만든 DataSource 타입 빈이 없다면 스프링붓에서 제공하는 DataSourceAutoConfiguration 클래스를 이용해서 DataSource 를 생성해야 합니다.
▼ 그림처럼 스프링붓을 실행했는데 콘솔에 Cannot determine embedded database driver class for database type NONE 에러가 난다면 DataSource 빈을 만들지 않았기 때문입니다.
▼ 에러 없이 실행을 하기 위해서 스프링붓 시작 클래스로 갑니다. 자바 첫 시작 함수인 main() 이 있는 클래스입니다. 그리고 상단에 자동으로 DataSource 생성을 위한 설정인 EnableAutoConfiguration 어노테이션을 클래스 바로 위에 입력합니다.
▼ 또 다른 방법은 application.properties 에 spring.datasource.url 의 값을 입력하는 것입니다. 데이터베이스 연결 주소만 입력하고 접속 아이디와 패스워드를 입력하지 않아도 에러를 해결할 수 있습니다.
spring.datasource.url=jdbc:mysql://localhost/Test_DB
출처: http://mainia.tistory.com/5634 [녹두장군 - 상상을 현실로]
package macaronics.net; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; @SpringBootApplication @EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class}) public class NaverCompanyDbApplication { public static void main(String[] args) { SpringApplication.run(NaverCompanyDbApplication.class, args); } }
컨테이너의 재시작없이 Java 클래스를 자동 로드하기 - loaded https://www.holaxprogramming.com/2015/05/29/spring-boot-and-loaded/
다음을 설정하였다.
<!-- 컨테이너의 재시작없이 Java 클래스를 자동 로드하기 - loaded https://www.holaxprogramming.com/2015/05/29/spring-boot-and-loaded/ --> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>springloaded</artifactId> <version>1.2.5.RELEASE</version> </dependency> </dependencies> </plugin> </plugins> </build>
전체 pom.xml
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>net.slipp</groupId> <artifactId>Naver-company-DB</artifactId> <version>1.0</version> <packaging>war</packaging> <name>Naver-company-DB</name> <description>JUNHO-CHOI-Development</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mustache</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- myBatis 설정 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.2.2</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.2.8</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> </dependency> <!-- mariaDb / Mybatis --> <dependency> <groupId>org.mariadb.jdbc</groupId> <artifactId>mariadb-java-client</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <!-- 컨테이너의 재시작없이 Java 클래스를 자동 로드하기 - loaded https://www.holaxprogramming.com/2015/05/29/spring-boot-and-loaded/ --> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>springloaded</artifactId> <version>1.2.5.RELEASE</version> </dependency> </dependencies> </plugin> </plugins> </build> <repositories> <repository> <id>spring-snapshots</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/snapshot</url> <snapshots> <enabled>true</enabled> </snapshots> </repository> <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>spring-snapshots</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/snapshot</url> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> <pluginRepository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> <snapshots> <enabled>false</enabled> </snapshots> </pluginRepository> </pluginRepositories> </project>
댓글 ( 5)
댓글 남기기