文档章节

SpringBoot 07 之JPA使用

小鸟也疯狂
 小鸟也疯狂
发布于 2016/12/09 10:21
字数 268
阅读 32
收藏 0

1、创建一个实体类

@Entity

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;

}

}

 

2、创建Controller

 

@RestController

@RequestMapping("/demo2")

public class Demo2Controller {

@Resource

private DemoService demoService;

@RequestMapping("/save")

public String save(){

Demo demo=new Demo();

demo.setId(1);

demo.setName("abc");

demoService.save(demo);

return "ok";

}

 

@RequestMapping("/getDemo")

public Demo getDemoById(){

return demoService.getDemoById(1);

}

}

 

3、创建Service

 

@Service

public class DemoService {

@Resource

private DemoRepository demoRepository;

@Resource

private DemoDao demoDao;

@Transactional

public void save(Demo demo){

demoRepository.save(demo);

}

@Transactional

public Demo getDemoById(long id){

//demoRepository.findOne(id);

//在demoRepository可以直接使用findOne进行获取.

return demoDao.getDemoById(id);

}

}

 

4、第一种是使用JPA的已经实现的增删改查的方法,第二种是采用JdbcTemplate的方式来定义sql,实现增删改查,此处只是实现了查询,数据库中必须存在数据,没有数据会报错。

(1)创建Dao,这是一个接口,没有具体的实现,这就是JPA

public interface DemoRepository extends CrudRepository<Demo, Long> {

}

 

(2)创建Dao,

 

@Repository

public class DemoDao {

@Resource

private JdbcTemplate jdbcTemplate;

public Demo getDemoById(long id){

String sql = "select *from Demo where id=?";

RowMapper<Demo> rowMapper = new BeanPropertyRowMapper<Demo>(Demo.class);

return jdbcTemplate.queryForObject(sql, rowMapper,id);

}

}

 

 

 

© 著作权归作者所有

共有 人打赏支持
小鸟也疯狂

小鸟也疯狂

粉丝 11
博文 32
码字总数 9097
作品 0
朝阳
程序员
私信 提问
SpringBoot使用Jsp

本文是简单总结一下SpringBoot使用Jsp的Demo。 前言 在早期做项目的时候,JSP是我们经常使用的java服务器页面,其实就是一个简化servlet的设计,在本文开始之前,回顾一下jsp的几大对象,如图...

dalaoyang
08/13
0
0
springboot 是如何帮我们省去web.xml配置的

概述 最开始使用原生的springmvc时,总是免不了有如下xml配置 但是,切换到springboot之后,web.xml之类的繁琐的配置基本上都不见了。出于好奇研究了下springboot究竟帮我们做了什么,我们可...

端吉
06/23
0
0
SpringBoot 之Thymeleaf模板

一、前言 Thymeleaf 的出现是为了取代 JSP,虽然 JSP 存在了很长时间,并在 Java Web 开发中无处不在,但是它也存在一些缺陷: 1、JSP 最明显的问题在于它看起来像HTML或XML,但它其实上并不...

编程SHA
10/11
0
0
springboot(一)入门篇

今天来整理下springboot,开发工具使用eclipse(后期会再做个idea的).主要实现的功能是 1.通过数据库的查询返回前端数据. 第二步:新建entity 第三步:新建UserMapper(需要在application.propert...

zhuyuansj
2017/10/06
0
0
熵增学院-Anders-剑走偏锋,了解Spring Boot内部Servlet容器

还记得大明湖畔的servlet吗?其实Spring Boot支持内嵌的Tomcat, Jetty和Undertow服务器,多数开发者只需要使用合适的'Starter'来获取一个完全配置好的实例即可,内嵌服务器默认监听8080端口的...

melon_jj
11/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Vue.js 3.0 新特性预览

Evan You(尤雨溪)(2018年11月16日)前几日的早上在 Vue Toronto 的主题演讲中预演了 Vue 3 。 利用现代浏览器支持的新功能,Vue 3 将成为我们已经了解和喜爱的 Vue.js 强大的的改进版本。...

我的卡
11分钟前
1
0
Mybatis自带连接池阅读

1、数据源初始化,初始化入口由SqlSessionFactoryBuilder.build(InputStream inputStream, String environment, Properties properties)方法提供 public SqlSessionFactory build(InputStre......

jcc_codingBoy
17分钟前
1
0
Oracle 数据库勒索病毒 RushQL 处理办法

Oracle 数据库勒索病毒 RushQL 处理办法 办法来自Oracle 官方: https://blogs.oracle.com/cnsupport_news/%E5%AF%B9%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E2%80%9C%E6%AF%94%E7%89%B9%E5%......

rootliu
18分钟前
2
0
聊聊flink LocalEnvironment的execute方法

序 本文主要研究一下flink LocalEnvironment的execute方法 实例 final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment(); DataSet<RecordDto>......

go4it
20分钟前
1
0
Spring Boot中对自然语言处理工具包hanlp的调用详解

概 述 HanLP 是基于 Java开发的 NLP工具包,由一系列模型与算法组成,目标是普及自然语言处理在生产环境中的应用。而且 HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点,...

左手的倒影
26分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部