Java°æµÄʵÏÖJavaScriptÖеÄeval()º¯Êý
ʵÏÖ²½Ö裺
1.×Ô¶¨ÒåÒ»¸öJavaÀ࣬¸ÃJavaÀàÖж¨ÒåÒ»¸ö·½·¨À´°üº¬ÐèÒª±»ÔËÐеĴúÂë¡£
2.¶¯Ì¬±àÒë¸Õ¸ÕÉú³ÉµÄJavaÔ´Â룬²»ÔÚ´ÅÅÌÉÏÉú³ÉÔ´Â룬¶øÊÇÖ±½Ó±àÒëÄÚ´æÖеÄJavaÔ´Âë¡£
3.¶¯Ì¬¼ÓÔØ¸Õ¸Õ´´½¨±àÒëµÄJava¶þ½øÖÆÂ룬±àÒëºÃµÄJava¶þ½øÖÆÂë²»ÊÇÔÚ´ÅÅÌÉÏ£¬¶øÊÇ·ÅÔÚÄÚ´æÖУ¬²¢¶¨Òå×Ô¼ºµÄÀà¼ÓÔØÆ÷£¬¸ºÔð¼ÓÔØÄÚ´æÖеÄclassÎļþ¡£
4.ͨ¹ý·´ÉäÔËÐÐǰһ²½¼ÓÔØµÄÀà¡£
import java.util.Arrays;
import javax.tools.SimpleJavaFileObject;
import javax.tools.JavaFileObject;
import javax.tools.JavaCompiler;
import javax.tools.ToolProvider;
import javax.tools.DiagnosticCollector;
import java.net.URI;
/**
* Description:
* <br/>ÍøÕ¾: <a href="http://www.crazyit.org" mce_href="http://www.crazyit.org">·è¿ñJavaÁªÃË</a>
* <br/>Copyright (C), 2001-2010, Leeyohn
* <br/>This program is protected by copyright laws.
* <br/>Program Name:
* <br/>Date:
* @author Leeyohn leeyohn@hotmail.com
* @version 1.0
*/
public class MyClassLoader
extends ClassLoader
{
@Override
public Class<?> findClass(String str) throws ClassNotFoundException
{
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
//ÓÃÓÚÕï¶ÏÔ´´úÂë±àÒë´íÎóµÄ¶ÔÏó
DiagnosticCollector diagnostics = new DiagnosticCollector();
//ÄÚ´æÖеÄÔ´´úÂë±£´æÔÚÒ»¸ö´ÓJavaFileObject¼Ì³ÐµÄÀàÖÐ
JavaFileObject file = new JavaSourcefromString("Temp", str.toString());
Iterable compilationUnits = Arrays.asList(file);
//½¨Á¢Ò»¸ö±àÒëÈÎÎñ
JavaCompiler.CompilationTask task = compiler.getTask(null, null, null, null, null, compilationUnits);
//±àÒëÔ´³ÌÐò
boolean result = task.call();
if (result)
{
return Class.forName("Temp");
}
return null;
}
}
class JavaSourcefromString extends SimpleJavaFileObject
{
private String name;
private String code;
public JavaSourcefromString(String name, String code)
{
super(URI.create("strin
Ïà¹ØÎĵµ£º
ÏÂÃæ¶¼ÊÇÎÒÊÕ¼¯µÄһЩ±È½Ï³£ÓõÄÕýÔò±í´ïʽ£¬ÒòΪƽ³£¿ÉÄÜÔÚ±íµ¥ÑéÖ¤µÄʱºò£¬Óõ½µÄ±È½Ï¶à¡£ÌØ·¢³öÀ´£¬Èø÷λÅóÓѹ²Í¬Ê¹Ó᣺Ǻǡ£
Æ¥ÅäÖÐÎÄ×Ö·ûµÄÕýÔò±í´ïʽ£º [u4e00-u9fa5]
ÆÀ×¢£ºÆ¥ÅäÖÐÎÄ»¹ÕæÊǸöÍ·ÌÛµÄÊ£¬ÓÐÁËÕâ¸ö±í´ïʽ¾ÍºÃ°ìÁË
Æ¥ÅäË«×Ö½Ú×Ö·û(°üÀ¨ºº×ÖÔÚÄÚ)£º[^x00-xff]
ÆÀ×¢£º¿ÉÒÔÓÃÀ´¼ÆËã×Ö·û´®µÄ³¤¶È£¨Ò» ......
JavaScript±í¸ñÅÅÐòÓкܶàÖÖ·½Ê½£¬²»¹ýÔÚʹÓÃÃæÏò¶ÔÏóµÄ·½Ê½½øÐÐJavaScriptÅÅÐòʱIE»áÓÐһЩÎÊÌâ¡£´úÂëÈçÏ£º
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ÑÝʾ±í¸ñµÄÅÅÐò¹¦ÄÜ</title>
</head>
< ......
1.Ajax Rain
¡¡¡¡AjaxRainÓкܶàÍêÃÀÕûºÏAJAX, CSS, DHTML »ò JavascriptµÄʵÀý£¬ÓÐһЩDemoµÄÈ·ÖµµÃÄãÈ¥¿´Ò»¿´£¬¼´Ê¹Äã²»ÊÇÍøÒ³Éè¼Æ(¿ª·¢)ʦ¡£
Ajax/JavascriptʵÀý:
EXT JS Date Picker
jQuery Feed Menu
jGrowl
FastFind Menu – Jquery
Spiffy Accordion
2.Ajax Daddy
¡¡¡ ......
¶¨Òå·½·¨£º
1¡¢Óù¹Ô캯ÊýRegExp
2¡¢Ö±½ÓÁ¿£¬°üº¬ÔÚÒ»¶Ô£¨/£©Ö®¼äµÄ×Ö·û
Ö±½ÓÁ¿×Ö·û£º
×ÖĸÊý×Ö×Ö·û——×ÔÉí
\o——NULL×Ö·û
\t——ÖÆ±í·û
\n——»»Ðзû
\v——´¹Ö±ÖƱí·û
\f——»»Ò³·û
\r——»Ø³µ·û ......