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

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

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

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


    $_SERVER['PHP_SELF'] #當(dāng)前正在執(zhí)行腳本的文件名,與 document root相關(guān)。
    $_SERVER['argv'] #傳遞給該腳本的參數(shù)。
    $_SERVER['argc'] #包含傳遞給程序的命令行參數(shù)的個(gè)數(shù)(如果運(yùn)行在命令行模式)。
    $_SERVER['GATEWAY_INTERFACE'] #服務(wù)器使用的 CGI 規(guī)范的版本。例如,“CGI/1.1”。
    $_SERVER['SERVER_NAME'] #當(dāng)前運(yùn)行腳本所在服務(wù)器主機(jī)的名稱。
    $_SERVER['SERVER_SOFTWARE'] #服務(wù)器標(biāo)識(shí)的字串,在響應(yīng)請(qǐng)求時(shí)的頭部中給出。
    $_SERVER['SERVER_PROTOCOL'] #請(qǐng)求頁面時(shí)通信協(xié)議的名稱和版本。例如,“HTTP/1.0”。
    $_SERVER['REQUEST_METHOD'] #訪問頁面時(shí)的請(qǐng)求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。
    $_SERVER['QUERY_STRING'] #查詢(query)的字符串。
    $_SERVER['DOCUMENT_ROOT'] #當(dāng)前運(yùn)行腳本所在的文檔根目錄。在服務(wù)器配置文件中定義。
    $_SERVER['HTTP_ACCEPT'] #當(dāng)前請(qǐng)求的 Accept: 頭部的內(nèi)容。
    $_SERVER['HTTP_ACCEPT_CHARSET'] #當(dāng)前請(qǐng)求的 Accept-Charset: 頭部的內(nèi)容。例如:“iso-8859-1,*,utf-8”。
    $_SERVER['HTTP_ACCEPT_ENCODING'] #當(dāng)前請(qǐng)求的 Accept-Encoding: 頭部的內(nèi)容。例如:“gzip”。
    $_SERVER['HTTP_ACCEPT_LANGUAGE']#當(dāng)前請(qǐng)求的 Accept-Language: 頭部的內(nèi)容。例如:“en”。
    $_SERVER['HTTP_CONNECTION'] #當(dāng)前請(qǐng)求的 Connection: 頭部的內(nèi)容。例如:“Keep-Alive”。
    $_SERVER['HTTP_HOST'] #當(dāng)前請(qǐng)求的 Host: 頭部的內(nèi)容。
    $_SERVER['HTTP_REFERER'] #鏈接到當(dāng)前頁面的前一頁面的 URL 地址。
    $_SERVER['HTTP_USER_AGENT'] #當(dāng)前請(qǐng)求的 User_Agent: 頭部的內(nèi)容。
    $_SERVER['HTTPS'] — 如果通過https訪問,則被設(shè)為一個(gè)非空的值(on),否則返回off
    $_SERVER['REMOTE_ADDR'] #正在瀏覽當(dāng)前頁面用戶的 IP 地址。
    $_SERVER['REMOTE_HOST'] #正在瀏覽當(dāng)前頁面用戶的主機(jī)名。
    $_SERVER['REMOTE_PORT'] #用戶連接到服務(wù)器時(shí)所使用的端口。
    $_SERVER['SCRIPT_FILENAME'] #當(dāng)前執(zhí)行腳本的絕對(duì)路徑名。
    $_SERVER['SERVER_ADMIN'] #管理員信息
    $_SERVER['SERVER_PORT'] #服務(wù)器所使用的端口
    $_SERVER['SERVER_SIGNATURE'] #包含服務(wù)器版本和虛擬主機(jī)名的字符串。
    $_SERVER['PATH_TRANSLATED'] #當(dāng)前腳本所在文件系統(tǒng)(不是文檔根目錄)的基本路徑。
    $_SERVER['SCRIPT_NAME'] #包含當(dāng)前腳本的路徑。這在頁面需要指向自己時(shí)非常有用。
    $_SERVER['REQUEST_URI'] #訪問此頁面所需的 URI。例如,“/index.html”。
    $_SERVER['PHP_AUTH_USER'] #當(dāng) PHP 運(yùn)行在 Apache 模塊方式下,并且正在使用 HTTP 認(rèn)證功能,這個(gè)變量便是用戶輸入的用戶名。
    $_SERVER['PHP_AUTH_PW'] #當(dāng) PHP 運(yùn)行在 Apache 模塊方式下,并且正在使用 HTTP 認(rèn)證功能,這個(gè)變量便是用戶輸入的密碼。
    $_SERVER['AUTH_TYPE'] #當(dāng) PHP 運(yùn)行在 Apache 模塊方式下,并且正在使用 HTTP 認(rèn)證功能,這個(gè)變量便是認(rèn)證的類型。
    posted @ 2012-02-01 12:00 robbin163 閱讀(196) | 評(píng)論 (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 {
    ??//設(shè)置頁面不緩存
    ??response.setHeader("Pragma","No-cache");
    ??response.setHeader("Cache-Control","no-cache");
    ??response.setDateHeader("Expires", 0);
    ??//在內(nèi)存中創(chuàng)建圖象
    ??int width=60, height=20;
    ??BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

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

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

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

    ??//設(shè)定字體
    ??g.setFont(new Font("Times New Roman",Font.PLAIN,18));
    ??
    ??//隨機(jī)產(chǎn)生155條干擾線,使圖象中的認(rèn)證碼不易被其它程序探測到
    ??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);
    ??}
    ??
    ??//取隨機(jī)產(chǎn)生的認(rèn)證碼(4位數(shù)字)
    ??String sRand="";
    ??for (int i=0;i<4;i++)
    ??{
    ????? String rand=String.valueOf(random.nextInt(10));
    ????? sRand+=rand;
    ????? // 將認(rèn)證碼顯示到圖象中
    ????? g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));//調(diào)用函數(shù)出來的顏色相同,可能是因?yàn)榉N子太接近,所以只能直接生成
    ????? g.drawString(rand,13*i+6,16);
    ??}

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


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

    ??//輸出圖象到頁面
    ??ImageIO.write(image, "JPEG", response.getOutputStream());??
    ?}
    ?
    ?//給定范圍獲得隨機(jī)顏色
    ?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);
    ??? }
    ?調(diào)用:
    ?<td height="25">
    ????????????<div align="right">
    ?????????????<font color="#000000">驗(yàn)證碼:</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 閱讀(244) | 評(píng)論 (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) | 評(píng)論 (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) | 評(píng)論 (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 閱讀(514) | 評(píng)論 (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 閱讀(185) | 評(píng)論 (0)編輯 收藏

    jasperreport中可以使用List作為數(shù)據(jù)源,使用格式如下.
    List list=this.customerDao.getAllCustomer();? //得到所有客戶
    JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(list);
    ???JasperPrint jasperPrint = JasperFillManager.fillReport(
    ?????reportFilePath, parameters, ds);
    得填充數(shù)據(jù)后,即可輸出顯示到PDF,Excel,Html
    到PDF:
    public byte[] generatePDF(String begCustNo, String endCustNo,
    ???String reportTitle, String reportFilePath) throws DemoException {
    ??// TODO Auto-generated method stub
    ?//begCustNo,endCustNo分別為查詢傳入的開始編號(hào),結(jié)束編號(hào).
    ??jdbcCustomerDao = new JdbcCustomerDao();
    ??Map parameters = new HashMap();
    ??parameters.put("ReportTitle", reportTitle);//報(bào)表標(biāo)題
    ??List list = jdbcCustomerDao.getAllCustomer(begCustNo, endCustNo);
    ???try {
    ???JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(list);
    ???JasperPrint jasperPrint = JasperFillManager.fillReport(
    ?????reportFilePath, parameters, ds);???return JasperExportManager.exportReportToPdf(jasperPrint);
    ??} catch (JRException e) {
    ???throw new DemoException("Report Export Failed.");
    ??}
    ?}
    到Html:
    public byte[] generateHtml(String begCustNo, String endCustNo,
    ???String reportTitle, String reportFilePath) throws DemoException {
    ??jdbcCustomerDao = new JdbcCustomerDao();
    ??Map parameters = new HashMap();
    ??parameters.put("ReportTitle", reportTitle);
    ??List list = jdbcCustomerDao.getAllCustomer(begCustNo, endCustNo);
    ??System.out.println("list size is :" + list.size());
    ??JRHtmlExporter exporter = new JRHtmlExporter();
    ??ByteArrayOutputStream oStream = new ByteArrayOutputStream();
    ??try {
    ???JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(list);
    ???JasperPrint jasperPrint = JasperFillManager.fillReport(
    ?????reportFilePath, parameters, ds);
    ???exporter.setParameter(
    ?????JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN,
    ?????Boolean.FALSE);
    ???exporter
    ?????.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
    ???exporter
    ?????.setParameter(JRExporterParameter.CHARACTER_ENCODING, "GBK");
    ???exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, oStream);
    ???exporter.exportReport();
    ???byte[] bytes = oStream.toByteArray();
    ???return bytes;
    ??} catch (JRException e) {
    ???throw new DemoException("Report Export Failed.");
    ??}
    ?}
    到Excel:
    public byte[] generateExcel(String begCustNo, String endCustNo,
    ???String reportTitle, String reportFilePath) throws DemoException {
    ??jdbcCustomerDao = new JdbcCustomerDao();
    ??Map parameters = new HashMap();
    ??parameters.put("ReportTitle", reportTitle);
    ??List list = jdbcCustomerDao.getAllCustomer(begCustNo, endCustNo);
    ??System.out.println("list size is :" + list.size());
    ??JRXlsExporter exporter = new JRXlsExporter(); // Excel
    ??ByteArrayOutputStream oStream = new ByteArrayOutputStream();
    ??try {
    ???JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(list);
    ???JasperPrint jasperPrint = JasperFillManager.fillReport(
    ?????reportFilePath, parameters, ds);
    ???exporter
    ?????.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
    ???exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, oStream);
    ???exporter.setParameter(
    ?????JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS,
    ?????Boolean.TRUE);
    ???exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET,
    ?????Boolean.FALSE);
    ???exporter.setParameter(
    ?????JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND,
    ?????Boolean.FALSE);
    ???exporter.exportReport();
    ???byte[] bytes = oStream.toByteArray();
    ???return bytes;

    ??} catch (JRException e) {
    ???throw new DemoException("Report Export Failed.");
    ??}
    ?}

    jsp調(diào)用方法:
    ?<%
    ????
    ???
    ?String filePath=getServletContext().getRealPath("/")+"report.jasper";?

    ?CustomerServiceImpl? custs=new CustomerServiceImpl();
    ??? byte[] bytes=null;
    ? String begNo=request.getParameter("beginCustNo");
    ? String endNo=request.getParameter("endCustNo");
    ? String type=request.getParameter("type");

    ? if(type.equals("Pdf")){?
    ????? bytes=?custs.generatePDF(begNo,endNo,"客戶資料明細(xì)表",filePath);
    ? }else if(type.equals("Excel")){
    ?? bytes=custs.generateExcel(begNo,endNo,"客戶資料明細(xì)表",filePath);
    ? }else
    ???? bytes=custs.generateHtml(begNo,endNo,"客戶資料明細(xì)表",filePath);


    ?if(bytes!=null){
    ??if(type.equals("Pdf")){
    ??????? ?response.setContentType("application/pdf");
    ??}else if(type.equals("Excel")){
    ???? response.setContentType("application/vnd.ms-excel");
    ??}else
    ???response.setContentType("text/html");
    ??? response.setContentLength(bytes.length);
    ??? ServletOutputStream ouputStream = response.getOutputStream();
    ??? ouputStream.write(bytes,0,bytes.length);
    ??? ouputStream.flush();
    ??? ouputStream.close();
    ?}else
    ?{
    ??out.println("error");
    ?}
    ?

    ?

    ? %>

    posted @ 2006-11-12 22:21 robbin163 閱讀(6390) | 評(píng)論 (6)編輯 收藏
    僅列出標(biāo)題  

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲午夜福利精品久久| 精品剧情v国产在免费线观看| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 亚洲AV成人精品网站在线播放| 皇色在线免费视频| 久久亚洲欧洲国产综合| 在线观看免费视频网站色| 久久久久久a亚洲欧洲aⅴ| 很黄很污的网站免费| 亚洲电影在线播放| 好男人视频社区精品免费| 亚洲AV无码一区二区三区网址| 国产大片51精品免费观看| 无人视频在线观看免费播放影院| 亚洲国产天堂久久综合| 中文字幕一区二区三区免费视频| 久久精品国产亚洲一区二区| 久久午夜伦鲁片免费无码| 亚洲大香人伊一本线| 成年女人永久免费观看片| kk4kk免费视频毛片| 亚洲精品无码mv在线观看网站| 99精品视频在线免费观看 | 亚洲精品在线观看视频| 男女免费观看在线爽爽爽视频| 色噜噜噜噜亚洲第一| 国产亚洲精品AA片在线观看不加载 | a级毛片视频免费观看| 亚洲高清无在码在线电影不卡| 成人免费视频软件网站| 亚洲高清免费视频| 亚洲国产精品久久网午夜 | 精品久久8x国产免费观看| 国产精品无码亚洲精品2021| 亚洲中文字幕久久精品无码喷水| 啦啦啦完整版免费视频在线观看| 人人狠狠综合久久亚洲| 久久亚洲精品成人| 日本黄页网站免费| 免费国产黄网站在线观看| 特级一级毛片免费看|