![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 85
老年程序员
命运就是你身边的人,善待命运,善待你身边的人!
展开
-
江苏南大先腾J2EE持久化框架(〇)为什么要重复制造“轮子”
先腾的研发框架定位为一个业务研发,而不是技术框架;对于所采用的技术我们一直秉承着“相信大家的眼光”选择最成熟、使用最为广泛的技术;绝大多数来自于开源社区,更是集中在apache和spring两个阵营。一般我们不选择冷门的技术,更不会自己重复制造一个“轮子”。原创 2020-01-02 10:39:42 · 451 阅读 · 2 评论 -
[面试:数据库]一道关于学生选课的sql语句面试题【附答案】
题干假设有一个张学生选课表(stud_subject),这个表有两个字段:姓名(name)和学科(subject),另假设班级没有重名的,这个表的两个字段构成联合主键(name,subject)。建表和测试数据初始化语句如下:create table stud_subject(name varchar(50) not null,subject varchar(50) not null);...原创 2018-10-09 11:26:38 · 1558 阅读 · 0 评论 -
江苏南大先腾J2EE持久化框架(二)Spring JDBC框架[附源码]
江苏南大先腾J2EE持久化框架(二)Spring JDBC框架[附源码]Maven 引用示例模型增删改查子表查询页面查询权限控制原创 2018-09-06 16:21:16 · 948 阅读 · 0 评论 -
江苏南大先腾J2EE持久化框架(三)用jdbc对JPA进行实现和扩展[附源码]
动机主流的Orm框架有Hibernate、Mybatis和Spring Data。以往我一直推荐使用Hibernate,使用jpa注解不需要写sql语句也不要配置文件,确实比较便捷。说hibernate效率低下,主要式指用hibernate进行查询和统计,我觉得这是不公平的,查询可以原生sql直接返回jsonarry来做,没有必要用hibernate的orm模型做。hibernate功能确实强...原创 2018-08-03 14:55:35 · 463 阅读 · 0 评论 -
动态数据源、多数据源配置和管理 [附源码]
动机业务系统中经常会需要同时操作多个数据库。 分表分库动态DynamicDataSourceSpring- AbstractRoutingDataSource 是什么?DynamicDataSource 动态数据源,为 Spring 提供动态数据源获取支持。 原理: DynamicDataSource 采用 AOP 机制拦截所有使用了注解 @TargetData...原创 2018-08-03 10:24:39 · 2774 阅读 · 0 评论 -
分页查询(一)查询语句转换方法[Oracle、DB2、MySql、Sql Server] [附源码]
动机业务系统对数据库进行查询通常需要分页查询(否则数据量太大无法返回),所以需要通用的分页查询。分页查询一般需要做两件事情:生成分页查询语句,进行分页查询。生成求总数的语句,查询所有符合条件的数量,以求一共有多少页。在开发过程中能力强的程序员可以直接写这两个语句,作为先腾框架提供了自动转换的函数,传入一个正常查询的语句,函数会自动转换为上述的两个语句。源码详解所有源码参见...原创 2018-08-06 17:07:08 · 575 阅读 · 2 评论 -
参数驱动SQL(四)与MyBatis框架整合 [附源码]
动机业务系统一般都会选择一个Orm框架,笔者强力推荐使用先腾基于spring jdbc的的持久化框架,但现在这个框架还不是主流,主流的Orm框架还是Hibernate和MyBatis,先腾持久化框架对他们都有封装,提供了很多共用方法和整合参数驱动sql。参数驱动sql和Orm框架在持久化方面进行分工,Orm用于数据的增删改,参数驱动sql主要用于数据的查询与统计工作。Hibernate由于...原创 2018-08-06 16:16:02 · 397 阅读 · 0 评论 -
参数驱动SQL(三)数据范围权限 [附源码]
动机业务系统开发过程中经常会面对数据范围权限的问题,比如:部分敏感字段只有领导能开、某些业务只能看自己经手的或者只能看自己所在部门的等等。归纳起来和关系数据库相关的数据范围权限可以分为两类:字段权限,通常有称为列权限。数据范围权限,通常称为行权限。参数驱动sql通过两种方式来解决权限问题一、条件标签语句;二、外部顾虑条件。条件标签语句在参数驱动SQL(一)sql语句拼...原创 2018-08-06 15:42:11 · 1175 阅读 · 0 评论 -
参数驱动SQL(二)变量预处理和转换 [附源码]
动机上一节讲了sql语句的拼接方式,参数驱动sql设计一个重要的目标就是让用户收集的前端输入 能够直接作为转换程序的输入参数。 但是前端输入的参数在类型、格式方面和sql语句需要的参数肯定有很多不一致的地方。前端一般输入的式字符串,sql语句要求的可能式日期、数字、字符串匹配模板甚至是一个用于in语句的数组。所以参数驱动sql设计了一套参数预处理系统。设计思想参数的语法为 : 参数引用...原创 2018-08-06 11:28:03 · 467 阅读 · 0 评论 -
参数驱动SQL(一)sql语句拼接[附源码]
参数驱动sql它是一个sql预处理引擎,他通过条件标签[],外置条件插入标签{}和预处理标签来将对数据库查询的逻辑规则从代码中剥离出来。设计这个参数化驱动sql的主要目标有: 1. 避免根据输入条件进行复杂的sql语句拼接工作。目标是将前段输入的条件直接转换为Map作为参数驱动sql的参数。 2. 统一处理数据范围权限包括数据行范围和数据的列范围。参数驱动sql语句是基于命名变量语句的,所...原创 2018-08-05 11:36:45 · 1359 阅读 · 1 评论 -
江苏南大先腾J2EE持久化框架(一)整体介绍[附源码]
概述江苏南大先腾J2EE持久化框架研发目的不是为了取代MyBatis、Hibernate、Spring JDBC这样的成熟的持久化平台,而是为了让开发人员根容易的使用这些平台。这个框架一共有7个模块,其中一个共用模块,其他的分别是基于MyBatis、Hibernate、Spring JDBC开发的持久化框架和对应的spring 4 配置类。设计这样持久化框架的目标有两个:通过在Hib...原创 2018-08-09 16:02:03 · 574 阅读 · 0 评论