hibernate

CKEditor 5 + SpringBoot实战(三):SpringData JPA数据持久化

℡╲_俬逩灬. 提交于 2020-08-20 01:28:03
在本系列的文章中,我将介绍如何在Spring Boot Application中使用CKEditor编辑器。介绍的内容包括基本环境的搭建,文件上传,SpringData JPA数据持久化,CKEditor5的安装,CKEditor图片上传,CKEditor插入视频,获取/设置CKEditor内容等。 项目源码 本系列文章的项目源码同步更新至 码云 和 Github ,你可以任选其一下载源码到本地。项目地址如下: 码云: https://gitee.com/ramostear/CKEditor5-SpringBoot Github: https://github.com/ramostear/CKEditor5-SpringBoot 你也可以通过Git命令行工具下载项目源码,命令如下(二者任选其一): git clone https://gitee.com/ramostear/CKEditor5-SpringBoot.git git clone https://github.com/ramostear/CKEditor5-SpringBoot.git 接上篇内容,本篇的主要内容是引入MySQL数据库驱动依赖和SpringData JPA依赖,然后创建内容实体,并完成数据持久层(DAO)和业务逻辑层(Service)相关代码的设计和实现。 引入依赖 前面的内容中我们分析过

NB-IOT系列专题1:低功耗能力

一世执手 提交于 2020-08-19 23:24:18
   友情提示,博主第一篇正式文章,在文字排版上可能有些不足之处,目前优化了电脑观看体验,手机端等我熟悉了Markdown语法会再次优化!!!    本文主要介绍灵龙芯NB-IOT通讯模组的低功耗能力,下文中涉及到的知识除AT指令外,基本通用于任何NB模组。 介绍 关于PSM 关于eDRX 三种模式区别 PSM PSM唤醒 PSM相关指令 PSM特性 说明 eDRX eDRX简介 eDRX模式 PTW eDRX配置相关指令 应用示例 PSM模式 开启/关闭PSM模式 PSM和UDP测试示例 PSM和UDP测试示例(RAI Flag) eDRX模式 开启eDRX模式 设置eDRX周期为指定值 设置eDRX周期为20.48s,PTW为10.24s 关闭eDRX模式 结语 介绍   NB-IoT 支持三种省电模式:PSM (Power Saving Mode,省电模式)、DRX(Discontinuous Reception,不连续接收模式),eDRX(Extended DRX,扩展不连续接收模式)。   NB 中采用了 PSM(power saving mode)和 eDRX(extended Discontinuous Reception)来节省功耗。在 PSM 模式下,终端无需接收 paging 以检测是否有下行服务,而 eDRX 模式相对于 DRX,具有更长的寻呼检测周期

HELLO WORLD(总结与开始)

戏子无情 提交于 2020-08-19 01:01:40
这是我的第一篇CSDN文章。 我一直认为自己不是一个CRUD的程序员,我热爱写代码,我愿意搞清楚代码的每一个细节!从我毕业开始,然而,我已经工作将近5年了。 我毕业的时候,我就想,把大学4年的课程串起来。从硬盘开始,当一条指令被当作一个进程,从他被分配进程控制块,到分配内存,从他的状态变成运行态,被cpu取出,从cpu内的寄存器到内存,最终到显示器的每个细节搞清楚。 但是,当我自己第一次为这个过程画出一张草图的时候,已经是2018年了。16年开始工作,到18年,我经历了第一次离家,第一次找工作,太多的第一次让我感觉社会的复杂,也让我感觉疲惫。不过,还好,我扛下来了。 现在,我感觉,我的这张图已经开始往各个方面扩充了,我的一条指令已经编程了java语言。我会模拟一个java类经过编译后,变成一个class文件。当他被栈当作一个线程被运行时候,栈会访问堆里面的对象,对象有对象头,对象头会有锁信息,当他是一个多线程的程序的时候,当两个进程协作的过程中,我会通过锁来加代码。从而形成《操作系统》中,管程的概念。我也知道了用JVM的角度来了解java语言,比如,继承,我知道了怎么从技术的角度去看待多态的概念,而不是记住他! 上面是从内说,那么现在说说架构的东西,我自己实现了一个小的tomcat,实现过一个小型的hibernate,当然spring的aop我也手动实现过

如何把 jpa 实体 生成json格式

情到浓时终转凉″ 提交于 2020-08-18 08:41:55
引用的jar包 <dependency> <groupId> com.vladmihalcea </groupId> <artifactId> hibernate-types-5 </artifactId> <version> 2.9.10 </version> </dependency> 类前引用 @TypeDef ( name = "json" , typeClass = JsonStringType. class ) 字段前引用 @Type ( type = "json" ) @Column ( columnDefinition = "json" ) private Object otherProps ; 来源: oschina 链接: https://my.oschina.net/u/3677751/blog/4305586

面试准备季——MyBatis 面试专题(含答案)

