データベースのばねデータJPA動作

図1に示すように、ばねデータJPA Spring統合は、休止状態にあります
2、春のブートプロジェクトが自動的にデータベースのテーブルを生成することができ、設定ファイルを書き、2つの依存関係を追加し、エンティティクラスに注釈を追加します
エンティティクラス:
@Entity クラスのマークに基づいてデータテーブルを作成します//
パブリッククラスの人々{
@Id
@GeneratedValue //インクリメントの主キー
プライベートロングID。
プライベート文字列名;
人々は{)(パブリック//引数なしのコンストラクタ必見
}
}
 
application.ymlデフォルトの設定ファイル:
#デフォルトの設定ファイル
春:
プロフィール:
アクティブ:デフォルト
データソース:#構成データベース
ドライバー・クラス名:はcom.mysql.jdbc.Driver
URLます。jdbc:mysqlの:// localhostを:3306 / hap_dev
ユーザ名:ルート
パスワード:虎
JPA:
休止状態:
DDL-オート:自動的にエンティティクラスに基づいてデータベース表を作成#ランタイムを作成します
ショー-SQL:真
 
注意:
DDL-オート:すなわち、自動的に実行時のエンティティクラスに基づいて作成され、作成したデータベースのテーブルがあれば、人々のデータベーステーブル
人々、それは削除して作成しますが存在します
DDL-オート:更新、すなわち、自動的に実行時のエンティティクラスに基づいて作成された人々のデータベーステーブル、データベーステーブルの場合
人々はすでに何も操作しません
DDL-オート:自動的に作成された実行エンティティクラスに応じて、ドロップを作成するとき、人々のデータベーステーブル、アプリケーションの停止
ときにのみテーブルを削除
ddl-auto: none,即运行时什么也不干,无数据库表的操作
ddl-auto: validate,即运行时验证实体类属性与数据库表字段是否一致,不一致
则抛异常
 
 
pom.xml依赖(基本的spring boot依赖要有)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
 
3、由spring-data-jpa操作数据库(结合restful风格)
Service接口类:
// 继承jpa操作数据库的接口,并指定实体类名和主键类型
public interface PeopleRepository extends JpaRepository<People,Long> {
public List<People> findByName(String name);//自定义的方法命名要符合这个格式
}
Controller类:
@RestController
public class PeopleController {
@Autowired
private PeopleRepository peopleRepository;
 
//查询people表所有数据
@GetMapping("/peoples")
public List<People> getAll(){
return peopleRepository.findAll();
}
 
// 插入一条数据
@PostMapping("/peoples")
public People addOne(@RequestParam("name") String name){
People p=new People();
p.setName(name);
return peopleRepository.save(p);
}
 
//由id获取一条数据
@GetMapping("/peoples/{id}")
public People getOne(@PathVariable("id") Long id){
return peopleRepository.findOne(id);
}
 
//由id更新、插入一条数据
@PutMapping("/peoples/{id}")
public People putOne(@PathVariable("id") Long id,@RequestParam("name") String name){
People p=new People();
p.setId(id);
p.setName(name);
return peopleRepository.save(p);
}
 
// 由id删除一条数据
@DeleteMapping("/peoples/{id}")
public void delOne(@PathVariable("id") Long id){
peopleRepository.delete(id);
}
 
//通过name查询一条或多条数据
@GetMapping("/peoples/name/{name}")
public List<People> findByName(@PathVariable("name") String name){
return peopleRepository.findByName(name);
}
}
 
 
 
 

おすすめ

転載: www.cnblogs.com/afei1759/p/11286040.html