<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    allen
    專注于java ee技術,包括struts,jsf,webwork,spring,hibernate,ibatis
    posts - 7,  comments - 9,  trackbacks - 0


    $_SERVER['PHP_SELF'] #當前正在執行腳本的文件名,與 document root相關。
    $_SERVER['argv'] #傳遞給該腳本的參數。
    $_SERVER['argc'] #包含傳遞給程序的命令行參數的個數(如果運行在命令行模式)。
    $_SERVER['GATEWAY_INTERFACE'] #服務器使用的 CGI 規范的版本。例如,“CGI/1.1”。
    $_SERVER['SERVER_NAME'] #當前運行腳本所在服務器主機的名稱。
    $_SERVER['SERVER_SOFTWARE'] #服務器標識的字串,在響應請求時的頭部中給出。
    $_SERVER['SERVER_PROTOCOL'] #請求頁面時通信協議的名稱和版本。例如,“HTTP/1.0”。
    $_SERVER['REQUEST_METHOD'] #訪問頁面時的請求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。
    $_SERVER['QUERY_STRING'] #查詢(query)的字符串。
    $_SERVER['DOCUMENT_ROOT'] #當前運行腳本所在的文檔根目錄。在服務器配置文件中定義。
    $_SERVER['HTTP_ACCEPT'] #當前請求的 Accept: 頭部的內容。
    $_SERVER['HTTP_ACCEPT_CHARSET'] #當前請求的 Accept-Charset: 頭部的內容。例如:“iso-8859-1,*,utf-8”。
    $_SERVER['HTTP_ACCEPT_ENCODING'] #當前請求的 Accept-Encoding: 頭部的內容。例如:“gzip”。
    $_SERVER['HTTP_ACCEPT_LANGUAGE']#當前請求的 Accept-Language: 頭部的內容。例如:“en”。
    $_SERVER['HTTP_CONNECTION'] #當前請求的 Connection: 頭部的內容。例如:“Keep-Alive”。
    $_SERVER['HTTP_HOST'] #當前請求的 Host: 頭部的內容。
    $_SERVER['HTTP_REFERER'] #鏈接到當前頁面的前一頁面的 URL 地址。
    $_SERVER['HTTP_USER_AGENT'] #當前請求的 User_Agent: 頭部的內容。
    $_SERVER['HTTPS'] — 如果通過https訪問,則被設為一個非空的值(on),否則返回off
    $_SERVER['REMOTE_ADDR'] #正在瀏覽當前頁面用戶的 IP 地址。
    $_SERVER['REMOTE_HOST'] #正在瀏覽當前頁面用戶的主機名。
    $_SERVER['REMOTE_PORT'] #用戶連接到服務器時所使用的端口。
    $_SERVER['SCRIPT_FILENAME'] #當前執行腳本的絕對路徑名。
    $_SERVER['SERVER_ADMIN'] #管理員信息
    $_SERVER['SERVER_PORT'] #服務器所使用的端口
    $_SERVER['SERVER_SIGNATURE'] #包含服務器版本和虛擬主機名的字符串。
    $_SERVER['PATH_TRANSLATED'] #當前腳本所在文件系統(不是文檔根目錄)的基本路徑。
    $_SERVER['SCRIPT_NAME'] #包含當前腳本的路徑。這在頁面需要指向自己時非常有用。
    $_SERVER['REQUEST_URI'] #訪問此頁面所需的 URI。例如,“/index.html”。
    $_SERVER['PHP_AUTH_USER'] #當 PHP 運行在 Apache 模塊方式下,并且正在使用 HTTP 認證功能,這個變量便是用戶輸入的用戶名。
    $_SERVER['PHP_AUTH_PW'] #當 PHP 運行在 Apache 模塊方式下,并且正在使用 HTTP 認證功能,這個變量便是用戶輸入的密碼。
    $_SERVER['AUTH_TYPE'] #當 PHP 運行在 Apache 模塊方式下,并且正在使用 HTTP 認證功能,這個變量便是認證的類型。
    posted @ 2012-02-01 12:00 robbin163 閱讀(196) | 評論 (0)編輯 收藏


    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics;
    import java.awt.image.BufferedImage;
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.util.Random;

    import javax.imageio.ImageIO;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    public class RadomCodeServlet extends HttpServlet
    {

    ?public void doGet(HttpServletRequest request, HttpServletResponse response)
    ???throws ServletException, IOException {
    ??doPost(request,response);
    ?}


    ?public void doPost(HttpServletRequest request, HttpServletResponse response)
    ???throws ServletException, IOException {
    ??//設置頁面不緩存
    ??response.setHeader("Pragma","No-cache");
    ??response.setHeader("Cache-Control","no-cache");
    ??response.setDateHeader("Expires", 0);
    ??//在內存中創建圖象
    ??int width=60, height=20;
    ??BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

    ??//獲取圖形上下文
    ??Graphics g = image.getGraphics();

    ??//生成隨機類
    ??Random random = new Random();

    ??//設定背景色
    ??g.setColor(getRandColor(200,250));
    ??g.fillRect(0, 0, width, height);

    ??//設定字體
    ??g.setFont(new Font("Times New Roman",Font.PLAIN,18));
    ??
    ??//隨機產生155條干擾線,使圖象中的認證碼不易被其它程序探測到
    ??g.setColor(getRandColor(160,200));
    ??for (int i=0;i<155;i++)
    ??{
    ????????? int x = random.nextInt(width);
    ????????? int y = random.nextInt(height);
    ????????? int xl = random.nextInt(12);
    ????????? int yl = random.nextInt(12);
    ????????? g.drawLine(x,y,x+xl,y+yl);
    ??}
    ??
    ??//取隨機產生的認證碼(4位數字)
    ??String sRand="";
    ??for (int i=0;i<4;i++)
    ??{
    ????? String rand=String.valueOf(random.nextInt(10));
    ????? sRand+=rand;
    ????? // 將認證碼顯示到圖象中
    ????? g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));//調用函數出來的顏色相同,可能是因為種子太接近,所以只能直接生成
    ????? g.drawString(rand,13*i+6,16);
    ??}

    ??//將認證碼存入SESSION
    ??request.getSession().setAttribute("rand",sRand);


    ??//圖象生效
    ??g.dispose();

    ??//輸出圖象到頁面
    ??ImageIO.write(image, "JPEG", response.getOutputStream());??
    ?}
    ?
    ?//給定范圍獲得隨機顏色
    ?private Color getRandColor(int fc,int bc)
    ?{
    ??????? Random random = new Random();
    ??????? if(fc>255) fc=255;
    ??????? if(bc>255) bc=255;
    ??????? int r=fc+random.nextInt(bc-fc);
    ??????? int g=fc+random.nextInt(bc-fc);
    ??????? int b=fc+random.nextInt(bc-fc);
    ??????? return new Color(r,g,b);
    ??? }
    ?調用:
    ?<td height="25">
    ????????????<div align="right">
    ?????????????<font color="#000000">驗證碼:</font>
    ????????????</div>
    ???????????</td>
    ???????????<td align="left">
    ????????????<input type="text" name="randCode" size=10></input>
    ????????????<img style="cursor:hand" name="validatecode"
    ?????????????src=" servlet/RadomCodeServlet" height="17" align="middle"
    ?????????????onclick="document.validatecode.src=' servlet/RadomCodeServlet'">
    ???????????</td>

    posted @ 2006-12-08 13:51 robbin163 閱讀(246) | 評論 (0)編輯 收藏
    MD5

    import java.security.*;


    public class MD5
    {
    ? private static MD5 md5 = null;
    ? private MD5(){}
    ? public static MD5 getInstance()
    ? {
    ??? if (md5 == null)
    ??? {
    ????? md5 = new MD5();
    ??? }
    ??? return md5;
    ? }

    ? /**
    ?? * Description:encrypt the String by "MD5"
    ?? * @param str String
    ?? * @return String
    ?? */
    ? public String calcMD5(String str)
    ? {
    ??? try
    ??? {
    ????? MessageDigest alga = MessageDigest.getInstance("MD5");
    ????? alga.update(str.getBytes());
    ????? byte[] digesta = alga.digest();
    ????? return byte2hex(digesta);
    ??? }
    ??? catch (Exception e)
    ??? {
    ????? //System.out.println(e.getMessage());
    ????? return null;
    ??? }
    ? }

    ? private String byte2hex(byte[] b)
    ? {
    ??? String hs = "";
    ??? String stmp = "";
    ??? for (int n = 0; n < b.length; n++)
    ??? {
    ????? stmp = (Integer.toHexString(b[n] & 0XFF));
    ????? if (stmp.length() == 1)
    ????? {
    ??????? hs = hs + "0" + stmp;
    ????? }
    ????? else
    ????? {
    ??????? hs = hs + stmp;
    ????? }
    ????? if (n < b.length - 1)
    ????? {
    ??????? hs = hs + "";
    ????? }
    ??? }
    ??? return hs;
    ? }
    }

    posted @ 2006-12-08 13:49 robbin163 閱讀(358) | 評論 (1)編輯 收藏

    package com.jama.credentials;

    import org.jasig.cas.authentication.principal.Credentials;

    public class LoginInfoCredentials
    ??? implements Credentials
    {

    ??? private String account;
    ??? private String password;
    ??? private String randCode;

    ??? public LoginInfoCredentials()
    ??? {
    ??? }

    ??? public String getAccount()
    ??? {
    ??????? return account;
    ??? }

    ??? public void setAccount(String account)
    ??? {
    ??????? this.account = account;
    ??? }

    ??? public String getPassword()
    ??? {
    ??????? return password;
    ??? }

    ??? public void setPassword(String password)
    ??? {
    ??????? this.password = password;
    ??? }

    ??? public String getRandCode()
    ??? {
    ??????? return randCode;
    ??? }

    ??? public void setRandCode(String randCode)
    ??? {
    ??????? this.randCode = randCode;
    ??? }
    }


    package com.jama.credentials;

    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import org.jasig.cas.authentication.principal.*;

    // Referenced classes of package com.jama.credentials:
    //??????????? LoginInfoCredentials

    public class LoginInfoToPrincipalResolver
    ??? implements CredentialsToPrincipalResolver
    {

    ??? private final Log log = LogFactory.getLog(getClass());

    ??? public LoginInfoToPrincipalResolver()
    ??? {
    ??? }

    ??? public Principal resolvePrincipal(Credentials credentials)
    ??? {
    ??????? LoginInfoCredentials loginInfo = (LoginInfoCredentials)credentials;
    ??????? if(log.isDebugEnabled())
    ??????? {
    ??????????? log.debug((new StringBuilder("Creating SimplePrincipal for [")).append(loginInfo.getAccount()).append("]").toString());
    ??????? }
    ??????? return new SimplePrincipal(loginInfo.getAccount());
    ??? }

    ??? public boolean supports(Credentials credentials)
    ??? {
    ??????? return credentials != null && com/jama/credentials/LoginInfoCredentials.isAssignableFrom(credentials.getClass());
    ??? }
    }

    posted @ 2006-12-08 13:48 robbin163 閱讀(270) | 評論 (0)編輯 收藏

    function ltrim(str) {
    ??????? var pattern = new RegExp("^[\\s]+","gi");
    ??????? return str.replace(pattern,"");
    }

    function rtrim(str) {
    ??????? var pattern = new RegExp("[\\s]+$","gi");
    ??????? return str.replace(pattern,"");
    }
    function trim(str) {
    ??????? return rtrim(ltrim(str));
    }

    posted @ 2006-11-18 14:35 robbin163 閱讀(515) | 評論 (0)編輯 收藏

    index.jsp
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD>
    <script language="javascript">
    function detect(){
    ? xml=new ActiveXObject("Microsoft.XMLHTTP");
    ? var post="";
    ? xml.open("POST","http://localhost:8080/xmlhttp.jsp",false);
    ? xml.setrequestheader("content-length" ,post.length);
    ? xml.setrequestheader("content-type" , "application/x-www-form-urlencoded" );
    ? xml.send(post);
    ? var res=xml.responseText;
    ? list.innerText=res;
    ? setTimeout("detect()",1000);
    }
    </script>

    <body onload = "detect()">
    test :
    ???? <a id="list" >? </a>

    </BODY>
    </HTML>


    xmlhttp.jsp
    <%@ page language="java" contentType="text/html;charset=GB2312"%>
    <%@ page import ="java.util.*"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD>

    <BODY>
    <%
    ? Random randor=new Random();
    ? out.println(randor.nextInt());
    %>
    </BODY>
    </HTML>

    posted @ 2006-11-17 12:43 robbin163 閱讀(186) | 評論 (0)編輯 收藏

    <2006年11月>
    2930311234
    567891011
    12131415161718
    19202122232425
    262728293012
    3456789

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 日韩精品无码免费专区午夜不卡| 最近中文字幕mv免费高清电影| 日本免费一区尤物| 久久亚洲精品成人无码网站| 国内永久免费crm系统z在线 | 免费看www视频| 亚洲午夜无码久久久久小说| 成人黄动漫画免费网站视频 | 国产成人AV片无码免费| 亚洲AV电影院在线观看| 日韩午夜理论免费TV影院| 久久丫精品国产亚洲av不卡| 亚洲黄色片免费看| 亚洲欧美成人一区二区三区| 在线观看国产情趣免费视频| 美女被免费视频网站a| 亚洲А∨精品天堂在线| 国产午夜精品理论片免费观看| 亚洲国产精品嫩草影院在线观看| 免费人妻无码不卡中文字幕系| 亚洲免费观看网站| 日韩中文无码有码免费视频| 免费国产a理论片| 亚洲AV无码码潮喷在线观看| 在线观看永久免费| 亚洲成熟丰满熟妇高潮XXXXX| 国产一卡二卡≡卡四卡免费乱码| 99久久精品毛片免费播放| 亚洲美女人黄网成人女| 色吊丝最新永久免费观看网站 | 亚洲真人日本在线| 最近免费视频中文字幕大全| 亚洲日本一线产区和二线| 国产精品V亚洲精品V日韩精品| 日韩成人免费视频| 亚洲av无码一区二区三区四区| 久久亚洲色一区二区三区| 精品福利一区二区三区免费视频| 亚洲av片在线观看| 亚洲精品视频在线| 国产免费人人看大香伊|