SQLite+Hibernate No Dialect mapping for JDBC type: 0

Carsim2019与Simulink (Matlab2018b)联合仿真成功(超详细) Carsim与Simulink联合仿真成功 阅读详情

前几天做一个小系统,数据库选了SQLite,从网上下载了一个SQLite与Hibernate整合的方言类配进系统

import java.sql.Types;

import org.hibernate.Hibernate;
import org.hibernate.dialect.Dialect;
import org.hibernate.dialect.function.SQLFunctionTemplate;
import org.hibernate.dialect.function.StandardSQLFunction;
import org.hibernate.dialect.function.VarArgsSQLFunction;

public class SQLiteDialect extends Dialect {
 public SQLiteDialect() {
  super();
  registerColumnType(Types.BIT, "integer");
  registerColumnType(Types.TINYINT, "tinyint");
  registerColumnType(Types.SMALLINT, "smallint");
  registerColumnType(Types.INTEGER, "integer");
  registerColumnType(Types.BIGINT, "bigint");
  registerColumnType(Types.FLOAT, "float");
  registerColumnType(Types.REAL, "real");
  registerColumnType(Types.DOUBLE, "double");
  registerColumnType(Types.NUMERIC, "numeric");
  registerColumnType(Types.DECIMAL, "decimal");
  registerColumnType(Types.CHAR, "char");
  registerColumnType(Types.VARCHAR, "varchar");
  registerColumnType(Types.LONGVARCHAR, "longvarchar");
  registerColumnType(Types.DATE, "date");
  registerColumnType(Types.TIME, "time");
  registerColumnType(Types.TIMESTAMP, "timestamp");
  registerColumnType(Types.BINARY, "blob");
  registerColumnType(Types.VARBINARY, "blob");
  registerColumnType(Types.LONGVARBINARY, "blob");
  registerColumnType(Types.BLOB, "blob");
  registerColumnType(Types.CLOB, "clob");
  registerColumnType(Types.BOOLEAN, "integer");
  

  registerFunction("concat", new VarArgsSQLFunction(Hibernate.STRING, "",
    "||", ""));
  registerFunction("mod", new SQLFunctionTemplate(Hibernate.INTEGER,
    "?1 % ?2"));
  registerFunction("substr", new StandardSQLFunction("substr",
    Hibernate.STRING));
  registerFunction("substring", new StandardSQLFunction("substr",
    Hibernate.STRING));
  
 }

 public boolean supportsIdentityColumns() {
  return true;
 }

 public boolean hasDataTypeInIdentityColumn() {
  return false;
 }

 public String getIdentityColumnString() {
  return "integer";
 }

 public String getIdentitySelectString() {
  return "select last_insert_rowid()";
 }

 public boolean supportsLimit() {
  return true;
 }

 protected String getLimitString(String query, boolean hasOffset) {
  return new StringBuffer(query.length() + 20).append(query).append(
    hasOffset ? " limit ? offset ?" : " limit ?").toString();
 }

 public boolean supportsTemporaryTables() {
  return true;
 }

 public String getCreateTemporaryTableString() {
  return "create temporary table if not exists";
 }

 public boolean dropTemporaryTableAfterUse() {
  return false;
 }

 public boolean supportsCurrentTimestampSelection() {
  return true;
 }

 public boolean isCurrentTimestampSelectStringCallable() {
  return false;
 }

 public String getCurrentTimestampSelectString() {
  return "select current_timestamp";
 }

 public boolean supportsUnionAll() {
  return true;
 }

 public boolean hasAlterTable() {
  return false;
 }

 public boolean dropConstraints() {
  return false;
 }

 public String getAddColumnString() {
  return "add column";
 }

 public String getForUpdateString() {
  return "";
 }

 public boolean supportsOuterJoinForUpdate() {
  return false;
 }

 public String getDropForeignKeyString() {
  throw new UnsupportedOperationException(
    "No drop foreign key syntax supported by SQLiteDialect");
 }

 public String getAddForeignKeyConstraintString(String constraintName,
   String[] foreignKey, String referencedTable, String[] primaryKey,
   boolean referencesPrimaryKey) {
  throw new UnsupportedOperationException(
    "No add foreign key syntax supported by SQLiteDialect");
 }

