プロジェクトを作成します。1.
2、application.ymlのデータソースとJPAの関連構成
春:
データソース:
URL:JDBC:MySQLの:// localhostを:3306 / springbootjpa serverTimezone = GMT?
ユーザ名:ルート
パスワード:123
ドライバー・クラス名:com.mysql.cj.jdbc.Driver
JPA:
休止状態:
DDL-オート:更新#更新やテーブルの作成
ショー-SQL:真#のSQLコンソールの表示を
3、良い書き込みとエンティティクラスの良いテーブルをマッピング
インポートのjavax.persistence。* ; / ** マッピング設定*使用JPAの注釈 * / @Entityを // これはJPAエンティティクラス(クラスマップおよびデータシート)で伝える @Table(名前= "tbl_user") // 指定そしてどのデータ対応表、小文字の属性名が省略されている場合、デフォルトでは、テーブルのクラス名の名前の最初の文字である 公共の クラスにユーザーを{ @Idは // これは、主キーであることを指定 @GeneratedValue(戦略= GenerationType.IDENTITYを) // インクリメント政策 プライベート整数ID ; @Column(名前 =「LAST_NAME」、長さ= 50) //が、これはリストであることを指定する プライベート;文字列lastNameの@Column // name属性のプロパティ名が省略され、デフォルトで プライベート文字列のメール。 公共の整数のgetId(){ 戻りID。 }
........
}
データテーブルに対応する4、書き込みダオインタフェースエンティティクラス(リポジトリ)
CrudRepository基本的なCRUD機能; PagingAndSortingRepositoryがページングやソートされています。
継承グラフは、我々は唯一のいずれかJpaRepository CRUDを実現する必要がありますリポジトリを記述する必要が、ページングやソート機能があります
パッケージcom.atguigu.springboot.repository; インポートcom.atguigu.springboot.entity.User; インポートorg.springframework.data.jpa.repository.JpaRepository; //は、データベース上で操作を実行するJpaRepositoryを継承し 、パブリック インターフェイス UserRepository 拡張 JpaRepository <ユーザを、整数> { }
我々は最初のJPAは自動的に私たちは、構成テーブルの構築を支援しましょう、プロジェクトを開始した5、
プロジェクトを開始する前にテーブルを持っていません。
表は自動的に成功したスタートアップ項目の後に作成されます。
6、UserRepositoryを(ここだけなので、サービス層を作成しないでください、リポジトリの機能を発揮するために)呼び出しコントローラを作成
findOne方法とspringboot1.xのリポジトリでの注意springboot2.x同じ、Baiduは理解することができません
@RestController パブリック クラスUserControllerで{ @Autowired UserRepository userRepository。 @GetMapping( "/ユーザ/ {ID}" ) パブリックオプション<ユーザー>のgetUser(@PathVariable( "ID" )、整数ID){ ユーザUが = 新しい(ユーザー) u.setId(ID)。 例 <ユーザ>例= Example.of(U)。 オプション <ユーザー> 1 = userRepository.findOne(例) 戻り1; } @GetMapping( "/ユーザ" ) パブリック =ユーザinsertUser(ユーザユーザ){ ユーザU userRepository.save(ユーザー); 返すuと。 } }
テストを挿入します。
クエリのテスト: