📄 jsputil.java
字号:
package org.ch02zf.comm;
/*
* 拼写Jsp页面中字符串的工具类
* 每个字符串在内存中只有一个实例,请求时直接返回
*/
import java.util.ArrayList;
import java.util.List;
import javax.servlet.jsp.jstl.sql.Result;
import org.ch02zf.dao.JDDao;
import org.ch02zf.dao.QXDao;
import org.ch02zf.dao.daoImpl.FWLXDaoImpl;
import org.ch02zf.dao.daoImpl.JDDaoImpl;
import org.ch02zf.dao.daoImpl.QXDaoImpl;
import org.ch02zf.entity.FWLX;
public class JspUtil {
private static StringBuffer arrayStr = null;
private static StringBuffer qxOptionsStr = null;
private static StringBuffer fwlxOptionsStr = null;
/**
* 街道信息的两个二维数组字符串,放置于javascript中,为空时到新建一个实例,有内容时直接返回
*
* @return 返回二级select使用的数组,字符串形式
*/
public static StringBuffer getArrayStr() {// synchronized
if (arrayStr == null) {
arrayStr = new StringBuffer();
QXDao qxProcess = new QXDaoImpl();
JDDao jdProcess = new JDDaoImpl();
List jdNum = new ArrayList();
jdNum = jdProcess.getJDNums();
Result qxResult = qxProcess.getQX();
Result jdResult = jdProcess.getJD();
int qxLength = qxResult.getRowCount();
// int jdLength = jdList.size();
// int jdNumLength = jdNum.size();
int pointer = 0;// 指示
arrayStr.append("var v = new Array(" + qxLength + ");\n");// option的value
arrayStr.append("var n = new Array(" + qxLength + ");\n");// option的显示值
for (int i = 0; i < qxLength; i++) {
//int qxid = ((QX) qxList.get(i)).getQxid();
int qxid = (Integer)qxResult.getRows()[i].get("qxid");
arrayStr.append("v[" + qxid + "] = new Array(");
int l = 0;
try {
l = ((Integer) jdNum.get(i)).intValue();
} catch (Exception e) {
// e.printStackTrace();
System.out.println("========无此区县("
+ (String)qxResult.getRows()[i].get("qx") + ")的街道资料========");
}
for (int j = 0; j < l; j++) {
// int value = ((JD) jdList.get(pointer + j)).getJdid();
int value = (Integer)jdResult.getRows()[pointer + j].get("jdid");
arrayStr.append("'" + value + "'");
if (j != l - 1) {
arrayStr.append(",");
}
}
arrayStr.append(");\n");
arrayStr.append("n[" + qxid + "] = new Array(");
for (int j = 0; j < l; j++) {
// String name = ((JD) jdList.get(pointer + j)).getJd();
String name = (String)jdResult.getRows()[pointer + j].get("jd");
arrayStr.append("'" + name + "'");
if (j != l - 1) {
arrayStr.append(",");
}
}
arrayStr.append(");\n");
pointer += l;
}
}
return arrayStr;
}
/**
* 区县下拉框选项的字符串,为空时到新建一个实例,有内容时直接返回
*
* @return 得到区县的option,字符串形式
*/
public static StringBuffer getQxOptions() {
if (qxOptionsStr == null) {
qxOptionsStr = new StringBuffer();
QXDao qxProcess = new QXDaoImpl();
//ArrayList qxList = qxProcess.getQXList();
Result qxResult = qxProcess.getQX();
for (int i = 1; i <= qxResult.getRowCount(); i++) {
qxOptionsStr.append("<option value='"
+ (Integer)qxResult.getRows()[i-1].get("qxid") + "'>"
+ (String)qxResult.getRows()[i-1].get("qx") + "</option>\n");
}
}
return qxOptionsStr;
}
/**
* 房屋类型下拉框选项的字符串,为空时到新建一个实例,有内容时直接返回
*
* @return 得到房屋类型的option,字符串形式
*/
public static StringBuffer getFwlxOptions() {
if (fwlxOptionsStr == null) {
fwlxOptionsStr = new StringBuffer();
FWLXDaoImpl fwlxProcess = new FWLXDaoImpl();
Result fwlxResult = fwlxProcess.getFxlx();
for (int i = 1; i <= fwlxResult.getRowCount(); i++) {
fwlxOptionsStr.append("<option value='"
+ (Integer)fwlxResult.getRows()[i-1].get("fwid") + "'>"
+ (String)fwlxResult.getRows()[i-1].get("fwlx")
+ "</option>\n");
}
}
return fwlxOptionsStr;
}
/**
* 将长度超过35个字的房屋信息分成多行
* @param fwxx
* @return
*/
public static StringBuffer getFwxxStr(String fwxx){
StringBuffer fwxxRes = new StringBuffer();
if(fwxx.length()>35){
int rows = fwxx.length()/35 + 1;
for(int i=0;i<rows-1;i++){
fwxxRes.append(fwxx.subSequence(35*i,35*(i+1))+"<br/>");
}
fwxxRes.append(fwxx.subSequence(35*(rows-1), fwxx.length()-1));
} else {
fwxxRes.append(fwxx);
}
return fwxxRes;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -