8.使用JPA保存数据【从零开始学Spring Boot】
转载:http://blog.csdn.net/linxingliang/article/details/51636989
在看这一篇文档的话,需要先配置好JPA – hibernate。
总体步骤:
(1) 创建实体类Demo,如果已经存在,可以忽略。
(2) 创建jpa repository类操作持久化。
(3) 创建service类。
(4) 创建restful请求类。
(5) 测试
代码如下:
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;
importjavax.annotation.Resource;
importorg.springframework.stereotype.Service;
importcom.kfit.test.bean.Demo;
importcom.kfit.test.dao.DemoRepository;
/**
* 提供Demo服务类.
* @author Administrator
*
*/
@Service
public class DemoService {
@Resource
private DemoRepository demoRepository;
@Transactional
public void save(Demo demo){
demoRepository.save(demo);
}
}
com.kfit.test.web.Demo2Controller(这里为了代码干净,新建了一个测试类):
package com.kfit.test.web;
importjavax.annotation.Resource;
importorg.springframework.web.bind.annotation.RequestMapping;
importorg.springframework.web.bind.annotation.RestController;
importcom.kfit.test.bean.Demo;
import com.kfit.test.service.DemoService;
@RestController
@RequestMapping("/demo2")
public class 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
查看数据库,就可以看到已经添加的数据了。
8.使用JPA保存数据【从零开始学Spring Boot】的更多相关文章
- (7)JPA - Hibernate【从零开始学Spring Boot】
在说具体如何在spring boot 使用Hibernate前,先抛装引玉些知识点?什么是JPA呢? JPA全称Java Persistence API.JPA通过JDK 5.0注解或XML描述对象- ...
- 7. JPA - Hibernate【从零开始学Spring Boot】
转载:http://blog.csdn.net/linxingliang/article/details/51636976 在说具体如何在spring boot 使用hibernate前,先抛装引玉些 ...
- (8). 使用JPA保存数据【从零开始学Spring Boot】
在看这一篇文档的话,需要先配置好JPA – Hibernate. 总体步骤: (1) 创建实体类Demo,如果已经存在,可以忽略. (2) 创建jpa repository类操作持久化. (3 ...
- 64.JPA命名策略【从零开始学Spring Boot】
[从零开始学习Spirng Boot-常见异常汇总] 在(39.2). Spring Boot Shiro权限管理[从零开始学Spring Boot] 这一章节中有人碰到这样一个问题"导入的 ...
- 63.JPA/Hibernate/Spring Data概念【从零开始学Spring Boot】
[从零开始学习Spirng Boot-常见异常汇总] 事情的起源,无意当中在一个群里看到这么一句描述:"有人么?默默的问一句,现在开发用mybatis还是hibernate还是jpa&quo ...
- 78. Spring Boot完美使用FastJson解析JSON数据【从零开始学Spring Boot】
[原创文章,转载请注明出处] 个人使用比较习惯的json框架是fastjson,所以spring boot默认的json使用起来就很陌生了,所以很自然我就想我能不能使用fastjson进行json解析 ...
- 74. Spring Data JPA方法定义规范【从零开始学Spring Boot】
[从零开始学习Spirng Boot-常见异常汇总] 事情的起因:有人问过我们这个这个问题:为什么我利用Spring data jpa写的方法没有按照我想要的情况进行执行呢?我记得当时只是告诉他你你先 ...
- 69. JPA实体Bean的生命周期【从零开始学Spring Boot】
[从零开始学习Spirng Boot-常见异常汇总] 在使用JPA的时候,如果对bean的生命周期不了解的话,难免会碰到一些问题,比如:InvalidDataAccessApiUsageExcepti ...
- (2)Spring Boot返回json数据【从零开始学Spring Boot】
在做如下操作之前,我们对之前的Hello进行简单的修改,我们新建一个包com.kfit.test.web 然后新建一个类HelloControoler, 然后修改App.java类,主要是的这个类就是 ...
- (38)Spring Boot分布式Session状态保存Redis【从零开始学Spring Boot】
[本文章是否对你有用以及是否有好的建议,请留言] 在使用spring boot做负载均衡的时候,多个app之间的session要保持一致,这样负载到不同的app时候,在一个app登录之后,而访问到另外 ...
随机推荐
- Installing Wine 1.5: configure: error: Cannot build a 32-bit program, you need to install 32-bit development libraries(转载)
Installing Wine 1.5: configure: error: Cannot build a 32-bit program, you need to install 32-bit dev ...
- 转 Android_开源框架_AndroidUniversalImageLoader网络图片加载
转自:http://www.cnblogs.com/wanqieddy/p/3836485.html 1.功能概要 Android-Universal-Image-Loader是一个开源的UI组件程序 ...
- 最全面的Android Webview详解
转自:最全面的Android Webview详解 前言 现在很多App里都内置了Web网页(Hyprid App),比如说很多电商平台,淘宝.京东.聚划算等等,如下图 那么这种该如何实现呢?其实这是 ...
- 行为型设计模式之职责链模式(Chain of Responsibility)
结构 意图 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系.将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止. 适用性 有多个的对象可以处理一个请求,哪个 ...
- 调用SMTP发送有附件的邮件
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- MFC中GetParent()的作用(转)
原文转自 https://bbs.csdn.net/topics/390540690 1.假如创建一个非模态的窗口,在如下两种做法里任选一种.(1) chatting.m_lpDlg = new CC ...
- Unicode与UTF-8互转(C语言实现) 基本原理
1. 基础 1.1 ASCII码 我们知道, 在计算机内部, 所有的信息最终都表示为一个二进制的字符串. 每一个二进制位(bit)有0和1两种状态, 因此八个二进制位就可以组合出 256种状态, 这被 ...
- 关于backBarButtonItem的N种方法
替换返回按钮的文字 很多app的要求所有的返回按钮的title都是“返回”,如果上一层题目文字太多,下一层的返回按钮文字就会显示不完全,而且这样可以使软件显得整洁. 方法一: 最普通的想法,A界面的n ...
- UVA 1589:Xiangqi (模拟 Grade D)
题目: 象棋,黑棋只有将,红棋有帅车马炮.问是否死将. 思路: 对方将四个方向走一步,看看会不会被吃. 代码: 很难看……WA了很多发,还越界等等. #include <cstdio> # ...
- jdbc连接警告不安全
Mon Jun 11 10:46:26 CST 2018 WARN: Establishing SSL connection without server's identity verificatio ...