8. 使用JPA保存数据
Posted blackcatfish
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8. 使用JPA保存数据相关的知识,希望对你有一定的参考价值。
在看这一篇文档的话,需要先配置好JPA – Hibernate。
总体步骤:
(1) 创建实体类Demo,如果已经存在,可以忽略。
(2) 创建jpa repository类操作持久化。
(3) 创建service类。
(4) 创建restful请求类。
(5) 测试
代码如下:
com.kfit.test.bean.Demo : package com.kfit.test.bean; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; /** * 测试实体类. * @author Administrator * */ @Entity //加入这个注解,Demo就会进行持久化了,在这里没有对@Table进行配置,请自行配置。 public class Demo { @Id @GeneratedValue private long id;//主键. private Stringname;//测试名称. public long getId(){ return id; } public voidsetId(long id) { this.id = id; } public StringgetName() { return name; } public voidsetName(String name) { this.name =name; } }
com.kfit.test.dao.DemoRepository(这是一个接口,没有具体的实现,这就是JPA):
package com.kfit.test.dao; import org.springframework.data.repository.CrudRepository; import com.kfit.test.bean.Demo; /* * 在CrudRepository自带常用的crud方法. * 这样一个基本dao就写完了. */ public interface DemoRepository extends CrudRepository<Demo,Long>{ }
到这里保存数据的方法就写完了。CrudRepository类把一些常用的方法都已经进行定义和实现了。那么你现在就可以在别的类引入调用了。
另外就是在Spring Data的核心接口里面Repository是最基本的接口了, spring提供了很多实现了该接口的基本接口,如:CrudRepository,PagingAndSortingRepository,SimpleJpaRepository,QueryDslJpaRepository等大量查询接口
com.kfit.test.service.DemoService : package com.kfit.test.service; import javax.annotation.Resource; importorg.springframework.stereotype.Service; import com.kfit.test.bean.Demo; import com.kfit.test.dao.DemoRepository; /** * 提供Demo服务类. * @author Administrator * */ @Service publicclass DemoService { @Resource private DemoRepository demoRepository; @Transactional publicvoid save(Demo demo){ demoRepository.save(demo); } }
com.kfit.test.web.Demo2Controller(这里为了代码干净,新建了一个测试类):
package com.kfit.test.web; import javax.annotation.Resource; importorg.springframework.web.bind.annotation.RequestMapping; importorg.springframework.web.bind.annotation.RestController; import com.kfit.test.bean.Demo; import com.kfit.test.service.DemoService; @RestController @RequestMapping("/demo2") publicclass Demo2Controller { @Resource private DemoService demoService; /** * 测试保存数据方法. * @return */ @RequestMapping("/save") public String save(){ Demod = new Demo(); d.setName("Angel"); demoService.save(d);//保存数据. return"ok.Demo2Controller.save"; } }
之后就可以进行测试了,访问地址:http://127.0.0.1:8080/demo2/save
查看数据库,就可以看到已经添加的数据了。
以上是关于8. 使用JPA保存数据的主要内容,如果未能解决你的问题,请参考以下文章