简单使用Spring Boot+JpaRepository+hibernate搭建项目

sql:

-- --------------------------------------------------------
-- 主机:                           127.0.0.1
-- 服务器版本:                        10.3.9-MariaDB - mariadb.org binary distribution
-- 服务器操作系统:                      Win64
-- HeidiSQL 版本:                  9.4.0.5125
-- --------------------------------------------------------/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET NAMES utf8 */;
/*!50503 SET NAMES utf8mb4 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;-- 导出 wbg_logistics 的数据库结构
CREATE DATABASE IF NOT EXISTS `wbg_logistics` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `wbg_logistics`;-- 导出  表 wbg_logistics.role 结构
CREATE TABLE IF NOT EXISTS `role` (`id` int(11) NOT NULL AUTO_INCREMENT,`role_name` varchar(20) DEFAULT NULL,`note` varchar(20) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=103 DEFAULT CHARSET=utf8;-- 数据导出被取消选择。
/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */;
/*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

View Code

第一步:创建好spring boot项目

教程:https://www.cnblogs.com/weibanggang/p/10200945.html

第二步:配置

1、build.gradle加入依赖

repositories {//使用阿里云仓库maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}mavenCentral()
}dependencies {implementation('org.springframework.boot:spring-boot-starter-data-jpa')implementation('org.springframework.boot:spring-boot-starter-thymeleaf')implementation('org.springframework.boot:spring-boot-starter-web')// mariadbcompile group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.3.0'// hibernatecompile group: 'org.hibernate', name: 'hibernate-core', version: '5.4.0.Final'implementation('org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.2')testImplementation('org.springframework.boot:spring-boot-starter-test')
}

View Code

2、配置数据application

#数据驱动
#  compile group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.3.0'
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
#数据库连接
spring.datasource.url=jdbc:mariadb://localhost:3306/wbg_logistics
#数据库密码
spring.datasource.password=123456
#数据库用户名
spring.datasource.username=root
#设置数据库连接的平台
spring.jpa.database-platform=org.hibernate.dialect.MariaDB10Dialect
spring.jpa.hibernate.ddl-auto=update#监控
management.endpoints.web.exposure.include=*server.port=8080

View Code

第三步:创建类、接口、访问数据

  1、Role类:

package com.wbg.springbootdemo.entity;import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;@Entity
@Table
public class Role {@Overridepublic String toString() {return "Role{" +"id=" + id +", roleName='" + roleName + '\'' +", note='" + note + '\'' +'}';}@Idint id;String roleName;String note;public Role() {}public int getId() {return id;}public Role(int id) {this.id = id;}public void setId(int id) {this.id = id;}public String getRoleName() {return roleName;}public void setRoleName(String roleName) {this.roleName = roleName;}public String getNote() {return note;}public void setNote(String note) {this.note = note;}public Role(int id, String roleName, String note) {this.id = id;this.roleName = roleName;this.note = note;}
}

View Code

  2、 RoleMapper接口继承JpaRepository

package com.wbg.springbootdemo.dao;import com.wbg.springbootdemo.entity.Role;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;@Repository
public interface RoleMapper extends JpaRepository<Role,Integer> {}

View Code

  3、RoleService

package com.wbg.springbootdemo.service;import com.wbg.springbootdemo.entity.Role;import java.util.List;
import java.util.Optional;public interface RoleService  {List<Role> listAll();void save(Role role);void update(Role role);void delete(int id);Optional<Role> findById(int id);
}

View Code

  4、RoleServiceImpl实现类

package com.wbg.springbootdemo.service.impl;import com.wbg.springbootdemo.dao.RoleMapper;
import com.wbg.springbootdemo.entity.Role;
import com.wbg.springbootdemo.service.RoleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;
import java.util.Optional;@Service
public class RoleServiceImpl implements RoleService {@Autowiredprivate RoleMapper roleMapper;/**** 查询全部* @return*/@Overridepublic List<Role> listAll() {return roleMapper.findAll();}/*** 添加* @param role*/@Overridepublic void save(Role role) {roleMapper.save(role);System.out.println("添加");}//如果有就修改、没有就添加
    @Overridepublic void update(Role role) {roleMapper.saveAndFlush(role);}/*** 删除* @param id*/@Overridepublic void delete(int id) {roleMapper.delete(new Role(id));}/*** 查询* @param id* @return*/@Overridepublic Optional<Role> findById(int id) {return  roleMapper.findById(id);}
}

View Code

  5、RoleController

package com.wbg.springbootdemo.controller;import com.wbg.springbootdemo.entity.Role;
import com.wbg.springbootdemo.service.RoleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;import java.util.List;
import java.util.Optional;@RestController
@RequestMapping("/role")
public class RoleController {@Autowiredprivate RoleService roleService;@GetMapping("/all")public List<Role> listAll(){return roleService.listAll();}@GetMapping("/delete")public List<Role> delete(int id){roleService.delete(id);return roleService.listAll();}@GetMapping("/getById")public Optional<Role> getById(int id){return roleService.findById(id);}@PostMapping("/insert")public List<Role> insert( Role role){roleService.save(role);return roleService.listAll();}@PostMapping("/update")public List<Role> update(Role role){roleService.update(role);return roleService.listAll();}}

View Code

