一、JSQLParser介紹
JSQLParser是一款開源的SQL語句解析器,使用它可以把SQL語句解析成一組層次分明的java類。
JSQLParser的項目地址為:
https://github.com/JSQLParser/JSqlParser/wiki#what-is-jsqlparser 我下載到的版本為0.9.4。
二、搭建環境介紹
- Java版本為JDK1.8;
- JSQLParser版本為0.9.4,我是從上面的項目地址中下載到的;
- Eclipse版本為Mars Release (4.5.0)
三、導入源碼工程
3.1 導入Maven項目
首先我們將下載到的源碼解壓后得到的項目文件夾導入到Eclipse中,注意這個時候我們要以Maven項目的形式導入,如下圖:
我導入后的情況是這樣:
有很多未知的錯誤,下面我們一一解決。
3.2 添加依賴庫
打開項目中的pom.xml文件,從其中的下面這段代碼中我們可以看出,JSQLParser依賴Junit4.11,commons-io 2.4:
然后我們查看項目中Maven的依賴庫中是否已經有這些依賴庫,我在導入之后自帶了這些依賴庫,因此不需要再添加,如果你的項目中沒有這些依賴庫,我們可以分別下載,在通過Build Path中的Library添加這些庫,具體的下載和添加依賴庫請百度。
然后根據官方文檔https://github.com/JSQLParser/JSqlParser/wiki ,需要添加一些代碼(紅色部分),注意圖中圓圈的部分,這表示當前的JSQLParse的版本號,我的是0.9.4,千萬不能填錯,否則會有一些類找不到(可能和版本有關系),這個部分后來發現,其實是用於添加jsqlparse0.9.4.jar庫的,這個步驟做了之后,就不需要做步驟3.5了,找不到的類會直接調用庫中的。
3.3 修復一些BUG
即使我們做了上面一些工作,pom.xml文件中還是存在兩個錯誤:
錯誤的提示信息為:
通過百度,我找到了一個解決辦法 http://blog.sina.com.cn/s/blog_6accbcc30101duig.html,
在< plugins >< /plugins >標簽的外面添加一個< pluginManagement >< /pluginManagement >的標簽。
像這樣:
<build>
<pluginManagement>
<plugins>
<plugin>
...
</plugin>
...
</plugins>
</pluginManagement>
</build>
這個時候應該紅叉叉的錯誤提示就應該沒有了。
3.5 使用JavaCC生成一些類
在我們做完以上步驟之后,項目中還存在很多錯誤(如果沒有的話,祝賀你已經安裝成功了),都是由於找不到類造成的,這是因為JSQlParse是基於JavaCC的(關於JavaCC(http://www.cnblogs.com/Gavin_Liu/archive/2009/03/07/1405029.html),
JSQLParser源碼中SQL解析那部分是使用JavaCC來生成的,在JSQLParser的源碼中,你可以看到JSqlParserCC.jj這樣一個文件。
這里我們先需要安裝JavaCC,在Eclipse中有一個JavaCC的插件,具體安裝方法,可以參考這里(http://eclipse-javacc.sourceforge.net/)
安裝完成之后,找到下面這個文件,
在這個文件上右擊,選擇圖中紅色部分:
一會之后就會生成很多Java文件,把這些新生成的Java文件復制到這里:
另外說一點,凡是在src/test/resources
中的所有存在錯誤的文件都可以刪除,這些文件都是作者寫的例子,有些代碼比較老,和當前版本不兼容造成的。