springboot統合春、JPA
主な内容:
1:春ブーツとどのように統合されたバネのJPA JPA最初の例クエリ
いくつかの一般的なJPA注釈、ロンボク使用注釈として使用
2:自動的にPOMへの依存性を追加することのアイデアを設定する方法のときに連想。
3:統合問題に遭遇すると、このような地域、JPA遅延ロードの問題のmysqlなどのソリューション..
私たちは、3層モデルMVC、DAO層の設計と開発、サービス層の設計と開発、およびコントローラ層に従ってください。
さんがここでは省略される基本的なフレームワークを作成するために、DAO層の設計と開発、春のブートプロジェクトを見てみましょう。
凱歌のJava(kaigejava):この記事はから来ています
「春のブート支払いプログラム。」凱歌個人のブログ:www.kaigejava.com
:依存関連のjarファイルを追加
MySQLを使用しているため、MySQLのpom.xmlファイル内のデータベース関連のjarファイルの導入・運用に関連します。我々はここで使用するデータベースを操作するためのバネ-JPAです。特定のJRA次のように:
<! - MySQLの関連する依存関係 - >
< 依存>
< groupIdを> mysqlの</ groupIdを>
< たartifactId > のmysql-コネクタ-javaの</ たartifactId >
</ 依存関係>
<! - JPAその依存関係 - >
< 依存>
< groupIdを> org.springframework.boot </ groupIdを>
< たartifactId > ばねブートスタータデータJPA </ たartifactId >
</ 依存関係>
入力atrifactidが考えることができる場合は、次に示すように:レノボ、以下に示すよう際に座標がポンポンファイルに入力されたどのようにあなたのアイデアを教えます:
操作:ファイル - >設定インターフェイス、ターンで見つかった:構築、実行、展開 - > Bulidツール - > Mavenの - >リポジトリ下図のように:
それを更新する]をクリックします。
II:データベース接続の構成。ここでは使用YML形式です。次のように図構成される。
春:
情報元:
ドライバー・クラス名: com.mysql.cj.jdbc.Driver
ユーザ名: ルート
パスワード: 123456
URL: JDBC:mysqlの:// localhost /をspringboot-wxpay serverTimezone = UTC&characterEncoding = UTF8&useUnicode =真&useSslオプション=偽
JPA:
show-sql: true
说明:
spring.jpa.show-sql=true.这句意思是:打印sql语句。
在url后面添加serverTimeizone=UTC是为了解决时区错误的问题。
三:创建实体及测试
3.1:创建ProductCategory实体对象。使用spring-jpa方式:
说明:
@Entity:spring-jpa实体注解
@Data: lombok注解用于自动生产get/set方法的
@Id:jpa的主键注解
@GeneratedValue:注解生成策略
3.2:创建repository接口对象
说明:使用jpa的需要继承Jparepository这个对象(有多个,这里就用简单的)
其中泛型,我们查看源码:
T:实体对象的。也就是我们上面创建的ProductCategory对象
ID:实体对象的ID类型。我们使用的事Integer类型。所以这里就写Integer。
四:创建测试类,进行测试:
在IDEA中,创建测试类快捷键:选中类名之后,ctrl+shift+t。如下图:
运行结果:
在控制台上,我们可以看到hibernate打印的sql语句以及打印出查询的结果。说明springboot继承jpa成功。
如果出现could not initialize proyx的时候,如下图错误:
在实体上面添加@Proxy(lazy = false)
说明:@ToString 是直接添加toString方法的。