お世話になります。Spring Bootの開発でつまづいてしまい、ご質問させてください。
現在、Spring BootとDomaでDB操作が可能なAPI開発の環境構築を行っております。
ウェブサイトや参考書を参考にして環境構築を行い、いざ起動を行ったところ、起動をすることができない状態です。以下のようなエラーが発生しているのですが、どうにもこうにも八方塞がりでして、アドバイスをいただけませんでしょうか。。。
Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled. 2018-01-03 16:34:02.107 ERROR 6106 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAILED TO START *************************** Description: Field testDao in com.test.controller.TestController required a bean of type 'com.test.domain.dao.TestDao' that could not be found. Action: Consider defining a bean of type 'com.test.domain.dao.TestDao' in your configuration.
作成したファイルのパッケージ構成は以下のようになっております。
src/main/java L com.test TutorialAppApplication.java L com.test.controller TestController.java L com.test.domain.dao TestDao.java L com.test.domain.entity SampleUser.java src/main/resource L application.properties
また、それぞれのファイルの中身は以下のようになっております。
TutorialAppApplication.java
Java
package com.test; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class TutorialAppApplication { public static void main(String[] args) { SpringApplication.run(TutorialAppApplication.class, args); } }
TestController.java
Java
package com.test.controller; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.test.domain.dao.TestDao; import com.test.domain.entity.SampleUser; @Controller @RequestMapping("/test") public class TestController { @Autowired private TestDao testDao; @GetMapping("/sampleUsers") public String index() { System.out.println("test"); List<SampleUser> sampleUsers = testDao.findAll(); StringBuilder stringBuilder = new StringBuilder(); for(SampleUser sampleUser : sampleUsers) { stringBuilder.append(sampleUser.getId()) .append(":") .append(sampleUser.getName()) .append("、"); } return stringBuilder.toString(); } }
TestDao.java
Java
package com.test.domain.dao; import java.util.ArrayList; import org.seasar.doma.Dao; import org.seasar.doma.Select; import org.seasar.doma.boot.ConfigAutowireable; import com.test.domain.entity.SampleUser; @Dao @ConfigAutowireable public interface TestDao { @Select ArrayList<SampleUser> findAll(); }
SampleUser.java
Java
package com.test.domain.entity; import org.seasar.doma.Column; import org.seasar.doma.Entity; import lombok.Data; @Data @Entity public class SampleUser { @Column(name = "id") private String id; @Column(name = "name") private String name; }
**application.properties **
# DB spring.datasource.url=jdbc:oracle:thin:@localhost:1521:ORCLPDB1.localdomain spring.datasource.username=test_user spring.datasource.password=test spring.database.driverClassName=oracle.jdbc.driver.OracleDriver # DOMA doma.dialect=ORACLE doma.naming=SNAKE_LOWER_CASE
build.gradle
buildscript { ext { springBootVersion = '1.5.9.RELEASE' } repositories { mavenCentral() maven { url 'https://oss.sonatype.org/content/repositories/snapshots' } } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } apply plugin: 'java' apply plugin: 'eclipse-wtp' apply plugin: 'org.springframework.boot' apply plugin: 'war' group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = 1.8 repositories { mavenCentral() } configurations { providedRuntime } dependencies { compile('org.springframework.boot:spring-boot-starter-web') compile("org.springframework.boot:spring-boot-starter-thymeleaf") compileOnly('org.projectlombok:lombok') providedRuntime('org.springframework.boot:spring-boot-starter-tomcat') testCompile('org.springframework.boot:spring-boot-starter-test') compile('org.seasar.doma.boot:doma-spring-boot-starter:1.0.2') compile('org.springframework.boot:spring-boot-starter-jdbc') }
ちなみに、Javaのバージョンは【1.8】になります。
お手数をおかけしますが、アドバイスをいただけますと幸いです。
どうぞよろしくお願い致します。
まだ回答がついていません
会員登録して回答してみよう