MyBatis自动生成Java/C#的Bean(Entity)的等价MYSQL实现函数
这是单元测试代码:TESTTITLECASE.sql
SELECT TITLECASE('ABC_DEF_hgk') as BEANNAME FROM DUAL;
SELECT TITLECASE('www_mysql_com') as BEANNAME FROM DUAL;
SELECT FIRSTLETTERUPPERCASE('ABC') FROM DUAL;
SELECT FIRSTLETTERUPPERCASE('aBC') FROM DUAL;
SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);
SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('mysql', '.', 2), '.', -1);
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('www.mysql.com', '.', 1), '.', -1);
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('www.mysql.com', '.', 2), '.', -1);
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('www.mysql.com', '.', 3), '.', -1);
这是仿照MyBatis的功能实现:TITLECASE(这个是从Sublime里的Edit的Case下借鉴过来的)
CREATE DEFINER=`root`@`%` FUNCTION `TITLECASE`(x VARCHAR(255)) RETURNS varchar(255) CHARSET utf8
READS SQL DATA
BEGIN
DECLARE i INT;
DECLARE n INT;
DECLARE y VARCHAR(255);
DECLARE word VARCHAR(255);
DECLARE wordWithCase VARCHAR(255); SET i = 1;
SET n = LENGTH(x) - LENGTH(REPLACE(x, '_', '')) + 1;
SET y = ''; WHILE i < n + 1 DO
SET word = SUBSTRING_INDEX(SUBSTRING_INDEX(x, '_', i), '_' , -1);
SET wordWithCase = CONCAT(IF(i=1,LOWER(SUBSTRING(word, 1, 1)),UPPER(SUBSTRING(word, 1, 1))), LOWER(SUBSTRING(word FROM 2)));
SET y = CONCAT(y,wordWithCase);
SET i = i + 1;
END WHILE; RETURN y;
END
这是一个副产品:单词首字符大写:FIRSTLETTERUPPERCASE.sql
CREATE DEFINER=`root`@`%` FUNCTION `FIRSTLETTERUPPERCASE`(x VARCHAR(255)) RETURNS varchar(255) CHARSET utf8
READS SQL DATA
BEGIN
return CONCAT(UPPER(SUBSTRING(x, 1, 1)), LOWER(SUBSTRING(x FROM 2)));
END
MyBatis自动生成Java/C#的Bean(Entity)的等价MYSQL实现函数的更多相关文章
- mybatis自动生成java代码
SSM框架没有DB+Record模式,写起来特别费劲,只能用下面的方法勉强凑合. 上图中,*.jar为下载的,src为新建的空白目录,.xml配置如下. <?xml version=" ...
- mybatis怎样自动生成java类,配置文件?
其实没有什么东西是可以自动生成的,只不过是别人已经写好了,你调用罢了. 所以想要mybatis自动生成java类,配置文件等,就必须要一些配置和一些jar包.当然这些配置也很简单. 为了有个初步的认识 ...
- mybatis generator配置,Mybatis自动生成文件配置,Mybatis自动生成实体Bean配置
mybatis generator配置,Mybatis自动生成文件配置,Mybatis自动生成实体Bean配置 ============================== 蕃薯耀 2018年3月14 ...
- 使用maven根据JSON文件自动生成Java POJO类(Java Bean)源文件
根据JSON文件自动生成Java POJO类(Java Bean)源文件 本文介绍使用程序jsonschema2pojo来自动生成Java的POJO类源文件,本文主要使用maven,其他构建工具请参考 ...
- mybatis自动生成代码插件mybatis-generator使用流程(亲测可用)
mybatis-generator是一款在使用mybatis框架时,自动生成model,dao和mapper的工具,很大程度上减少了业务开发人员的手动编码时间 坐着在idea上用maven构建spri ...
- Mybatis自动生成实体类
Maven自动生成实体类需要的jar包 一.pom.xml中 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns ...
- Mybatis 自动生成代码,数据库postgresql
最近做了一个项目,使用Mybatis自动生成代码,下面做一下总结,被以后参考: 一.提前准备: 1.工具类:mybatis-generator-core-1.3.2.jar 2.postgresql驱 ...
- 使用mybatis-generator插件结合tk.mybatis自动生成mapper二三事
本篇文章将介绍使用spring boot框架,引入mybatis-generator插件,结合tk.mybatis自动生成Mapper和Entity的一整套流程,其中包括最重要的踩坑与填坑. ...
- mybatis自动生成model、dao及对应的mapper.xml文件
背景: 日常开发中,如果新建表,手动敲写model.dao和对应的mapper.xml文件,费时费力且容易出错, 所以采用mybatis自动生成model.dao及对应的mapper.xml文件.代码 ...
随机推荐
- console.time和console.timeEnd用法
console.time和console.timeEnd这两个方法可以用来让WEB开发人员测量一个javascript脚本程序执行消耗的时间.随着WEB应用越来越重要,JavaScript的执行性能也 ...
- redis类与用法
<?phpnamespace app\common\model; class Cache { public $redis = null; public function __construct( ...
- 20145203盖泽双 《网络对抗技术》实践八:Web基础
20145203盖泽双 <网络对抗技术>实践八:Web基础 1.实践目标 (1)编写Web前端--含有表单的HTML代码. (2)编写Web前端--javascipt验证用户名.密码的代码 ...
- 流程控制之for
for循环是 迭代式循环,其强大之处在于循环取值 用法一: l = [1, 2, 3, 4, 5, 5, 6, 5, 4, 3] for x in l: print(x) info = {'} for ...
- uploadify 302 上传图片报错
1.uploadify 302 上传图片报错 2.解决方式 一 uploadify 302 上传图片报错 备注:谷歌浏览器不报错,只在火狐报错. 二 解决方式 原因:插件调用,不能自带身份验证信息 ...
- [03-01] JSP自定义标签
1.自定义标签的概念 目前我们在JSP中使用的标签都是HTML的标签,浏览器会自动解析运行,例如<form action=""></form>,这里的for ...
- 《Head First 设计模式》[02] 观察者模式
1.观察者模式 1.1 形象地认识观察者模式 报社的业务是出版报纸 用户像某家报社订阅了报纸,那么一旦报社有新的报纸,就会送到用户处.只要是订户,就一直会收到新报纸: 当用户不再想看报纸时,取消订阅, ...
- 安装Drush工具 -Centos
Drush可以说是Drupal的瑞士***,只要你使用过一段时间的Drush,一但没有它的话,你会觉得很不方便.可如果通过我在前面博文中所讲的方法来安装Drush的话,是不能够支持Drupal8的,所 ...
- 源码篇:Python 实战案例----银行系统
import time import random import pickle import os class Card(object): def __init__(self, cardId, car ...
- git使用备注
git clone 代码库地址 git branch -r 查看远程分支 git branch 查看本地分支 git branch -a 查看远程和本地分支.带*的表示正在所处分支. git bra ...