解决springboot+整合h2数据库,自动建表不支持驼峰命名规则的解决办法

本文主要是介绍解决springboot+整合h2数据库,自动建表不支持驼峰命名规则的解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题描述:使用springboot+h2(内嵌式内存数据库),定义的User实体,可以动态生成表users,并完成crud操作,而定义的EurekaUser的实体,无法动态生成表eurekauser表,报xxxxxxx,no statment sql 等异常。

解决办法:

方法一:在定义的实体上面添加注解@Table(name=‘eurekauser’),指定要映射的表名。

package com.ljf.weifuwu.springcloud.test.model;import javax.persistence.*;
import java.math.BigDecimal;@Entity
@Table(name="eurekauser")
public class EurekaUser {@Id@GeneratedValue(strategy = GenerationType.AUTO)private Long id;@Columnprivate String username;@Columnprivate String name;@Columnprivate Short age;@Columnprivate BigDecimal balance;public Long getId() {return this.id;}public void setId(Long id) {this.id = id;}public String getUsername() {return this.username;}public void setUsername(String username) {this.username = username;}public String getName() {return this.name;}public void setName(String name) {this.name = name;}public Short getAge() {return this.age;}public void setAge(Short age) {this.age = age;}public BigDecimal getBalance() {return this.balance;}public void setBalance(BigDecimal balance) {this.balance = balance;}
}

Respository:

@Repository
public interface EurekaUserRespository extends JpaRepository<EurekaUser, Long> {
}

data.sql:

insert into eurekauser(id,username, name, age, balance) values(1,'user1', '张三', 20, 100.00);
insert into eurekauser(id,username, name, age, balance) values(2,'user2', '李四', 20, 100.00);
insert into eurekauser(id,username, name, age, balance) values(3,'user3', '王五', 20, 100.00);
insert into eurekauser(id,username, name, age, balance) values(4,'user4', '马六', 20, 100.00);=

schema.sql:

drop table eurekauser if exists;
create table eurekauser(id bigint generated by default as identity,username varchar(40),name varchar(20),age int(3),balance decimal(10,2), primary key(id)
);

访问:http://localhost:7900/simpleuser/1

方法二:定义的实体EurekaUser不安驼峰命名规则,将两个词当成一个词Eurekauser。

package com.ljf.weifuwu.springcloud.test.model;import javax.persistence.*;
import java.math.BigDecimal;@Entity
//@Table(name="eurekauser")
public class Eurekauser {@Id@GeneratedValue(strategy = GenerationType.AUTO)private Long id;@Columnprivate String username;@Columnprivate String name;@Columnprivate Short age;@Columnprivate BigDecimal balance;public Long getId() {return this.id;}public void setId(Long id) {this.id = id;}public String getUsername() {return this.username;}public void setUsername(String username) {this.username = username;}public String getName() {return this.name;}public void setName(String name) {this.name = name;}public Short getAge() {return this.age;}public void setAge(Short age) {this.age = age;}public BigDecimal getBalance() {return this.balance;}public void setBalance(BigDecimal balance) {this.balance = balance;}
}

Respository:

package com.ljf.weifuwu.springcloud.test.respository;import com.ljf.weifuwu.springcloud.test.model.Eurekauser;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;@Repository
public interface EurekaUserRespository extends JpaRepository<Eurekauser, Long> {
}

datasql:

insert into eurekauser(id,username, name, age, balance) values(1,'user1', '张三', 20, 100.00);
insert into eurekauser(id,username, name, age, balance) values(2,'user2', '李四', 20, 100.00);
insert into eurekauser(id,username, name, age, balance) values(3,'user3', '王五', 20, 100.00);
insert into eurekauser(id,username, name, age, balance) values(4,'user4', '马六', 20, 100.00);

schema.sql:

drop table eurekauser if exists;
create table eurekauser(id bigint generated by default as identity,username varchar(40),name varchar(20),age int(3),balance decimal(10,2), primary key(id)
);

访问:http://localhost:7900/simpleuser/1

 

这篇关于解决springboot+整合h2数据库,自动建表不支持驼峰命名规则的解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1013240

相关文章

Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

《Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码》:本文主要介绍Java中日期时间转换的多种方法,包括将Date转换为LocalD... 目录一、Date转LocalDateTime二、Date转LocalDate三、LocalDateTim

如何配置Spring Boot中的Jackson序列化

《如何配置SpringBoot中的Jackson序列化》在开发基于SpringBoot的应用程序时,Jackson是默认的JSON序列化和反序列化工具,本文将详细介绍如何在SpringBoot中配置... 目录配置Spring Boot中的Jackson序列化1. 为什么需要自定义Jackson配置?2.

Java中使用Hutool进行AES加密解密的方法举例

《Java中使用Hutool进行AES加密解密的方法举例》AES是一种对称加密,所谓对称加密就是加密与解密使用的秘钥是一个,下面:本文主要介绍Java中使用Hutool进行AES加密解密的相关资料... 目录前言一、Hutool简介与引入1.1 Hutool简介1.2 引入Hutool二、AES加密解密基础

Pyserial设置缓冲区大小失败的问题解决

《Pyserial设置缓冲区大小失败的问题解决》本文主要介绍了Pyserial设置缓冲区大小失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录问题描述原因分析解决方案问题描述使用set_buffer_size()设置缓冲区大小后,buf

PyInstaller打包selenium-wire过程中常见问题和解决指南

《PyInstaller打包selenium-wire过程中常见问题和解决指南》常用的打包工具PyInstaller能将Python项目打包成单个可执行文件,但也会因为兼容性问题和路径管理而出现各种运... 目录前言1. 背景2. 可能遇到的问题概述3. PyInstaller 打包步骤及参数配置4. 依赖

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

SpringBoot实现微信小程序支付功能

《SpringBoot实现微信小程序支付功能》小程序支付功能已成为众多应用的核心需求之一,本文主要介绍了SpringBoot实现微信小程序支付功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作... 目录一、引言二、准备工作(一)微信支付商户平台配置(二)Spring Boot项目搭建(三)配置文件

解决SpringBoot启动报错:Failed to load property source from location 'classpath:/application.yml'

《解决SpringBoot启动报错:Failedtoloadpropertysourcefromlocationclasspath:/application.yml问题》这篇文章主要介绍... 目录在启动SpringBoot项目时报如下错误原因可能是1.yml中语法错误2.yml文件格式是GBK总结在启动S

Spring中配置ContextLoaderListener方式

《Spring中配置ContextLoaderListener方式》:本文主要介绍Spring中配置ContextLoaderListener方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录Spring中配置ContextLoaderLishttp://www.chinasem.cntene

java实现延迟/超时/定时问题

《java实现延迟/超时/定时问题》:本文主要介绍java实现延迟/超时/定时问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java实现延迟/超时/定时java 每间隔5秒执行一次,一共执行5次然后结束scheduleAtFixedRate 和 schedu