博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(8). 使用JPA保存数据【从零开始学Spring Boot】
阅读量:6594 次
发布时间:2019-06-24

本文共 2463 字,大约阅读时间需要 8 分钟。

在看这一篇文档的话,需要先配置好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";

    }

   

}

 

之后就可以进行测试了,访问地址:

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

 

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

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

(支付宝支付)

 

 

(微信支付)

 

 

Spring Boot 系列博客】

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

更多查看博客:

转载于:https://www.cnblogs.com/hehehaha/p/6147139.html

你可能感兴趣的文章
kill
查看>>
小经验:图像精确计算时,注意jpg 与bmp的区别
查看>>
CSS背景颜色、背景图片、平铺、定位、固定
查看>>
链表三:反转链表
查看>>
通过触发器记录数据库连接信息
查看>>
Python教程
查看>>
1 dev repo organize
查看>>
ImmediateFunc.js
查看>>
jmeter参数化之 CSV data set config
查看>>
分组背包,每组最多选1个
查看>>
牛客国庆集训派对Day3 B Tree
查看>>
PHP 笔记——基础
查看>>
Java -- 深入浅出GC自动回收机制
查看>>
开发自己的脚本引擎(一)先吹吹水,再干事情。
查看>>
python中判断对象类型的函数——isinstance
查看>>
计数排序 + 线段树优化 --- Codeforces 558E : A Simple Task
查看>>
javascript版前端页面RSA非对称加密解密
查看>>
convex optimization(ebook+tutorial)best
查看>>
L1 minimization
查看>>
English Corner
查看>>