spring boot 学习--05---mysql,jpa,jdbcTemplate-应用

原创 2016年08月30日 16:57:24

步骤

  1. 修改实体
  2. 增加dao(jpa),service层
  3. 增加controller层
  4. 测试

修改Demo实体

package com.springboot.study.bean;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

/**
 * Demo 模型
 * @author like
 *
 */
@Entity
public class Demo {
     @Id 
     @GeneratedValue
    private long id;


    private String name;
    private String demo;
    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;
    }
    public String getDemo() {
        return demo;
    }
    public void setDemo(String demo) {
        this.demo = demo;
    }

}

增加dao层(JPA)

package com.springboot.study.dao.jpa;

import org.springframework.data.repository.CrudRepository;

import com.springboot.study.bean.Demo;

/**
 * 这就完成一个Dao层的开发,不需要其他注解和配置,JPA自动配置
 * @author like
 *
 */
public interface DemoDao extends CrudRepository<Demo, Long>{

}

增加service层

package com.springboot.study.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.springboot.study.bean.Demo;
import com.springboot.study.dao.jpa.DemoDao;

@Service
public class DemoService {
    @Autowired
    private DemoDao demoDao;

    public void save(Demo demo){
        demoDao.save(demo);
    }

}

controller层


package com.springboot.study.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.springboot.study.bean.Demo;
import com.springboot.study.service.DemoService;

/**
 * Demo 控制类
 * @author like
 *
 */
@RestController
@RequestMapping("/demo")
public class DemoController2 {
    @Autowired
    private DemoService demoService;

    @RequestMapping("/saveDemo")
    public String getDemo(){
        Demo demo = new Demo();
        demo.setId(1);
        demo.setDemo("demo");
        demo.setName("testDemo");
        demoService.save(demo);

        return "demo save success";

    }
}

测试

http://localhost:8080/demo/saveDemo
这里写图片描述

jdbcTemplate应用

  1. 新增jdbcdao
  2. 修改Service
  3. 修改controller
  4. 测试

新增jdbcdao


package com.springboot.study.dao.jdbcTemplate;

import javax.annotation.Resource;

import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository;

import com.springboot.study.bean.Demo;

@Repository
public class DemoJdbcDao {

    @Resource
    private JdbcTemplate jdbcTemplate;

    public Demo getById(long id){
        String sql = "select * from Demo where id=?";
        RowMapper<Demo> rowMapper = new BeanPropertyRowMapper<Demo>(Demo.class);
        return jdbcTemplate.queryForObject(sql, rowMapper,id);
    }
}

修改Service

package com.springboot.study.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.springboot.study.bean.Demo;
import com.springboot.study.dao.jdbcTemplate.DemoJdbcDao;
import com.springboot.study.dao.jpa.DemoDao;

@Service
public class DemoService {
    @Autowired
    private DemoDao demoDao;

    @Autowired
    private DemoJdbcDao demoJdbcDao;

    public void save(Demo demo){
        demoDao.save(demo);
    }

    public Demo getById(long id){
        return demoJdbcDao.getById(id);
    }

}

修改controller

package com.springboot.study.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.springboot.study.bean.Demo;
import com.springboot.study.service.DemoService;

/**
 * Demo 控制类
 * @author like
 *
 */
@RestController
@RequestMapping("/demo")
public class DemoController2 {
    @Autowired
    private DemoService demoService;

    @RequestMapping("/saveDemo")
    public String getDemo(){
        Demo demo = new Demo();
        demo.setId(1);
        demo.setDemo("demo");
        demo.setName("testDemo");
        demoService.save(demo);

        return "demo save success";

    }

    @RequestMapping("/getById")
    public Demo getDemo(long id ){
        return demoService.getById(id);

    }
}

测试

访问 http://localhost:8080/demo/getById?id=1

结果:
成功

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

SpringBoot-SpringData-JPA集成

数据库访问这一层 常用的方式有:JdbcTemplate ,SpringData-JPA, MyBatis 今天我们说一下SpringData-JPA, 使用上一篇SpringBoot-JUnit作...

Spring Boot JPA 连接数据库

本文将介绍如何在Spring Boot 工程中添加JPA作为持久化方式。修改 pom.xml 依赖与上一篇介绍的 jdbc 不同的是 spring-boot-starter-jdbc 修改为 spri...
  • catoop
  • catoop
  • 2016年01月13日 09:41
  • 28911

Spring Boot中使用JdbcTemplate访问数据库

之前介绍了很多Web层的例子,包括构建RESTful API、使用Thymeleaf模板引擎渲染Web视图,但是这些内容还不足以构建一个动态的应用。通常我们做App也好,做Web应用也好,都需要内...

Springboot单元测试和Jdbctemplate的使用

1、搭建springboot项目,加入mysql和jdbc依赖 mysql mysql-connector-java org...

9. 使用JdbcTemplate【从零开始学Spring Boot】

整体步骤: (1)   在pom.xml加入jdbcTemplate的依赖; (2)   编写DemoDao类,声明为:@Repository,引入JdbcTemplate (3)   编写DemoS...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Spring Boot 学习第二步 配置MySQL数据库+JPA

在web服务器中少不了的是与数据库打交道,这里我们采用的是MySQL数据库,也许你对于在Spring中如何进行MySQL数据库配置非常熟悉,这里我们介绍一下如何在Spring Boot环境下配置,并感...

spring boot 学习--04---mysql,jpa

mysql配置 在application.properties配置中新增mysql配置 ################################################# ######...

Spring Boot多数据源配置(一)durid、mysql、jpa整合

前言最近一年由于工作需要大部分使用的都是NoSql数据库,对关系型数据库感觉越来越陌生,一个由group by和order by 引发的血案由此而生。在此做个记录,以备不时之需。需求首先,看一下整体的...

Spring Boot 添加MySQL数据库及JPA

Spring Boot 添加MySQL数据库及JPA
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring boot 学习--05---mysql,jpa,jdbcTemplate-应用
举报原因:
原因补充:

(最多只允许输入30个字)