質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

Q&A

解決済

2回答

10363閲覧

Spring boot : アノテーションをつけてもインスタンス定義を認識されない

S.N.

総合スコア21

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

0グッド

1クリップ

投稿2018/01/22 06:12

編集2018/01/22 08:50

#はじめに

  • Spring bootでアプリケーションを作っています。
  • エラーコード読みながらいろいろやってますが、アプリケーションが起動できなくて

 困っています。

  • ORマッパーはMybatisを使っています。

#エラーコード
以下のようなメッセージが出力されます。
ただし、起動前に問題が出てきているわけではありません。
アノテーション回りに問題ありそうかと思い、関係するクラスは基本的には
Beanに定義されているという認識です。

Java

1*************************** 2APPLICATION FAILED TO START 3*************************** 4 5Description: 6 7Field artistMasterMapper in com.example.demo.services.ArtistMasterService required a bean of type 'com.example.demo.artistmaster.ArtistMasterRepository' that could not be found. 8 9 10Action: 11 12Consider defining a bean of type 'com.example.demo.artistmaster.ArtistMasterRepository' in your configuration.

#コード等

Java

1//コントローラ 2@RestController 3@RequestMapping("/api") 4@ComponentScan({"com.example.demo.artistmaster", "com.example.demo.controllers", "com.example.demo.services"}) 5public class ArtistMasterController { 6 7 @Autowired 8 ArtistMasterServiceInterface artistMasterServiceInterface; 9 10 @RequestMapping("/artists") 11 @ResponseBody 12 public List<ArtistMaster> getAllArtists(){ 13 return artistMasterServiceInterface.getAll(); 14 } 15 16} 17 18//サービス(実装) 19@Service 20public class ArtistMasterService implements ArtistMasterServiceInterface{ 21 22 @Autowired 23 ArtistMasterRepository artistMasterMapper; 24 25 public List<ArtistMaster> getAll(){ 26 return artistMasterMapper.getAll(); 27 } 28 29} 30 31//サービス(Interface) 32@Service 33public interface ArtistMasterServiceInterface { 34 35 public List<ArtistMaster> getAll(); 36 37} 38 39//リポジトリ 40@Repository 41@Component 42public interface ArtistMasterRepository { 43 44 int countByExample(ArtistMasterExample example); 45 46 int deleteByExample(ArtistMasterExample example); 47 48 int deleteByPrimaryKey(Integer artistId); 49 50 int insert(ArtistMaster record); 51 52 int insertSelective(ArtistMaster record); 53 54 List<ArtistMaster> selectByExample(ArtistMasterExample example); 55 56 ArtistMaster selectByPrimaryKey(Integer artistId); 57 58 List<ArtistMaster> getAll(); 59 60 int updateByExampleSelective(@Param("record") ArtistMaster record, @Param("example") ArtistMasterExample example); 61 62 int updateByExample(@Param("record") ArtistMaster record, @Param("example") ArtistMasterExample example); 63 64 int updateByPrimaryKeySelective(ArtistMaster record); 65 66 int updateByPrimaryKey(ArtistMaster record); 67} 68

#ディレクトリ構造

├─src │ ├─main │ │ ├─java │ │ │ └─com │ │ │ ├─example │ │ │ │ │ MyBatisDemoApplication.java │ │ │ │ │ │ │ │ │ ├─services │ │ │ │ │ └─ArtistMasterService.java │ │ │ │ │ │ │ │ │ │ │ └─ArtistMasterServiceInterface.java │ │ │ │ │ │ │ │ │ ├─controllers │ │ │ │ │ └─ArtistMasterController.java │ │ │ │ │ │ │ │ │ └─artistmaster │ │ │ │ ├─ArtistMaster.java ... Entity │ │ │ │ │ │ │ │ │ ├─ArtistMasterRepository.java ... Repository │ │ │ │ │ │ │ │ │ └─ArtistMasterMapper.xml

どこに問題がありそうなのか、かなりいろいろ調べましたが、見当もつかない状況です。
お力添えいただけますと幸いです。
また、質問について、不足している情報等ございましたら指摘いただけますでしょうか。

何卒よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

解決しました。
しかし、理由は不明です。
翌日、何もせずまあ一回起動してみるか、と思い試したところ
起動できました。

投稿2018/01/22 23:18

S.N.

総合スコア21

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

@EnableJpaRepositories で有効化されてないとか?

投稿2018/01/22 09:07

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

S.N.

2018/01/22 09:13

回答ありがとうございます。 マッパーにはMyBatisを使っていまして、JPAは直接的に関係ないのかなと思います。 一応、書いていただきましたアノテーションをつけてみましたが、認識されませんでした(= インポートの候補が出て来ない)。
退会済みユーザー

退会済みユーザー

2018/01/22 09:29

mybatisの場合 @mapper と @mapperscanであって @repository は使わんと思うんだが
S.N.

2018/01/22 09:41

そうなんですね。 他にも、かなり似たようなディレクトリ構造になっているアプリケーションを別で作ってまして、 そっちは@Repositoryのアノテーションでも動いてました。 なので、@Repositoryでもいいのかなとおもっていました。 @Mapperとかも試しつつ様子見てみます。
退会済みユーザー

退会済みユーザー

2018/01/22 09:44

リポジトリでの実装があることは見つけたが クラスとして自分で実装していたね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問