(8). 使用JPA保存数据【从零开始学Spring Boot】

在看这一篇文档的话,需要先配置好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 String name;//测试名称.

       public long getId() {

              return id;

       }

       public void setId(long id) {

              this.id = id;

       }

       public String getName() {

              return name;

       }

       public void setName(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提供了很多实现了该接口的基本接口,:CrudRepositoryPagingAndSortingRepositorySimpleJpaRepositoryQueryDslJpaRepository等大量查询接口

 

com.kfit.test.service.DemoService :

package com.kfit.test.service;

 

import javax.annotation.Resource;

import org.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;

import org.springframework.web.bind.annotation.RequestMapping;

import org.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(){

       Demo d = new Demo();

       d.setName("Angel");

       demoService.save(d);//保存数据.

       return"ok.Demo2Controller.save";

    }

   

}

 

之后就可以进行测试了,访问地址:http://127.0.0.1:8080/demo2/save

查看数据库,就可以看到已经添加的数据了。

=========================================================================

您的打赏是我最大的动力,打开微信或者支付宝扫描二维码向我打赏吧:


(支付宝支付)



(微信支付)

Spring Boot 系列博客】

58. Spring Boot国际化(i18n)【从零开始学Spring Boot 

 

57. Spring 自定义properties升级篇【从零开始学Spring Boot 

 

56. spring boot中使用@Async实现异步调用【从零开始学Spring Boot 

 

55. spring boot 服务配置和部署【从零开始学Spring Boot 

 

54. spring boot日志升级篇—logback【从零开始学Spring Boot

 

52. spring boot日志升级篇—log4j多环境不同日志级别的控制【从零开始学Spring Boot 

 

51. spring boot属性文件之多环境配置【从零开始学Spring Boot

 

50. Spring Boot日志升级篇—log4j【从零开始学Spring Boot

 

49. spring boot日志升级篇理论【从零开始学Spring Boot

 

48. spring boot单元测试restfull API【从零开始学Spring Boot

 

47. Spring Boot发送邮件【从零开始学Spring Boot

 

46. Spring Boot中使用AOP统一处理Web请求日志

 

45. Spring Boot MyBatis连接Mysql数据库【从零开始学Spring Boot

 

44. Spring Boot日志记录SLF4J【从零开始学Spring Boot

 

43. Spring Boot动态数据源(多数据源自动切换)【从零开始学Spring Boot

 

42. Spring Boot多数据源【从零开始学Spring Boot

 

41. Spring Boot 使用Java代码创建Bean并注册到Spring中【从零开始学Spring Boot

 

40. springboot + devtools(热部署)【从零开始学Spring Boot 

 

39.4 Spring Boot Shiro权限管理【从零开始学Spring Boot

 

39.3 Spring Boot Shiro权限管理【从零开始学Spring Boot

 

39.2. Spring Boot Shiro权限管理【从零开始学Spring Boot

 

39.1 Spring Boot Shiro权限管理【从零开始学Spring Boot

 

38 Spring Boot分布式Session状态保存Redis【从零开始学Spring Boot 

 

37 Spring Boot集成EHCache实现缓存机制【从零开始学Spring Boot 

 

36 Spring Boot Cache理论篇【从零开始学Spring Boot

 

35 Spring Boot集成Redis实现缓存机制【从零开始学Spring Boot 

 

34Spring Boot的启动器Starter详解【从零开始学Spring Boot

 

33 Spring Boot 监控和管理生产环境【从零开始学Spring Boot

 

32 Spring Boot使用@SpringBootApplication注解从零开始学Spring Boot 

 

31 Spring Boot导入XML配置【从零开始学Spring Boot

 

 

更多查看博客: http://412887952-qq-com.iteye.com/

原文地址:https://www.cnblogs.com/hehehaha/p/6147139.html