穿精又带淫゛_ 提交于 2020-08-18 03:44:30
写在前面:2020年面试必备的Java后端进阶面试题总结了一份复习指南在Github上,内容详细,图文并茂,有需要学习的朋友可以Star一下! GitHub地址: https://github.com/abel-max/Java-Study-Note/tree/master 1、什么是 Mybatis? (1)Mybatis 是一个半 ORM(对象关系映射)框架,它内部封装了 JDBC,开发时只需要关注 SQL 语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement 等繁杂的过程。程序员直接编写原生态 sql,可以严格控制 sql 执行性能,灵活度高。 (2)MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO 映射成数据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 (3)通过 xml 文件或注解的方式将要执行的各种 statement 配置起来,并通过java 对象和 statement 中 sql 的动态参数进行映射生成最终执行的 sql 语句,最后由 mybatis 框架执行 sql 并将结果映射为 java 对象并返回。(从执行 sql 到返回 result 的过程)。 2、Mybaits 的优点: (1)基于 SQL 语句编程,相当灵活,不会对应用程序或者数据库的现有设计造成任何影响,SQL 写在

浅析 VO、DTO、DO、PO 的概念、区别和用处!

此生再无相见时 提交于 2020-08-17 17:25:17
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 本篇文章主要讨论一下我们经常会用到的一些对象:VO、DTO、DO和PO。由于不同的项目和开发人员有不同的命名习惯,这里我首先对上述的概念进行一个简单描述,名字只是个标识,我们重点关注其概念: 概念: VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。 DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。 DO(Domain Object):领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。 PO(Persistent Object):持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久层是关系型数据库,那么,数据表中的每个字段(或若干个)就对应PO的一个(或若干个)属性。 模型: 下面以一个时序图建立简单模型来描述上述对象在三层架构应用中的位置 用户发出请求(可能是填写表单),表单的数据在展示层被匹配为VO。 展示层把VO转换为服务层对应方法所要求的DTO

Why left join on CriteriaQuery doesn't filter results?

拈花ヽ惹草 提交于 2020-08-17 11:50:46
问题 I have two entities, User and Roles each one with active boolean parameter and ManyToMany relationship. This boolean parameter is used for logical delete. Why does the result include inactive Roles when I run this query below? CriteriaBuilder builder = em.getCriteriaBuilder(); CriteriaQuery<User> query = builder.createQuery(User.class); //Select Root<User> user = query.from(User.class); //Join SetJoin<User, Role> role = user.joinSet("roles", JoinType.LEFT); Predicate rolesActivePredicate =

连mybits工作原理都不懂,你敢说你自己会java?

隐身守侯 提交于 2020-08-17 09:23:39
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 一、相较于Hibernate,mybatis的优势在哪里? Hibernate缺点: 1、运行效率低,内存占用比较严重 2、针对单一对象的增删改查,适合Hibernate,而Hibernate在批量操作时处于弱势 3、虽然Hibernate引入一二级缓存、lazyload、查询缓存等更多优化空间(对于那些改动 不大且经常使用的数据,可将他们放入缓存中),但Hibernate对于持久层封装过于完 整,导致开发人员无法对sql进行优化,不适用于大型项目 mybatis优点: 1、代码量大大减少,开发效率高 2、 MyBatis相当灵活,SQL写在XML里,从程序代码中彻底分离,降低耦合度,便于统 一管理和优化,并可重用 3、运行效率高 二、mybatis原理 下面是mybatis的一个原理图,看懂这个图对理解mybatis工作原理很重要: 上面的原理图看的不是很清晰,下面再详细介绍一下mybatis的主要成员: 1、Configuration MyBatis所有的配置信息都保存在Configuration对象之中,配置文件的大部分配置都会存储到该类中 2、SqlSession 作为MyBatis工作的主要顶层API,表示和数据库交互时的会话,完成必要数据库增删改查功能 3

23种设计模式-----行为模式

↘锁芯ラ 提交于 2020-08-17 04:36:09
行为模式: 关注系统中对象之间的相互交互,研究运行时对象之间的相互通信和协作,明确对象职责 1.模板方法模式(template method) 定义了一个操作中的算法 骨架 ,将某些步骤延迟到子类中实现。这样,新的子类可以在不改变一个算法结构的前提下重新定义该算法的某些特定步骤。 即:处理步骤父类中定义好,具体实现延迟到子类中定义。 开发中:数据库访问的封装、Junit单元测试、servlet中doGet/doPost方法调用、Hibernate中模板程序等等 银行案例: 1 public abstract class BankTemplateMethod { 2 3 // 具体方法 4 public void takeNumber() { 5 System.out.println("取号排队" ); 6 } 7 8 // 办理具体业务 、钩子方法 9 public abstract void transact(); 10 public void evaluate() { 11 System.out.println("反馈评分" ); 12 } 13 14 // 模板方法 15 public final void process() { 16 this .takeNumber(); 17 18 this .transact(); 19 20 this .evaluate(); 21