 public String getAddPrimaryKeyConstraintString(String constraintName) {
  throw new UnsupportedOperationException(
    "No add primary key syntax supported by SQLiteDialect");
 }

 public boolean supportsIfExistsBeforeTableName() {
  return true;
 }

 public boolean supportsCascadeDelete() {
  return false;
 }
}

但是在使用中抛了一个异常

org.hibernate.MappingException: No Dialect mapping for JDBC type: 0
到java.sql.Types类里看了一下这个0的类型是指null

public final static int NULL  =   0;

解决方法:

在这个类的构造方法里加一句 

registerHibernateType(Types.NULL, "null");

 

揭秘大数据领域数据产品的开发流程 随着企业数字化转型加速,数据产品已成为驱动业务增长的核心载体。不同于传统软件产品,数据产品以数据为核心生产要素,通过数据采集、处理、分析与可视化,为用户提供决策支持或智能化服务。本文旨在系统性拆解数据产品开发的全生命周期,涵盖需求分析、数据工程、模型构建、产品设计、上线运维等关键环节,揭示各阶段的技术原理、实施路径与最佳实践,帮助技术团队与产品团队建立标准化开发流程。核心概念:定义数据产品本质,对比传统软件产品差异技术体系:拆解数据采集、处理、建模、可视化的技术栈与算法原理。 阅读详情

相关推荐

【量化入门】Tushare库获取公募基金的历史净值

在本文中,我们将介绍如何使用Python的Tushare库获取公募基金的历史净值。

木头大左的博客 1107

No Dialect mapping for JDBC type :0

data service 架构:spring Roo + hibernate+mysql 在调用stored procedure的时候,出现:No Dialect mapping for JDBC type:0 通过反编译java.sql.Types.java得知type:0 对应于NULL     原因是java中的java.sql.Types中定义了NULL的解析,但是hiber...

hebeind100的博客 6972

【python基础】一文掌握 Jupyter Notebook 的使用(超级详细!)

是一个非营利组织,致力于为多种编程语言的交互式计算开发开源软件、开放标准和服务。Jupyter 于 2014 年由 Fernando Pérez 从IPython衍生出来,支持几十种编程语言的执行环境。Jupyter 项目主要开发并支持(.ipynb 文件格式)、JupyterHub和JupyterLab等交互式计算产品。

数据知道的博客 1万+

学习记录701@org.hibernate.MappingException: No Dialect mapping for JDBC

使用spring data jpa 时报错:javax.persistence.PersistenceException: org.hibernate.MappingException: No Dialect mapping for JDBC type: 0。就是这个Null,导致是spring data jpa无法解析,在数据库中sql是可以执行的,奇怪的是,我其他字段查出来也有Null的,但是报错。当执行query.getResultList();但是在数据库中sql是可以执行的。

教练我想学编程 764

mysql数据库遇到:org.hibernate.MappingException: No Dialect mapping for JDBC type: -1

在做web项目时,用到了mysql数据库和ssh架构,登录系统后,做查询时候,查询出来的list应该为null,但结果却报下面的错误: org.hibernate.MappingException: No Dialect mapping for JDBC type: -1 分析原因:hibernate无法将指定的数据库类型转换为java中的类型而导致的错误。 解决方法:自定义一个mysql方...

天高任鸟飞,海阔凭鱼跃 444

No Dialect mapping for JDBC type 错误分析

出现这个问题可能的原因: 1、数据库字段类型和JAVA类型不匹配。 2、Hibernate中错误地配置了数据库方言。 原因1解决方法: 查看java.sql.Types找到对应的类型。 1 ARRAY 2003 2 BIGINT -5 3 BINARY -2 4 BIT -7 5 BLOB 2004 6

天河北的梅果糖 1万+

nested exception is org.hibernate.MappingException:No Dialect mapping for JDBC type -16解决方案

nested exception is org.hibernate.MappingException:No Dialect mapping for JDBC type -16解决方案 解决方案: 1.检查方言映射的配置文件 2.如果用的 是sqlserver数据库,hibernate映射不了nvarchar(MAX)类型 ...

weixin_39400186的博客 1934

LeShare Shop WePy会员系统设计:会员卡、折扣与积分体系全解析