第四步:index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<a href="/role/all">查询全部</a>
<br/>
<br/>
<form action="/role/getById"><p>id: <input type="number" name="id"/><input type="submit" value="单个查询"/></p>
</form><br/>
<br/>
<br/>
<form action="/role/delete"><p>id: <input type="number" name="id"/><input type="submit" value="删除"/></p>
</form>
<br/>
<br/>
<form method="post" action="/role/insert"><p>id:<input type="number" name="id"/></p><p>roleName:<input type="text" name="roleName"/></p><p>note:<input type="text" name="note"/></p><p><input type="submit" value="添加"/></p>
</form>
<br/>
<br/>
<form method="post" action="/role/update"><p>id:<input type="number" name="id"/></p><p>roleName:<input type="text" name="roleName"/></p><p>note:<input type="text" name="note"/></p><p><input type="submit" value="修改"/></p>
</form></body>
</html>

View Code

测试

demo:https://github.com/weibanggang/springboothibernate.git

posted @ 2018-12-31 13:50 韦邦杠 阅读(...) 评论(...) 编辑 收藏

简单使用Spring Boot+JpaRepository+hibernate搭建项目相关推荐

  1. Spring Boot Restful框架搭建和使用【持续更新中】

    2019独角兽企业重金招聘Python工程师标准>>> 1 Spring Boot Restful框架搭建 项目源码地址 2 SpringBoot框架使用技巧记录 2.1 pagea ...

  2. spring boot:从零开始搭建一个项目 - day 5 Mybatis plus代码自动生成器

    spring boot:从零开始搭建一个项目 - day 5 Mybatis plus代码自动生成器 一.Mybatis plus代码自动生成器 1.引入配置 2.创建Controller 3.执行m ...

  3. spring boot:从零开始搭建一个项目 - day 4 控制台输出日志美化 + swagger2

    spring boot:从零开始搭建一个项目 - day 4 控制台输出日志美化 + swagger2 一.logback.xml配置日志美化 二.集成swagger2 1.引入依赖 2.编写配置文件 ...

  4. spring boot:从零开始搭建一个项目 - day8 实现jwtToken验证

    锻炼不就是为了吃更多好吃的吗 --刚去完健身房然后开了包薯片=-= spring boot:从零开始搭建一个项目 - day8 实现jwtToken验证 一.生成token 二.重写拦截器 咳,书接上 ...

  5. spring boot:从零开始搭建一个项目 - day 7 springboot devtools热加载+MybatisPlus配置+kisso从入门到放弃

    spring boot:从零开始搭建一个项目 - day 7 springboot devtools热加载+MybatisPlus配置+kisso从入门到放弃 一.springboot devtool ...

  6. Spring Boot + Thymeleaf 创建web项目

    本篇文章将引导你创建一个简单的Spring Boot web程序示例,涉及到的组件有:嵌入的Tomcat + Thymeleaf 模板引擎,可执行的 JAR 文件包. 开发工具: 1.Spring B ...

  7. sm4 前后端 加密_这7个开源的Spring Boot前后端分离项目整理给你

    来源|公众号:江南一点雨 前后端分离已经开始逐渐走进各公司的技术栈,不少公司都已经切换到前后端分离开发技术栈上面了,因此建议技术人学习前后端分离开发以提升自身优势.同时,也整理了 7 个开源的 Spr ...

  8. Spring Boot + JSP 创建web项目

    虽然Spring Boot的官网不推荐使用JSPs,但是本篇文章还是带你实现Spring Boot + JSP创建一个简单的web项目.想要用Spring Boot + Thymeleaf实现web项 ...

  9. java spring hiberate_Java程序员:Spring Boot和Hibernate一起使用的技巧

    Hibernate不需要多介绍,它是Java中最受欢迎的ORM.同样,Spring Boot是功能最强大且易于使用的框架.本文并不是描述一些关于Hibernate或Spring Boot的用法,因为有 ...

  10. spring boot开发环境搭建

    软件152 程永绩 1.什么是springboot: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程. 该框架使用了特定的方式 ...

最新文章

  1. 图片剪切空指针崩溃问题在Android 6.0系统出现
  2. 转:c# 根据当前时间获取,本周,本月,本季度,月初,月末,各个时间段
  3. web service方法进行全文检索_SpringMVC(Web应用)配置教程终章项目实战
  4. Restful framework【第七篇】权限组件
  5. 科研实习 | 中国科学院深圳先进技术研究院徐坤老师课题组招聘客座实习生
  6. 【STM32】定时器相关函数和类型
  7. 使用URL在线语音合成
  8. android点击灰色背景图片,android button按键失去焦点和点击后改变背景图片
  9. 903计算机技术综合基础,北大903计算机技术综合基础考研真题、资料、参考书
  10. vrrp协议原理与应用
  11. Spring 经典高频面试题
  12. POJ 1088 滑雪 (动规)
  13. 设计模式-结构型模式(读书笔记)
  14. 简单Git入门本地仓库同步到远程GitHub仓库
  15. Asp.net core 中实现AOP面向切面编程
  16. DS18B20驱动详解(蓝桥杯单片机)
  17. 斐讯路由器使用说明,校园网破解,breed控制台,华硕固件
  18. 阿尔兹海默症AD最新研究进展(2021年7月)
  19. 微信小程序之PHP后端服务器数据库的连接处理
  20. 微服务架构之服务网关

热门文章

  1. 从零开始实现Adam优化算法
  2. android 屏蔽焦点,android – 如何在视图失去焦点时屏蔽EditText中的文本.
  3. java当前类路径_Java取得当前类的路径
  4. java制作大富翁游戏_JAVA大富翁游戏的设计+流程图+总结体设计图-论文.doc
  5. @Transactional注解属性(2)
  6. Unity Animation和Animator的区别
  7. php该怎么下载文件,php怎么实现下载文件?
  8. javascript 使用drop元素实现拖动(ondragstart、ondrag、 ondragend、ondragenter,ondragover、ondragleave、ondrop )
  9. html中label中的for属性
  10. 辗转相减法的发展应用-最大比例