U盘PE| w764位旗舰版下载 | U盘装win7系统 | U盘启动 |win7pe | win10下载 |加入收藏土豆PE官网U盘PE,U盘装win7系统,win7pe,U盘启动,U盘装系统,w764位旗舰版下载站!
当前位置:主页 > 帮助中心 > 土豆PE使用教程 >

基于druid的MySQL Compound Statements转pgplsql 大概思路

来源:http://www.tudoupe.com时间:2022-02-25

首先搭好java环境,把druid导入lib中,
我是基于vsc开发的,配好java环境以后把官方的druid-1.2.8.jar放到开发目录/lib下,vsc就能自动将其加入依赖库中,

以下代码可以测试MySqlStatementParser的主要功能:(代码源于官方测试代码MySqlPerfTest.java)
(在开发目录下的test.java)

通过调试我们可以发现,变量statement里面存储的就是一颗AST树,这样就可以很方便的帮助我们定位不同语句所对应的对象是什么。

整个程序的逻辑就是"MySQL Compound Statements" --> “AST” --> “MySQL Compound Statements”,
其中"MySQL Compound Statements" --> “AST” 是通过MySqlStatementParser()实现的,
“AST” --> “MySQL Compound Statements” 是通过MySqlOutputVisitor来实现的,

可以发现MySqlOutputVisitor里是通过visit()函数解析AST中的每一个对象来进行转换的,
我们思路就是通过继承MySqlOutputVisitor类,重载里面的visit()函数,实现 “AST” --> “pgplsql”,
这样只需要将上面的程序中的MySqlOutputVisitor(out)改为你继承重写了的OutputVisitor(out),即可完成转化。

我们要主要看的就是MySqlOutputVisitor这个对象里的所有visit()函数,理解不同的visit()是在干嘛,并将其重载,使得其输出变为pgplsql语言,

这里我简单写了个MySql2PgplSqlOutputVisitor的示例,里面简单的重载了几个visit()函数

Copyright © 2012-2014 Www.tudoupe.Com. 土豆启动 版权所有 意见建议:tdsky@tudoupe.com

土豆系统,土豆PE,win7系统下载,win7 64位旗舰版下载,u盘启动,u盘装系统,win10下载,win10正式版下载,win10 RTM正式版下载,win8下载,电脑蓝屏,IE11修复,网络受限,4K对齐,双系统,隐藏分区,系统安装不了,U盘装系统,笔记本装系统,台式机装系统,diskgenius运用,GHSOT装系统,U盘修复,U盘技巧,U盘速度,U盘不能格式化,U盘复制发生错误,U盘加密,U盘选购,开机黑屏,蓝屏,进不了系统,上不了网,打不开程序,点击无反应,系统设置,PE个性化,PE添加网络,PE维护系统

点击这里给我发消息