首页>代码>java swing预编译SQL和参数替换>/SQL预编译转换/src/com/cx/psf/AnalyzeContext.java
package com.cx.psf;

import java.util.ArrayList;
import java.util.List;

/**
 * 分析环境上下文
 * @date 2012-9-2
 */
public class AnalyzeContext {
	private final static AnalyzeContext context = new AnalyzeContext();
	private SQLAnalyze analyze;
	private AnalyzeContext(){
		init();
	}
	
	private void init() {
		analyze = new SQLAnalyze();
		SQLCompiler compiler = new DefaultSQLCompiler();
		ParamGhost ghost = new DefaultParamGhost();
		compiler.setParamGhost(ghost);
		analyze.setCompiler(compiler);
	}
	
	public String analyze(String sql, String params){
		if(params == null || params.trim().equals("")){
			throw new NullPointerException("params 为null");
		}
		List<String> paramLists = new ArrayList<String>();
		String [] paramsArray = params.split(PSFConfig.PARAMS_SPLIT_CHAR);
		for (int i = 0; i < paramsArray.length; i++) {
			paramLists.add(paramsArray[i]);
		}
		
		return analyze.compile(sql, paramLists);
	}
	
	public static AnalyzeContext getContext(){
		return context;
	}
}
最近下载更多
wyx065747  LV67 2022年5月7日
tomcat1130  LV1 2021年11月9日
羿Xiang天开  LV1 2021年8月5日
w276299771  LV2 2021年6月29日
lijiangbo114  LV4 2021年3月11日
ybc666  LV1 2021年2月26日
pndy512  LV1 2021年1月21日
heel  LV24 2021年1月20日
coolok1  LV1 2020年11月14日
675104182  LV14 2020年9月22日
最近浏览更多
dearxo2014  LV1 11月9日
woaikaikai  LV2 2022年10月26日
vicgong  LV4 2022年5月23日
wyx065747  LV67 2022年5月7日
tomcat1130  LV1 2021年11月9日
一个好人520  LV10 2021年9月29日
羿Xiang天开  LV1 2021年8月5日
w276299771  LV2 2021年6月29日
赞赞赞  LV2 2021年6月25日
interface  LV22 2021年6月14日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友