⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 basetag.java

📁 本代码是一个权限管理系统源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		for (int i = 0; i < indent; i++)
			this.stringBuffer.append(BaseTag.INDENTSIZE);

		this.appendMessage(s);
	}

	public String getMessage() {
		return this.stringBuffer.toString();
	}

	public void clearMessage() {
		this.stringBuffer.delete(0, this.stringBuffer.length());
	}

	public void outputXMLMessage() {
		try {
			log.debug(this.stringBuffer.toString());
			this.writer.print(this.stringBuffer.toString());
		} catch (Exception e) {
			e.printStackTrace();
			this.print("outputMessage 方法异常 : " + e.getMessage());
		}

	}

	public void outputMessage() {
		try {

			log.debug("xml:=============>\n" + this.stringBuffer.toString());
			if (this.check(this.getParameter(SHOWXML))){
				this.outputHTMLMessage();
                                System.out.println("xml:====>\n" + this.stringBuffer.toString());
			}
				
			else{
				this.outputXMLMessage();
                                log.debug("xml:======>\n" + this.stringBuffer.toString());
			}
				
		} catch (Exception e) {
			e.printStackTrace();
			this.print("outputMessage 方法异常 : " + e.getMessage());
		}

	}

	public void outputStandardErrorMessage() {
		this.clearMessage();

		this.appendMessage("<root>");
		this.appendMessage("  <system>");
		this.appendMessage("     <appMessage> ");
		this.appendMessage("        <message>失去信息,请重新登陆!</message>");
		this.appendMessage("        <ResultMsg>错误提示 : </ResultMsg>");
		this.appendMessage("     </appMessage>");
		this.appendMessage("  </system>");
		this.appendMessage("</root>");

		this.outputMessage();
	}

	private String exchangeStrParam(String paramValue) {
		pc = new ParamChecking();

		if (!this.check(paramValue)) {
			paramValue = pc.exchangeParam(paramValue);
			paramValue = paramValue.trim();
		} else {
			paramValue = "";
		}

		return paramValue;
	}

	private String[] exchangeStrParam(String[] paramValue) {
		pc = new ParamChecking();

		if (!this.check(paramValue)) {
			for (int i = 0; i < paramValue.length; i++) {
				paramValue[i] = pc.exchangeParam(paramValue[i]);
			}

			paramValue = this.trim(paramValue);
		} else {
			paramValue = new String[0];
		}

		return paramValue;
	}

	public void crazyChangeEncode(String str) {

		try {
			System.out.println("转码1 :结果为 : " + new String(str.getBytes("UTF-8"), "gbk"));
			System.out.println("转码2 :结果为 : " + new String(str.getBytes("UTF-8"), "gb2312"));
			System.out.println("转码3 :结果为 : " + new String(str.getBytes("UTF-8"), "8859_1"));
			System.out.println("转码4 :结果为 : " + new String(str.getBytes("gb2312"), "UTF-8"));
			System.out.println("转码5 :结果为 : " + new String(str.getBytes("gb2312"), "gbk"));
			System.out.println("转码6 :结果为 : " + new String(str.getBytes("gb2312"), "8859_1"));
			System.out.println("转码7 :结果为 : " + new String(str.getBytes("8859_1"), "gbk"));
			System.out.println("转码8 :结果为 : " + new String(str.getBytes("8859_1"), "gb2312"));
			System.out.println("转码9 :结果为 : " + new String(str.getBytes("8859_1"), "UTF-8"));
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void crazyChangeEncode(String strName, String str) {

		try {
			System.out.println("转码1 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("UTF-8"), "gbk"));
			System.out.println("转码2 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("UTF-8"), "gb2312"));
			System.out.println("转码3 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("UTF-8"), "8859_1"));
			System.out.println("转码4 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("gb2312"), "UTF-8"));
			System.out.println("转码5 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("gb2312"), "gbk"));
			System.out.println("转码6 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("gb2312"), "8859_1"));
			System.out.println("转码7 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("8859_1"), "gbk"));
			System.out.println("转码8 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("8859_1"), "gb2312"));
			System.out.println("转码9 :参数为 : " + strName + " 结果为 : " + new String(str.getBytes("8859_1"), "UTF-8"));
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	/**
		 * 判断字符串是否为数字
		 * @param param 待判断字符串
		 * @return true 是字符串  false 不是字符串
		 */
	public boolean isNum(String param) {
		//为空打回
		if (this.check(param))
			return false;

		//整句出现两个 - 号或两个 . 号打回
		if ((param.indexOf("-") != param.lastIndexOf("-")) || (param.indexOf(".") != param.lastIndexOf(".")))
			return false;

		//参数长度为1时以 - 号或 . 号打回
		if (param.length() == 1) {
			if (param.substring(0).equalsIgnoreCase("-") || param.substring(0).equalsIgnoreCase("."))
				return false;
		}

		//参数长度大于2时以 - 号开始,但以 . 号跟随打回,加长度判断避免越界异常
		if (param.length() >= 2) {
			if (param.startsWith("-") && param.substring(1, 2).equalsIgnoreCase("."))
				return false;
		}

		//判断是否以 . 开始,- 未出现在第一位置,不在数字界限内,错误打回
		for (int i = 0; i < param.length(); i++) {
			String sNum = param.substring(i, i + 1);

			if (i == 0 && sNum.equals("."))
				return false;

			if (i != 0 && sNum.equals("-"))
				return false;

			int flag = NUMBER.indexOf(sNum);

			if (flag == -1)
				return false;
		}

		return true;
	}
	/**
		 * 判断字符串是否为数字
		 * @param param 待判断字符串
		 * @return true 是字符串  false 不是字符串
		 */
	public boolean isNum2(String param) {

		//整句出现两个 - 号或两个 . 号打回
		if ((param.indexOf("-") != param.lastIndexOf("-")) || (param.indexOf(".") != param.lastIndexOf(".")))
			return false;

		//参数长度为1时以 - 号或 . 号打回
		if (param.length() == 1) {
			if (param.substring(0).equalsIgnoreCase("-") || param.substring(0).equalsIgnoreCase("."))
				return false;
		}

		//参数长度大于2时以 - 号开始,但以 . 号跟随打回,加长度判断避免越界异常
		if (param.length() >= 2) {
			if (param.startsWith("-") && param.substring(1, 2).equalsIgnoreCase("."))
				return false;
		}

		//判断是否以 . 开始,- 未出现在第一位置,不在数字界限内,错误打回
		for (int i = 0; i < param.length(); i++) {
			String sNum = param.substring(i, i + 1);

			if (i == 0 && sNum.equals("."))
				return false;

			if (i != 0 && sNum.equals("-"))
				return false;

			int flag = NUMBER.indexOf(sNum);

			if (flag == -1)
				return false;
		}

		return true;
	}

	/**
	 * Returns the xslUri.
	 * @return String
	 */
	public String getXslUri() {
		return xslUri;
	}

	/**
	 * Sets the xslUri.
	 * @param xslUri The xslUri to set
	 */
	public void setXslUri(String xslUri) {
		this.xslUri = xslUri;
	}

	/**
	 * Returns the xslCache.
	 * @return boolean
	 */
	public boolean isXslCache() {
		return xslCache;
	}

	/**
	 * Sets the xslCache.
	 * @param xslCache The xslCache to set
	 */
	public void setXslCache(boolean xslCache) {
		//TODO this.xslCache = xslCache;
		this.xslCache = false;
	}

	public void outputHTMLMessage() {

		Transformer transformer = com.seavision.PermissionManage.common.XMLUtil.getTransformer(pageContext.getServletContext(), xslUri, xslCache);

		//获得domcment
		Document document = parse();
		DOMSource source = new DOMSource(document);
		try {
			StringWriter sw = new StringWriter();
			StreamResult result = new StreamResult(sw);
			transformer.transform(source, result);
			sw.flush();	

			this.writer.print(sw.toString());
			
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public static Transformer getTransformer(String path) {
		try {
			TransformerFactory tf = TransformerFactory.newInstance();
			Templates templates = null;
			URL url = new URL(path);
			if (url == null)
				throw new IllegalArgumentException("stylesheet \"" + path + "\" not found");
			templates = tf.newTemplates(new StreamSource(url.toExternalForm()));

			return templates.newTransformer();
		} catch (Exception e) {
			return null;
		}
	}

	public Document parse() {
		try {
			//InputSource src = new InputSource(url.openStream());
			//InputSource src = new InputSource(url.toExternalForm());
			byte[] buf = (stringBuffer.toString()).getBytes("UTF-8");
			//or GB2312 ...
			InputStream is = new ByteArrayInputStream(buf);
//			System.out.println("==============is=============================>"+is);

			return getParser().parse(is);
		} catch (IOException e) {
			e.printStackTrace();
			return null;

		} catch (SAXException e) {

			e.printStackTrace();
			return null;
		}
	}

	private static void save(OutputStream out, String file) {
		File f = new File(file);
		try {
			if (!f.exists()) {
				f.createNewFile();
			}
			FileOutputStream output = new FileOutputStream(f);
			ByteArrayOutputStream bo = (ByteArrayOutputStream)(out);
			bo.writeTo(output);
		} catch (Exception e) {
			System.out.println("Error occupied when saving file.");
		}


	}

	public static DocumentBuilder getParser() {
		try {
			DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
			dbf.setValidating(false);
			dbf.setExpandEntityReferences(true);
			return dbf.newDocumentBuilder();
		} catch (FactoryConfigurationError e) {
			e.printStackTrace();
			return null;

		} catch (ParserConfigurationException e) {
			e.printStackTrace();
			return null;

		}
	}

	public static void main(String[] args) {

		BaseTag bt = new BaseTag();
		bt.doTest();

	}

	public void doTest() {
		String xslPath = "file:///D:/JBProject/InsteadCocoon/Login.xsl";

		Transformer transformer = getTransformer(xslPath);

		//获得domcment
		//String xmlPath = "file:///D:/JBProject/InsteadCocoon/index.xml";

		Document document = parse();
		DOMSource source = new DOMSource(document);
		try {
			StringWriter sw = new StringWriter();
			StreamResult result = new StreamResult(sw);
			transformer.transform(source, result);
			sw.flush();
			System.out.println(sw.toString());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -