今天在修改一个JAVA WEB应用时,由于页面的展示分为了四个部分,所以页面在数据请求时有两个部分。
一、就是进入页面时,加载的是四个部分的数据;
二、就是四个部分各个部分刷新时,请求的单独一部分的数据。
原来想的是用switch去实现,用一个queryType去区别再想就是如果是全部请求加载就 不break;后来发现switch似乎实现不了,即使queryType为All或者其他(本例就不设置值,即为null)一下的4个case都没有break;但是case只能为一个值,即常量;
但是如果要实现起来简单一些的话,break这个功能使用感觉也很必须。
所以转换了一下思维,用了for里面的break,当然,while内也可以使用;
这样在queryType为null时就会请求四个部分的数据,单独请求数据的会更具queryType的值去执行对应部分的逻辑
具体代码如下:
public String queryAction(String queryType){ for(int i=0;i<1;i++){
// /
if( queryType == null||ajustStringsEqueal(queryType, AJAX_QUERY_LINE))
/*doSomeThing*/if(ajustStringsEqueal(queryType, AJAX_QUERY_LINE)) break;
// //
if( queryType == null||ajustStringsEqueal(queryType, AJAX_QUERY_CURRDAY))
/*doSomeThing*/if(TypeConverter.ajustStringsEqueal(queryType, AJAX_QUERY_CURRDAY)) break;
// //
if( queryType == null||ajustStringsEqueal(queryType, AJXA_QUERY_LOW_WESTTIME))
/*doSomeThing*/if(ajustStringsEqueal(queryType, AJXA_QUERY_LOW_WESTTIME)) break;
// //
if( queryType == null||ajustStringsEqueal(queryType, AJXA_QUERY_LOW_HANDLESETUATION))
/*doSomeThing*/if(ajustStringsEqueal(queryType, AJXA_QUERY_LOW_HANDLESETUATION)) break;
}} /**
* 判断一个字符串是否与另一个字符串相等
* @param src
* @param destSrc
* @return
*/
public boolean ajustStringsEqueal(String src,String destSrc){
return destSrc.equals(src);
}