스프링

 

버전을 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 빈을 만들지 않았기 때문입니다.

스프링붓(Spring boot) Cannot determine embedded database driver class for database type NONE 에러 해결하는 방법

 

 

 

▼ 에러 없이 실행을 하기 위해서 스프링붓 시작 클래스로 갑니다. 자바 첫 시작 함수인 main() 이 있는 클래스입니다. 그리고 상단에 자동으로 DataSource 생성을 위한 설정인 EnableAutoConfiguration 어노테이션을 클래스 바로 위에 입력합니다. 

 

스프링붓(Spring boot) Cannot determine embedded database driver class for database type NONE 에러 해결하는 방법

 

 

▼ 또 다른 방법은 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>

 

 

 

 

 

 

 

 

 

 

about author

PHRASE

Level 60  라이트

내가 알고 있는 최대의 비극은 많은 사람들이 자기가 진정으로 하고 싶은 일이 무엇인지 알지 못하고 있다는 것이다. 단지 급료에 얽매어 일하고 있는 사람처럼 불쌍한 인간은 없다. - D. 카네기

댓글 ( 5)

댓글 남기기

작성