LeShare Shop WePy是基于微信小程序的在线商城解决方案,其会员系统通过会员卡、折扣与积分三大核心模块,为用户提供完整的会员权益体验。本文将深入解析该系统的设计架构与功能实现,帮助开发者快速掌握会员体系的构建方法。 ## 会员卡体系:视觉与功能的双重设计 会员卡作为会员身份的核心载体,在LeShare Shop WePy中采用了动态视觉设计与功能模块化的实现方式。系统通过`src/

gitblog_00806的博客 374

美容院的会员等级怎么设置?

会员等级功能云上铺美容院管理系统的一个重要功能, 在添加会员之前需要设置会员等级,会员等级可以帮助商家明确会员的消费,储值等情况,针对性的做会员营销,会员优惠。随着会员等级的提升,会员所享受的折扣和优惠也会增大,从而带动商家的发展,下面讲解一下会员等级的设置方法以及具体含义。 会员等级主要是设置不同等级会员享受不同的折扣规则、积分规则、初始次数、会员卡有效时间等级属性。新增会员时必须选择对应的会员等级,其会员等级在新增时所拥有的初始余额,初始积分,初始次数,限时卡次数,有效时间,后期无法修改。 ...

szzhiluo的博客 682

积分 规则引擎_如何制作异业联盟积分会员卡

上一篇:水滴智店:异业联盟商家如何合作共享资源​zhuanlan.zhihu.com积分共享模式在国外的实体商业中,积分这个概念的出现和普及要更早,消费者认知普遍更加成熟。近几年在国内,随着电商和服务App的流行, 在越来越多的品牌和商家中也出现了很多成功的积分案例。从公开数据看,电信运营商一般以营业额3%做积分回馈;航空业比例也高达8%~10%;银行信用卡1%~2%;其他各行各业也都有相当 比例...

weixin_39788572的博客 682

微信平台会员卡应用源码系统 带完整的安装代码包以及搭建教程

微信会员卡作为一种创新的营销方式,不仅能为消费者提供便捷的会员服务,还能帮助商家更好地管理会员信息,提升营销效果。系统提供丰富的数据报表,帮助商家分析会员消费习惯、活跃度等数据,为商家制定更精准的营销策略提供数据支持。系统支持会员信息的录入、修改、查询等功能,帮助商家实现会员信息的集中管理,提升会员服务的精准性。商家可通过系统向会员推送最新的活动信息、优惠信息等,增强与会员的互动,提升品牌知名度。商家可设定积分规则,实现会员消费积分、积分兑换礼品等功能,提高会员的黏性和活跃度。

2301_77558505的博客 897

微信小程序分析送积分功能如何实现_会员卡+积分商城+储值,小程序会员营销套路你get到了吗?...

互联网行业的竞争,其实就是对用户和流量的争夺,谁掌握了用户和流量,就具备了市场核心竞争力。相对于普通用户而言,“会员”就是一个粘性更高、更具价值的群体。挖掘会员的需求,实现针对会员的精准营销,其实质是建立起与会员的情感连结,从而打造终身顾客价值。一、为什么要做会员营销?在会员营销的概念中,会员营销就是一种基于会员管理的营销方法。商家通过将普通用户转化为会员,分析会员消费信息,挖掘顾客的后续消费力、...

weixin_42364551的博客 2242

实体店会员卡系统怎么做

综上所述,一个优秀的会员充值消费管理系统,需在积分与优惠券管理的基础上,不断优化用户体验,强化个性化服务,保障数据安全,方能在激烈的市场竞争中脱颖而出,助力商家实现业绩的持续增长。此外,系统应支持多渠道集成,无论是线上商城、线下门店还是社交媒体平台,都能实现数据同步与会员权益共享,让会员无论在哪个渠道消费,都能享受到一致且便捷的会员服务。同时,构建完善的会员等级体系,根据会员的消费金额、积分累积等维度划分等级,不同等级的会员享受不同的折扣力度、专属礼品及服务特权,以此激励会员持续消费并追求更高的会员等级。

2401_89471373的博客 657

会员卡系统接入微信卡券那些事儿

前言 在中国日常生活中,微信使用的频率以及占用的时长最多。东家有自己的会员卡系统,在移动互联网时代,线下门店使用还需客户拿着物理会员卡太不方便了,于是接入微信卡券提上了计划的日程。在接入的过程中,碰到了一些坑,无论是使用姿势不对还是其它,网上搜索了没找到解决问题的答案又无法寻求其他人的帮助,这个时候是最崩溃的,还是先记下来,也许可以帮助别人减少这些不必要花的时间。 会员卡与卡券 什么是...

