京津冀铁路规划图:关于sql语句添加where条件问题,用java语句

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/01 13:10:10
在struts框架下,用java语句拼成where的子句,
情况是这样的:
页面上一共有45个不同名称的输入框可能作为where子句条件,要求是如果输入框中输入的值非空并且不是%的情况下,把该输入值作为检索条件,例如:adress对应输入框输入值为A,则在where子句中加入 adress like A 。
但如果一个一个字段分别判断,if语句太多,将使该方法体过于庞大,因为字段名称不同,不能直接应用while循环。

请教高人指点。
我的问题不是如何拼凑where子句,而是如何处理拼凑过程,因为要判断的字段比较多,普通拼凑方法将使方法体过于繁琐庞大,我写了一下,大概400多行/
现在需要的是:如何提高方法的执行效率以及缩小方法体体积。

对字符串的合法性判断应该放到页面上去,可以采用正则表达式,写到script脚本里去。这样首先就做到了从页面传来的信息都是合法的。
声明一个字符串变量sql,初始化为where前的sql语句。
声明一个整形变量count,初始化为0;
将从页面得到的信息进行判断,如果为空值则不加到sql后,如果不为空值,则先count++ ,再判断count是否为1,如果是1,那将条件直接加到sql语句之后,如果大于1,那么就在条件之前加"and"。

看看能不能用上正则表达式
那样判断很不错的

这个基本是字符串的组拼而已,很简单的啊