spingboot集成jpa(一)
springboot + jpa 练习
spingboot集成jpa(一):最基本的环境搭建 spingboot集成jpa(二):使用单元测试
1. pom.xml中添加依赖
<!-- jdbc --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency>
2. application.propertis添加配置
spring.datasource.url=jdbc:mysql://localhost:3306/test spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.jpa.properties.hibernate.hbm2ddl.auto=update spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect spring.jpa.show-sql=true
3. 实体类User.java创建
package com.king.entity;import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table;@Entity @Table(name="m_user") public class User{@Id@Column(name="ID")private String id;@Column(name="user_code")private String code;@Column(name="user_name")private String username;@Column(name="user_pwd")private String password;@Column(name="update_tmsp")private Date updateTime;public String getId() {return id;}public void setId(String id) {this.id = id;}public String getCode() {return code;}public void setCode(String code) {this.code = code;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public Date getUpdateTime() {return updateTime;}public void setUpdateTime(Date updateTime) {this.updateTime = updateTime;}@Overridepublic String toString() {return "User [id=" + id + ", code=" + code + ", username=" + username+ ", password=" + password + ", updateTime=" + updateTime + "]";} }
4. dao层创建UserDao.java继承JpaRepository
package com.king.dao;import org.springframework.data.jpa.repository.JpaRepository;import com.king.entity.User;public interface UserDao extends JpaRepository<User, String>{}
5. service层创建查询方法,并装备dao中的方法
UserService接口
package com.king.service;import java.util.List; import com.king.entity.User;public interface UserService {public User findOne(String id);public List<User> findAll(); }
UserService实现类
package com.king.service.impl;import java.util.List;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.king.dao.UserDao; import com.king.entity.User; import com.king.service.UserService;@Service("userService") public class UserServiceImpl implements UserService{@Autowiredprivate UserDao userDao;@Overridepublic User findOne(String id) {return userDao.findOne(id);}@Overridepublic List<User> findAll() {return userDao.findAll();} }
6. controller层查询
package com.king.controller;import java.util.List;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;import com.king.entity.User; import com.king.service.UserService;@RestController public class UserController {@Autowiredprivate UserService userService;@RequestMapping("/queryUser")public User getUser(String id){return userService.findOne(id);}@RequestMapping("/queryAll")public List<User> getAll(){return userService.findAll();}}
7. App中配置扫描
package com.king.app;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.domain.EntityScan; import org.springframework.context.annotation.ComponentScan; import org.springframework.data.jpa.repository.config.EnableJpaRepositories;@ComponentScan(basePackages={"com.king.controller","com.king.service"}) @EnableJpaRepositories(basePackages="com.king.dao") @EntityScan(basePackages="com.king.entity") @EnableAutoConfiguration public class App {public static void main(String[] args) {SpringApplication.run(App.class, args);} }
到此,所有的配置完成。
测试1:根据id查询单个对象,返回json对象
测试2: 测试查询所有对象,返回json数组
转载于:https://www.cnblogs.com/30go/p/8440343.html
spingboot集成jpa(一)相关推荐
- Spring Boot集成JPA的Column注解命名字段无效的问题
偶然发现,Spring Boot集成jpa编写实体类的时候,默认使用的命名策略是下划线分隔的字段命名. Spring Boot版本:1.5.4.release 数据表: id int, userNam ...
- spring jpa 多数据源_Spring同时集成JPA与Mybatis
ORM ORM的出现,使得关系型数据库映射成了对象:简单来说,有了ORM之后,JAVA程序员从面向JDBC编程转化成面向JAVA对象编程. Spring ORM Spring对ORM的解决方案主要体现 ...
- java框架mangedv,Spring集成JPA后,报“Not an managed type: class x.x.x
以前的Spring脚手架项目,因业务需要,是基于多数据源 and不同方言的数据库的,对于普通项目过于复杂了, 于是重新搭了个单数据源的,用STS新建完毕,这是项目目录, 加上配置之后,先列下appli ...
- Jpa第一话 -- Springboot集成Jpa和Mybatis以及Jpa的最全使用
本文主要记录spring-boot-starter-data-jpa的详细使用. 在做一些小型无并发的项目时,说实话第一个想到的就是Jpa,一个Entity走天下. 1.Spring Jpa的使用 基 ...
- spring集成jpa【为什么有 persistant.xml 文件呢?】
原文地址: http://www.cnblogs.com/javahuang/archive/2012/12/19/2824633.html spring集成JPA的其中一种方式 JPA和hibern ...
- 类型 jpa mysql_Spring Boot集成JPA
前言 第一次使用 Spring JPA 的时候,感觉这东西简直就是神器,几乎不需要写什么关于数据库访问的代码一个基本的 CURD 的功能就出来了.下面我们就用一个例子来讲述以下 JPA 使用的基本操作 ...
- Spring集成JPA提示Not an managed type
在做Spring与JPA集成时,出现问题如下: Caused by: java.lang.IllegalArgumentException: Not an managed type: class co ...
- SpringBoot集成JPA根据实体类自动生成表
数据库是mysql,在application.properties中的写法如下: 原来配置这样的时候确实可以生产表的 #spring.jpa.hibernate.ddl-auto=update 多方查 ...
- SpringBoot集成JPA
2019独角兽企业重金招聘Python工程师标准>>> 1.创建新的maven项目 (本文由开源中国-千里明月-原创 ,https://my.oschina.net/u/349086 ...
最新文章
- Redis命令——哈希(Hash)
- DOM-based XSS Test Cases
- jvm 崩溃日志设置_记一次JVM疯狂GC导致CPU飙高的问题解决
- TESTb需要向至少十几家应用商店提交上线审核,且每个应用商店要求的资料可能都不一样,异常繁琐
- 信号转化java_Java基础知识回顾-7
- Lucene分析过程指南
- MySQL数据库常用命令_常用SQL语句及命令_MySQL常用语句
- C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区...
- 【4】协同过滤算法的原理与实现
- 安卓学习笔记17:常用控件 - 编辑框
- python matplotlib 图片模糊问题
- Dijkstra与Floyd算法
- quot在c语言里用法,C语言中“#”和quot;##quot;的用法
- 云计算机房设备清单报价,射阳县高级中学云计算机房建设预算.doc
- 踫撞检测 之一 — 关于分离轴理论的解释(Separating Axis Theorem (SAT) Explanation)(完整翻译)
- 好书推荐之《不能承受的生命之轻》 隐私策略(Privacy policy)
- redis哨兵模式搭建配置(一主三从三哨兵)
- 根式进入计算机的方法
- P1134 高精度阶乘
- 创客匠人教您实现流量变现
热门文章
- 最简单的教程:在Ubuntu操作系统里安装Docker
- One Order行项目里Item Category是怎么计算出来的
- android4.0 菜单,三大主流安卓4.0界面解析 MIUI最实用
- linux下cpu opencl加速,GPU挑战CPU!详解CUDA+OpenCL威力
- 申报控件检测未通过_详解高企申报未通过原因!
- win7系统未响应卡住_电脑怎么修复win7系统 电脑修复win7系统方法【教程详解】...
- if else if语句的用法python_Python笔记3---if语句、if-elif-else 结构、使用if语句处理列表...
- bootstrap后台模板_免费bootstrap后台管理系统模板源码 网站后台模板_后台管理界面...
- arch linux键盘布局,Arch Linux的安装、配置、优化及美化(一)
- java mvc增删改查_springmvc-CRUC增删改查