weixin_30265103的博客 470

会员卡积分收银系统源码 带完整搭建教程

好消息,好消息,今天给大家带来的是一款会员卡积分收银系统源码,这款系统的运用是十分广泛啊,现在市面基本上所有的商店都有办会员卡这一说,这款小程序支持多个门店,同时管理,自由切换,十分方便。会员卡积分收银小程序的功能;

codeji的博客 1164

微信公众平台卡劵功能接入指南

文章目录1. 微信卡券功能介绍2. 申请方式2.1 公众平台申请2.2 开放平台申请3. 申请条件3.1 公众平台条件3.2 开放平台条件4. 申请种类、类目、商户类型4.1 开放种类4.2 开放类目4.3 开放商户类型5. 申请流程及步骤5.1 申请流程5.2 申请步骤5.2.1 公众平台申请步骤5.2.2 开放平台申请步骤6. 开发流程6.1 制作普通卡券通过微信公众平台制作(免开发)6.2 卡券投放6.3 卡券核销扩展微信《卡券功能申请类目与资质审核要求》微信《卡券违规处罚及清退规则》 1. 微信卡券

zcmain的专栏 8734

超级会员卡积分收银系统源码+支持多端管理 带完整的安装代码包以及搭建部署教程

针对传统会员管理系统的痛点,全新研发的超级会员卡积分收银系统提供多终端管理解决方案。系统支持PC、移动端等多平台操作,具备灵活的积分规则设置、多级会员管理和智能收银功能,集成主流支付方式并实时监控库存。强大的数据分析模块可生成各类经营报表,采用先进加密技术保障数据安全。

2501_92361621的博客 852

微信会员卡积分规则

根据客户使用场景经验,参考了滴滴快车的规则,设定如下 1.每消费2元,换1积分,单笔最高50积分 2.激活送10积分 3.每使用100积分,抵扣1元 4.订单满10元可用,单笔上限1000积分 5.享受折扣9.9折 转载于:https://www.cnblogs.com/txw1958/p/membercard-score.html...

weixin_30633507的博客 479

多门店会员卡商家收款小程序系统架构分析源码实例交付

多门店会员卡商家收款小程序为商家提供了集会员管理、多门店运营、便捷收款等功能于一体的综合性解决方案。本文将全面深入地介绍该小程序的各项功能、运营模式、优势特点以及技术实现等方面,助力商家和相关从业者深入了解这一数字化利器。

zhousongsky的博客 1109

2026毕设springboot+vue超市会员卡管理系统论文+程序

本项目开发一套基于SpringBoot+Vue的轻量级会员积分管理系统,针对中小商户需求,实现积分发行、兑换、营销闭环。系统采用前后端分离架构,包含会员卡管理、积分商城、数据分析等功能模块,解决高并发兑换超卖、积分贬值等痛点。技术方案使用Redis+Lua脚本保障数据一致性,支持2000并发TPS≥800。研究成果包括开源系统源码、技术文档及性能测试报告,助力商户降低90%系统部署成本,预计提升会员复购率15%。开发环境为JDK1.8+MySQL5.7+Tomcat7.0,采用Maven构建。

sheji1305的博客 704

超级会员卡积分收银系统源码,带完整的搭建部署以及源代码包

该系统提供三端协同的智慧零售解决方案,包含收银台端(高效交易处理)、会员端(微信小程序互动)和管理后台(全功能管理)。核心亮点:1)灵活会员积分体系,支持多种卡券类型和自定义积分规则;2)精准营销工具,含优惠券系统、消费提醒和会员等级特权;3)多维经营数据分析,提供销售统计、会员画像等报表支持决策。通过移动化会员服务和数据驱动运营,有效提升商家管理效率与客户粘性。

春哥开源研究所的博客 214

LCD.rar_HT1621测试每_段 LCD

HT1621液晶显示测试,测试每段、测试每个字

Claude Desktop for Windows x64 Version 0.9.2

Claude Desktop for Windows x64 Version 0.9.2

上一篇: addChild()的区别addChildAt()
下一篇: Win7自动更新导致键盘失灵
xiangliling
博客等级 码龄20年 0粉丝 29原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值