??xml version="1.0" encoding="utf-8" standalone="yes"?>男人天堂欧美日韩,日本一区二区三区免费看,欧美久久免费观看http://www.aygfsteel.com/fanyingjie/archive/2016/12/07/432059.htmlrogerfanrogerfanWed, 07 Dec 2016 07:23:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2016/12/07/432059.htmlhttp://www.aygfsteel.com/fanyingjie/comments/432059.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2016/12/07/432059.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/432059.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/432059.html
首先Q我们脓(chung)用支付接口的H5面,当然Q在q个面之前Q还需要做很多其他的操作,我们一步一步的来?

坑爹的官Ҏ(gu)给了两个不同的支付接口Q在微信公众q_开发中文的“微信JS-SDK说明文档”中Q给出的支付方式是下面被屏蔽的那一部分Q而在商户q_的“H5调v支付API”中Q又l了一份不同的接口Q即下面未屏蔽正怋用的接口。关于坑爹的微信提供了两个不同的支付接口Q网上搜索结果也是众说纷UP所以,只有自己试了。当ӞZ单,我直接试了下面这一U,然后奇迹般的成功了?
  阅读全文

rogerfan 2016-12-07 15:23 发表评论
]]>
【{】java二维码生成与解析代码实现http://www.aygfsteel.com/fanyingjie/archive/2015/12/30/428871.htmlrogerfanrogerfanWed, 30 Dec 2015 02:09:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2015/12/30/428871.htmlhttp://www.aygfsteel.com/fanyingjie/comments/428871.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2015/12/30/428871.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/428871.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/428871.htmlTwoDimensionCodec:二维码操作核心类
package qrcode;

import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import javax.imageio.ImageIO;

import jp.sourceforge.qrcode.QRCodeDecoder;
import jp.sourceforge.qrcode.exception.DecodingFailedException;

import com.swetake.util.Qrcode;

public class TwoDimensionCode {
    
    /**
     * 生成二维?QRCode)囄
     * 
@param content 存储内容
     * 
@param imgPath 囄路径
     
*/
    public void encoderQRCode(String content, String imgPath) {
        this.encoderQRCode(content, imgPath, "png", 7);
    }
    
    /**
     * 生成二维?QRCode)囄
     * 
@param content 存储内容
     * 
@param output 输出?br />     */
    public void encoderQRCode(String content, OutputStream output) {
        this.encoderQRCode(content, output, "png", 7);
    }
    
    /**
     * 生成二维?QRCode)囄
     * 
@param content 存储内容
     * 
@param imgPath 囄路径
     * 
@param imgType 囄cd
     
*/
    public void encoderQRCode(String content, String imgPath, String imgType) {
        this.encoderQRCode(content, imgPath, imgType, 7);
    }
    
    /**
     * 生成二维?QRCode)囄
     * 
@param content 存储内容
     * 
@param output 输出?br />     * @param imgType 囄cd
     
*/
    public void encoderQRCode(String content, OutputStream output, String imgType) {
        this.encoderQRCode(content, output, imgType, 7);
    }

    /**
     * 生成二维?QRCode)囄
     * 
@param content 存储内容
     * 
@param imgPath 囄路径
     * 
@param imgType 囄cd
     * 
@param size 二维码尺?br />     */
    public void encoderQRCode(String content, String imgPath, String imgType, int size) {
        try {
            BufferedImage bufImg = this.qRCodeCommon(content, imgType, size);
            
            File imgFile = new File(imgPath);
            // 生成二维码QRCode囄
            ImageIO.write(bufImg, imgType, imgFile);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 生成二维?QRCode)囄
     * 
@param content 存储内容
     * 
@param output 输出?br />     * @param imgType 囄cd
     * 
@param size 二维码尺?br />     */
    public void encoderQRCode(String content, OutputStream output, String imgType, int size) {
        try {
            BufferedImage bufImg = this.qRCodeCommon(content, imgType, size);
            // 生成二维码QRCode囄
            ImageIO.write(bufImg, imgType, output);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    
    /**
     * 生成二维?QRCode)囄的公共方?br />     * 
@param content 存储内容
     * 
@param imgType 囄cd
     * 
@param size 二维码尺?br />     * @return
     
*/
    private BufferedImage qRCodeCommon(String content, String imgType, int size) {
        BufferedImage bufImg = null;
        try {
            Qrcode qrcodeHandler = new Qrcode();
            // 讄二维码排错率Q可选L(7%)、M(15%)、Q(25%)、H(30%)Q排错率高可存储的信息少Q但对二l码清晰度的要求小
            qrcodeHandler.setQrcodeErrorCorrect('M');
            qrcodeHandler.setQrcodeEncodeMode('B');
            // 讄讄二维码尺寸,取D?-40QD大尺寸越大,可存储的信息大
            qrcodeHandler.setQrcodeVersion(size);
            // 获得内容的字节数l,讄~码格式
            byte[] contentBytes = content.getBytes("utf-8");
            // 囄寸
            int imgSize = 67 + 12 * (size - 1);
            bufImg = new BufferedImage(imgSize, imgSize, BufferedImage.TYPE_INT_RGB);
            Graphics2D gs = bufImg.createGraphics();
            // 讄背景颜色
            gs.setBackground(Color.WHITE);
            gs.clearRect(0, 0, imgSize, imgSize);

            // 讑֮囑փ颜色> BLACK
            gs.setColor(Color.BLACK);
            // 讄偏移量,不设|可能导致解析出?/span>
            int pixoff = 2;
            // 输出内容> 二维?/span>
            if (contentBytes.length > 0 && contentBytes.length < 800) {
                boolean[][] codeOut = qrcodeHandler.calQrcode(contentBytes);
                for (int i = 0; i < codeOut.length; i++) {
                    for (int j = 0; j < codeOut.length; j++) {
                        if (codeOut[j][i]) {
                            gs.fillRect(j * 3 + pixoff, i * 3 + pixoff, 3, 3);
                        }
                    }
                }
            } else {
                throw new Exception("QRCode content bytes length = " + contentBytes.length + " not in [0, 800].");
            }
            gs.dispose();
            bufImg.flush();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return bufImg;
    }
    
    /**
     * 解析二维码(QRCodeQ?br />     * 
@param imgPath 囄路径
     * 
@return
     
*/
    public String decoderQRCode(String imgPath) {
        // QRCode 二维码图片的文g
        File imageFile = new File(imgPath);
        BufferedImage bufImg = null;
        String content = null;
        try {
            bufImg = ImageIO.read(imageFile);
            QRCodeDecoder decoder = new QRCodeDecoder();
            content = new String(decoder.decode(new TwoDimensionCodeImage(bufImg)), "utf-8"); 
        } catch (IOException e) {
            System.out.println("Error: " + e.getMessage());
            e.printStackTrace();
        } catch (DecodingFailedException dfe) {
            System.out.println("Error: " + dfe.getMessage());
            dfe.printStackTrace();
        }
        return content;
    }
    
    /**
     * 解析二维码(QRCodeQ?br />     * 
@param input 输入?br />     * @return
     
*/
    public String decoderQRCode(InputStream input) {
        BufferedImage bufImg = null;
        String content = null;
        try {
            bufImg = ImageIO.read(input);
            QRCodeDecoder decoder = new QRCodeDecoder();
            content = new String(decoder.decode(new TwoDimensionCodeImage(bufImg)), "utf-8"); 
        } catch (IOException e) {
            System.out.println("Error: " + e.getMessage());
            e.printStackTrace();
        } catch (DecodingFailedException dfe) {
            System.out.println("Error: " + dfe.getMessage());
            dfe.printStackTrace();
        }
        return content;
    }

    public static void main(String[] args) {
        String imgPath = "G:/TDDOWNLOAD/Michael_QRCode.png";
        String encoderContent = "Hello 大大、小?welcome to QRCode!" + "\nMyblog [ http://sjsky.iteye.com ]" + "\nEMail [ sjsky007@gmail.com ]";
        TwoDimensionCode handler = new TwoDimensionCode();
        handler.encoderQRCode(encoderContent, imgPath, "png");
//        try {
//            OutputStream output = new FileOutputStream(imgPath);
//            handler.encoderQRCode(content, output);
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
        System.out.println("========encoder success");
        
        
        String decoderContent = handler.decoderQRCode(imgPath);
        System.out.println("解析l果如下Q?);
        System.out.println(decoderContent);
        System.out.println("========decoder success!!!");
    }
}
TwoDimensionCodeImage c:二维码图片对?/span>
package qrcode;

import java.awt.image.BufferedImage;

import jp.sourceforge.qrcode.data.QRCodeImage;

public class TwoDimensionCodeImage implements QRCodeImage {

    BufferedImage bufImg;
    
    public TwoDimensionCodeImage(BufferedImage bufImg) {
        this.bufImg = bufImg;
    }
    
    @Override
    public int getHeight() {
        return bufImg.getHeight();
    }

    @Override
    public int getPixel(int x, int y) {
        return bufImg.getRGB(x, y);
    }

    @Override
    public int getWidth() {
        return bufImg.getWidth();
    }

}


rogerfan 2015-12-30 10:09 发表评论
]]>
【{】在JSTL中用字W串处理函数http://www.aygfsteel.com/fanyingjie/archive/2015/12/19/428734.htmlrogerfanrogerfanSat, 19 Dec 2015 05:48:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2015/12/19/428734.htmlhttp://www.aygfsteel.com/fanyingjie/comments/428734.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2015/12/19/428734.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/428734.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/428734.html
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
下面是JSTL中自带的Ҏ(gu)列表以及其描q?nbsp; 阅读全文

rogerfan 2015-12-19 13:48 发表评论
]]>
【{】图文解_Nginx+tomcat配置集群负蝲均衡http://www.aygfsteel.com/fanyingjie/archive/2015/03/01/423109.htmlrogerfanrogerfanSun, 01 Mar 2015 03:18:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2015/03/01/423109.htmlhttp://www.aygfsteel.com/fanyingjie/comments/423109.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2015/03/01/423109.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/423109.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/423109.html

了解了二者之间的区别于应用场景,对Nginx产生厚的兴,阅读张宴?实战Nginx>Q这?5q的伙子年L为M?妒忌Q,?明白了大致原理和配置QUbuntu10.10Qwindow下对Nginx+tomcat负蝲均衡做了配置试Q将全部h转发到tomcatQƈ未做 静态,动态分开Q图片防盗链{配|?nbsp; 阅读全文

rogerfan 2015-03-01 11:18 发表评论
]]>
【{】手机web——自适应|页设计Qhtml/css控制Q?/title><link>http://www.aygfsteel.com/fanyingjie/archive/2015/02/13/422901.html</link><dc:creator>rogerfan</dc:creator><author>rogerfan</author><pubDate>Fri, 13 Feb 2015 01:23:00 GMT</pubDate><guid>http://www.aygfsteel.com/fanyingjie/archive/2015/02/13/422901.html</guid><wfw:comment>http://www.aygfsteel.com/fanyingjie/comments/422901.html</wfw:comment><comments>http://www.aygfsteel.com/fanyingjie/archive/2015/02/13/422901.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fanyingjie/comments/commentRss/422901.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fanyingjie/services/trackbacks/422901.html</trackback:ping><description><![CDATA[     摘要: q前Ş势来看,W(xu)eb App 正是g的一个趋势和潮流Q但是,对于Web App的设计可能大家有的不是很了解Q下面就整理好的网设计的技巧奉献给大家  <a href='http://www.aygfsteel.com/fanyingjie/archive/2015/02/13/422901.html'>阅读全文</a><img src ="http://www.aygfsteel.com/fanyingjie/aggbug/422901.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fanyingjie/" target="_blank">rogerfan</a> 2015-02-13 09:23 <a href="http://www.aygfsteel.com/fanyingjie/archive/2015/02/13/422901.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【{】Tomcat内存讄详解http://www.aygfsteel.com/fanyingjie/archive/2014/05/16/413747.htmlrogerfanrogerfanFri, 16 May 2014 09:12:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2014/05/16/413747.htmlhttp://www.aygfsteel.com/fanyingjie/comments/413747.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2014/05/16/413747.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/413747.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/413747.html


1. java.lang.OutOfMemoryError: Java heap space ----JVM HeapQ堆Q溢?
JVM在启动的时候会自动讄JVM Heap的|其初始空??Xms)是物理内存的1/64Q最大空?-Xmx)不可过物理内存?

可以利用JVM提供?Xmn -Xms -Xmx{选项可进行设|。Heap的大是Young Generation 和Tenured Generaion 之和?

在JVM中如?8Q的旉是用于GCQ且可用的Heap size 不2Q的时候将抛出此异怿息?

解决Ҏ(gu)Q手动设|JVM HeapQ堆Q的大小?



2. java.lang.OutOfMemoryError: PermGen space ---- PermGen space溢出?
PermGen space的全U是Permanent Generation spaceQ是?nbsp; 阅读全文

rogerfan 2014-05-16 17:12 发表评论
]]>
【{】JasperReport+iReport高报表设计实战http://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403433.htmlrogerfanrogerfanThu, 29 Aug 2013 02:50:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403433.htmlhttp://www.aygfsteel.com/fanyingjie/comments/403433.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403433.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/403433.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/403433.html一直以来,报表都是很多目中一个重要的、不可获取的l成部分。然而其复杂性和专业性又使得E序员不能够也没旉自己设计属于目前手头正在构徏的系l的报表模块Q即便设计来了又可能׃通用性等原因不能够应用到下一个系l当中,q就D了报表类?lg在市Z的火爆。典型的例子是水晶报表Q几乎无处不在。还有一些专门处理中国式报表的组件也陆箋出现在Y件市Z。然而遗憄是,他们中的l大多数都是要收费的--q也无可厚非Q毕竟h都是要生存的。所以大多数预算不够充裕的程序员都将目光转向了开源YӞ而JasperReport将是第一个进入他们视U中的佼D?
然而代码开源不代表我们可以大大方方的拿来q了,人家的文档也是要收费的,所以市面上有关于JasperReport的文虽然也不少Q但大多数都集中在简单应用和介绍基本操作的基之上。对于复杂的报表设计q不能提供良好的帮助。本文将火力集中在相对复杂的报表设计Q不包括囄和超q接{对办公pȝ或过E没有太大用途的面元素Q,交叉表的生成{高U报表设计方案。对于那些基本的操作则留l读者自行体会,怿可以为各位解决一些实际问题?
  阅读全文

rogerfan 2013-08-29 10:50 发表评论
]]>
【{】Jasperreport和iReport使用教程http://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403432.htmlrogerfanrogerfanThu, 29 Aug 2013 02:46:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403432.htmlhttp://www.aygfsteel.com/fanyingjie/comments/403432.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403432.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/403432.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/403432.htmlJasperReport是报表的引擎部分Q界面设计是用iReport。ؓ什么选择q两个Y件呢Q因两个软g都是开源的Q即免费?虽然某些文收费Q但是磨灭不了我们用它的理??

JasperReport是一个报表制作程序,用户按照它制定的规则~写一个XML文gQ然后得到用户需要输出的格式文g。它支持输出的文件格式包括PDFQHTMLQXMLQXLSQCSV{等?

用JasperReport做报表,可以分ؓ两种方式Q?

1?直接利用E序定义一个报?

2?写一个xml文g来描q这个报表,通常需要借助于iReport

JasperReport做报表时用的都是底层的东西,如线条、静态文本等Q底层的好处是强大、容易控制报表,但缺点就是编写很ȝ。庆q的是,我们有iReportq个软gQ这个Y件完全是弥补JasperReport的不I底层编写推向可视化Q大大的方便了我们?

  阅读全文

rogerfan 2013-08-29 10:46 发表评论
]]>
【{】spring+velocity+javamail发送模杉K?http://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403429.htmlrogerfanrogerfanThu, 29 Aug 2013 02:19:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403429.htmlhttp://www.aygfsteel.com/fanyingjie/comments/403429.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2013/08/29/403429.html#Feedback3http://www.aygfsteel.com/fanyingjie/comments/commentRss/403429.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/403429.htmlp用到spring+velocity+javamailq?个玩意,其实只用了springQ因为其?个都被spring集成了?
先看代码   阅读全文

rogerfan 2013-08-29 10:19 发表评论
]]>
【{】Java实现屏幕右下角弹出类QQ提示消息http://www.aygfsteel.com/fanyingjie/archive/2013/07/15/401567.htmlrogerfanrogerfanMon, 15 Jul 2013 02:50:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2013/07/15/401567.htmlhttp://www.aygfsteel.com/fanyingjie/comments/401567.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2013/07/15/401567.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/401567.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/401567.html  1import java.awt.BorderLayout;  2import java.awt.Color;  3im...  阅读全文

rogerfan 2013-07-15 10:50 发表评论
]]>
Java RPC通信机制之SOAPQ应用Apache Axisq行W(xu)eb Service开?/title><link>http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359402.html</link><dc:creator>rogerfan</dc:creator><author>rogerfan</author><pubDate>Sat, 24 Sep 2011 02:22:00 GMT</pubDate><guid>http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359402.html</guid><wfw:comment>http://www.aygfsteel.com/fanyingjie/comments/359402.html</wfw:comment><comments>http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359402.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fanyingjie/comments/commentRss/359402.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fanyingjie/services/trackbacks/359402.html</trackback:ping><description><![CDATA[     摘要: SOAP原意为Simple Object Access ProtocolQ简单对象访问协议)Q是一个用于分布式环境的、轻量的、基于XMLq行信息交换的通信协议QSOAP is an XML based protocol used to exchange information throughout a distributed environmentQ?<br> <br>以下是w3c|站上的定义Q?<br> <br>SOAP Version 1.2 (SOAP) is a lightweight protocol intended for exchanging structured information in a decentralized, distributed environment. It uses XML technologies to define an extensible messaging framework providing a message construct that can be exchanged over a variety of underlyi  <a href='http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359402.html'>阅读全文</a><img src ="http://www.aygfsteel.com/fanyingjie/aggbug/359402.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fanyingjie/" target="_blank">rogerfan</a> 2011-09-24 10:22 <a href="http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359402.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java RPC通信机制之RMIhttp://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359401.htmlrogerfanrogerfanSat, 24 Sep 2011 02:21:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359401.htmlhttp://www.aygfsteel.com/fanyingjie/comments/359401.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359401.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/359401.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/359401.html
RMIQRemote Method InvocationQ?
与本pd介l的其它两种RPC~程接口不同QRMIQRemote Method InvocationQ显得有些老旧Q它是在Java-IDL加入J2SE之前被引入的。RMI开发流E与CORBA如出一辙(从出现的旉上无法确定RMI是否是按照CORBA规范定制的)Q因此,其开发过E相Ҏ(gu)较烦琐,但是׃RMI是EJB的基Q因此,它在Java开发中h十分重要的地位?

以下是创E方法调用的5个步骤:

1. 定义一个扩展了Remote接口的接口,该接口中的每一个方法必  阅读全文

rogerfan 2011-09-24 10:21 发表评论
]]>
Java RPC通信机制之XML-RPCQApache XML-RPC 3.0开发简?/title><link>http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359400.html</link><dc:creator>rogerfan</dc:creator><author>rogerfan</author><pubDate>Sat, 24 Sep 2011 02:16:00 GMT</pubDate><guid>http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359400.html</guid><wfw:comment>http://www.aygfsteel.com/fanyingjie/comments/359400.html</wfw:comment><comments>http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359400.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fanyingjie/comments/commentRss/359400.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fanyingjie/services/trackbacks/359400.html</trackback:ping><description><![CDATA[     摘要: XML-RPC是一U简单的Q轻量的通过HTTP协议q行RPC通信的规范。本文以Apache XML-RPC 3.0为基Q对XML-RPC的基本原理及Apache XML-RPC 3.0的主要特性进行了讨论和分析?<br> <br>  <a href='http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359400.html'>阅读全文</a><img src ="http://www.aygfsteel.com/fanyingjie/aggbug/359400.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fanyingjie/" target="_blank">rogerfan</a> 2011-09-24 10:16 <a href="http://www.aygfsteel.com/fanyingjie/archive/2011/09/24/359400.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【{】电(sh)脑端android2.2手机模拟器,打算入手安卓手机的不妨先来尝鲜?/title><link>http://www.aygfsteel.com/fanyingjie/archive/2011/08/25/357264.html</link><dc:creator>rogerfan</dc:creator><author>rogerfan</author><pubDate>Thu, 25 Aug 2011 06:41:00 GMT</pubDate><guid>http://www.aygfsteel.com/fanyingjie/archive/2011/08/25/357264.html</guid><wfw:comment>http://www.aygfsteel.com/fanyingjie/comments/357264.html</wfw:comment><comments>http://www.aygfsteel.com/fanyingjie/archive/2011/08/25/357264.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fanyingjie/comments/commentRss/357264.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fanyingjie/services/trackbacks/357264.html</trackback:ping><description><![CDATA[     摘要: 现在行安卓pȝQ鉴于囊中羞涩,Ch机,所以我在|上找了个安卓模拟器Q特整理了一下,发给大家Q对安卓pȝ感兴的朋友不妨拿来解解馋吧? <br>Ҏ(gu)如下Q? <br>一.安装java JDK 1.6Qƈ配置以下三个环境变量Q? <br>下蝲地址 <br>1.d <br>变量名:JAVA_HOME <br>变量|C:\Program Files\Java\jdk1.6.0_10 <br>  <a href='http://www.aygfsteel.com/fanyingjie/archive/2011/08/25/357264.html'>阅读全文</a><img src ="http://www.aygfsteel.com/fanyingjie/aggbug/357264.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fanyingjie/" target="_blank">rogerfan</a> 2011-08-25 14:41 <a href="http://www.aygfsteel.com/fanyingjie/archive/2011/08/25/357264.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【{】tomcat内存讄Ҏ(gu)http://www.aygfsteel.com/fanyingjie/archive/2011/01/11/342779.htmlrogerfanrogerfanTue, 11 Jan 2011 08:57:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2011/01/11/342779.htmlhttp://www.aygfsteel.com/fanyingjie/comments/342779.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2011/01/11/342779.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/342779.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/342779.htmlwindows中大安知道QJAVAE序启动旉会JVM都会分配一个初始内存和最大内存给q个应用E序。这个初始内存和最大内存在一定程度都会媄响程序的性能。比如说在应用程序用到最大内存的时候,JVM是要先去做垃圑֛收的动作Q释放被占用的一些内存?
所以想调整Tomcat的启动时初始内存和最大内存就需要向JVM声明Q一般的JAVAE序在运行都可以通过?Xms -Xmx来调整应用程序的初始内存和最大内?
如:java -Xms64m -Xmx128m a.jar.
tomcat的启动程序是包装q的Q不能直接用java -X..... tomcat.*来改变内存的讄。在Tomcat在改变这个设|?
有两U方法:
1. 适合?tomcat_home%\bin中的startup.bat脚本启动Q需要在环境变量中加上CATALINA_OPTSq个属??
?SET CATALINA_OPTS= -Xms64m -Xmx512m;
ms是最的Qmx?nbsp; 阅读全文

rogerfan 2011-01-11 16:57 发表评论
]]>
【{】java实现高性能的数据同?/title><link>http://www.aygfsteel.com/fanyingjie/archive/2010/11/26/339125.html</link><dc:creator>rogerfan</dc:creator><author>rogerfan</author><pubDate>Fri, 26 Nov 2010 06:11:00 GMT</pubDate><guid>http://www.aygfsteel.com/fanyingjie/archive/2010/11/26/339125.html</guid><wfw:comment>http://www.aygfsteel.com/fanyingjie/comments/339125.html</wfw:comment><comments>http://www.aygfsteel.com/fanyingjie/archive/2010/11/26/339125.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fanyingjie/comments/commentRss/339125.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fanyingjie/services/trackbacks/339125.html</trackback:ping><description><![CDATA[     摘要: ?先在代码与生产库间徏立一个ConnectionQ将d到的数据攑֜ResultSet对象Q然后再与开发库建立一个Connection。从 ResultSet取出数据后通过TestConnection插入到开发库Q以此来实现Copy。代码写完后q行E序Q速度太慢了,一U钟只能Copy 一千条数据Q生产库上有上亿条数据,按照q个速度同步完要到猴q马月呀,用PreparedStatement批处理速度也没有提交多。我惌不能用多 U程处理Q多个hq活L一个hq活速度要快?<br> 假设生库有1万条数据Q我开5个线E,每个U程?000条数据,同时向开发库里插数据QOracle支持高ƈ发这L(fng)话速度臛_会提高好多倍,按照q?个思\重新q行了编码,批处理设|ؓ1万条一提交Q统计插入数量的变量使用 java.util.concurrent.atomic.AtomicLongQ程序一q行Q传输速度飞快CPU利用率在70%~90%Q现在一U钟?以拷?0万条记录Q没q几分钟上亿条数据一条不落地全部Copy到目标库?nbsp; <a href='http://www.aygfsteel.com/fanyingjie/archive/2010/11/26/339125.html'>阅读全文</a><img src ="http://www.aygfsteel.com/fanyingjie/aggbug/339125.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fanyingjie/" target="_blank">rogerfan</a> 2010-11-26 14:11 <a href="http://www.aygfsteel.com/fanyingjie/archive/2010/11/26/339125.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【{】汉语{拼音之pinyin4jhttp://www.aygfsteel.com/fanyingjie/archive/2010/10/25/336063.htmlrogerfanrogerfanMon, 25 Oct 2010 02:40:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2010/10/25/336063.htmlhttp://www.aygfsteel.com/fanyingjie/comments/336063.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2010/10/25/336063.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/336063.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/336063.html pinyin4j是一个支持将中文转换到拼音的Java开源类库,pinyin4j能够Ҏ(gu)中文字符获取其对应的拼音Q而且拼音的格式可以定制。pinyin4j的主:http://pinyin4j.sourceforge.net/
1. 支持体中文和J体中文字符Q?
2. 支持转换到汉语拼韻I通用拼音, 威妥玛拼韻I威玛拼法Q? 注音W号W二? 耉拼法和国语罗马字Q?
3. 支持多音字,卛_以获取一个中文字W的多种发音Q?
4. 支持多种字符串输出格式,比如支持Unicode格式的字Wü和声调W号(阴^ "ˉ",阛_^"ˊ",上声"ˇ",d"ˋ")的输出?

Z方便大家使用Q我源文g和jar包一q放上来了,Ƣ迎大家下蝲?
废话说Q下面是我徏立的一个通用c,有什么不的地方希望大家指正?
  阅读全文

rogerfan 2010-10-25 10:40 发表评论
]]>
String.split()Ҏ(gu)http://www.aygfsteel.com/fanyingjie/archive/2010/08/05/328059.htmlrogerfanrogerfanThu, 05 Aug 2010 08:43:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2010/08/05/328059.htmlhttp://www.aygfsteel.com/fanyingjie/comments/328059.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2010/08/05/328059.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/328059.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/328059.html
1、如果用?”作为分隔的话,必须是如下写法:String.split("\\."),q样才能正确的分隔开Q不能用String.split(".");

2、如果用“|”作为分隔的话,必须是如下写法:String.split("\\|"),q样才能正确的分隔开Q不能用String.split("|");?”和“|”都是{义字W,必须得加"\\";

3、如果在一个字W串中有多个分隔W,可以用“|”作字符Q比如:“acount=? and uu =? or n=??把三个都分隔出来Q可以用String.split("and|or");使用String.splitҎ(gu)分隔字符串时Q分隔符如果用到一些特D字W,可能会得不到我们预期的结果?  阅读全文

rogerfan 2010-08-05 16:43 发表评论
]]>
Struts2使用26 -- Convention插g http://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324044.htmlrogerfanrogerfanMon, 21 Jun 2010 02:16:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324044.htmlhttp://www.aygfsteel.com/fanyingjie/comments/324044.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324044.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/324044.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/324044.html默认所有的l果面都存储在WEB-INF/content下,你可以通过讄struts.convention.result.pathq个属性的值来改变到其他\径。如Q?

Xml代码Q?






则将路径配置CWEB-INF/page 下?

1.2. 讄Convention搜烦?
默认包\径包含action,actions,struts,struts2的所有包都会被struts作ؓ含有Actioncȝ路径来搜索。你可以通过讄struts.convention.package.locators属性来修改q个配置。如Q?


  阅读全文

rogerfan 2010-06-21 10:16 发表评论
]]>
日期操作助手c?http://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324043.htmlrogerfanrogerfanMon, 21 Jun 2010 02:15:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324043.htmlhttp://www.aygfsteel.com/fanyingjie/comments/324043.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324043.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/324043.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/324043.html阅读全文

rogerfan 2010-06-21 10:15 发表评论
]]>
分页助手c?/title><link>http://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324042.html</link><dc:creator>rogerfan</dc:creator><author>rogerfan</author><pubDate>Mon, 21 Jun 2010 02:13:00 GMT</pubDate><guid>http://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324042.html</guid><wfw:comment>http://www.aygfsteel.com/fanyingjie/comments/324042.html</wfw:comment><comments>http://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324042.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fanyingjie/comments/commentRss/324042.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fanyingjie/services/trackbacks/324042.html</trackback:ping><description><![CDATA[     摘要:   1/** *//**     2 * 分页操作助手c?nbsp;     3 *     4 */     5public class P...  <a href='http://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324042.html'>阅读全文</a><img src ="http://www.aygfsteel.com/fanyingjie/aggbug/324042.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fanyingjie/" target="_blank">rogerfan</a> 2010-06-21 10:13 <a href="http://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324042.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数字操作助手c?http://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324041.htmlrogerfanrogerfanMon, 21 Jun 2010 02:11:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324041.htmlhttp://www.aygfsteel.com/fanyingjie/comments/324041.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2010/06/21/324041.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/324041.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/324041.html阅读全文

rogerfan 2010-06-21 10:11 发表评论
]]>
【{】通过分析 JDK 源代码研I?Hash 存储机制http://www.aygfsteel.com/fanyingjie/archive/2010/03/23/316236.htmlrogerfanrogerfanTue, 23 Mar 2010 01:37:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2010/03/23/316236.htmlhttp://www.aygfsteel.com/fanyingjie/comments/316236.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2010/03/23/316236.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/316236.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/316236.html通过 HashMap、HashSet 的源代码分析?Hash 存储机制

集合和引?

像引用cd的数l一P当我们把 Java 对象攑օ数组之时Qƈ不是真正的把 Java 对象攑օ数组中,只是把对象的引用攑օ数组中,每个数组元素都是一个引用变量?


实际上,HashSet ?HashMap 之间有很多相g处,对于 HashSet 而言Q系l采?Hash 法军_集合元素的存储位|,q样可以保证能快速存、取集合元素Q对?HashMap 而言Q系l?key-value 当成一个整体进行处理,pȝLҎ(gu) Hash 法来计?key-val  阅读全文

rogerfan 2010-03-23 09:37 发表评论
]]>
java 集合框架详解http://www.aygfsteel.com/fanyingjie/archive/2010/03/22/316178.htmlrogerfanrogerfanMon, 22 Mar 2010 07:47:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2010/03/22/316178.htmlhttp://www.aygfsteel.com/fanyingjie/comments/316178.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2010/03/22/316178.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/316178.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/316178.htmll常会看到程序中使用了记录集Q常用的有Collection、HashMap、HashSet、ArrayListQ因为分不清楚它们之间的关系Q所以在使用时经怼hQ以至于不知道从何下手。在q儿作了一个小例子Q希望有助于帮大家理思\?
首先看一下它们的关系Q?
Collection
--ListQ?----------------------以特定次序存储元素。所以取出来的顺序可能和攑օ序不同?
---ArrayList
---LinkedList
---Vector
--Set Q?---------------------- 不含有重复的元素
--- HashSet
--- TreeSet
Map
---HashMap
---HashTable
---TreeMap   阅读全文

rogerfan 2010-03-22 15:47 发表评论
]]>
【{】Spring Security 2 配置_讲http://www.aygfsteel.com/fanyingjie/archive/2009/12/18/306574.htmlrogerfanrogerfanFri, 18 Dec 2009 08:07:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2009/12/18/306574.htmlhttp://www.aygfsteel.com/fanyingjie/comments/306574.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2009/12/18/306574.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/306574.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/306574.html
众所周知QSpring Security针对Acegi的一个重大的改进在于其配置方式大大化了。所以如果配|还是基于Acegi-1.Xq样比较J琐的配|方式的话,那么我们q不如直接用Acegi而不要去升了。所以在q里Q我结合一个示例,重点讨论一下Spring Security 2是如何进行配|简化的?

搭徏基础环境

首先我们为示例搭建基本的开发环境,环境的搭建方式,可以参考我的另外一文章:http://www.javaeye.com/wiki/struts2/1321-struts2-development-environment-to-build   阅读全文

rogerfan 2009-12-18 16:07 发表评论
]]>
【{】java 调用命o 备䆾mysql数据?http://www.aygfsteel.com/fanyingjie/archive/2009/08/18/291665.htmlrogerfanrogerfanTue, 18 Aug 2009 09:38:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2009/08/18/291665.htmlhttp://www.aygfsteel.com/fanyingjie/comments/291665.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2009/08/18/291665.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/291665.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/291665.html完整代码Q?
/**
* @param args
*/
public static void main(String[] args) {
/*
* 备䆾和导入是一个互逆的q程?
* 备䆾Q程序调用mysql的备份命令,d控制台输入流信息Q写?sql文gQ?
* 导入Q程序调用mysql的导入命令,把从.sql文g中读出的信息写入控制台的输出?
* 注意Q此时定向符">"?<"是不能用?
*/
backup();
load();
}
  阅读全文

rogerfan 2009-08-18 17:38 发表评论
]]>
【{】用java实现打印功能http://www.aygfsteel.com/fanyingjie/archive/2009/08/18/291603.htmlrogerfanrogerfanTue, 18 Aug 2009 01:59:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2009/08/18/291603.htmlhttp://www.aygfsteel.com/fanyingjie/comments/291603.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2009/08/18/291603.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/291603.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/291603.html下面代码实现了简单的打印功能Q?nbsp; 阅读全文

rogerfan 2009-08-18 09:59 发表评论
]]>
【{】Java NIO原理和?/title><link>http://www.aygfsteel.com/fanyingjie/archive/2009/05/31/279213.html</link><dc:creator>rogerfan</dc:creator><author>rogerfan</author><pubDate>Sun, 31 May 2009 07:17:00 GMT</pubDate><guid>http://www.aygfsteel.com/fanyingjie/archive/2009/05/31/279213.html</guid><wfw:comment>http://www.aygfsteel.com/fanyingjie/comments/279213.html</wfw:comment><comments>http://www.aygfsteel.com/fanyingjie/archive/2009/05/31/279213.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fanyingjie/comments/commentRss/279213.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fanyingjie/services/trackbacks/279213.html</trackback:ping><description><![CDATA[     摘要: Java NIO非堵塞应用通常适用用在I/Od{方面,我们知道Q系l运行的性能瓉通常在I/OdQ包括对端口和文件的操作上,q去Q在打开一个I/O通道后,read()一直等待在端口一边读取字节内容,如果没有内容q来Qread()也是d的等Q这会媄响我们程序l做其他事情Q那么改q做法就是开讄E,让线E去{待Q但是这样做也是相当耗费资源的?<br> <br>Java NIO非堵塞技术实际是采取Reactor模式Q或者说是Observer模式为我们监察I/O端口Q如果有内容q来Q会自动通知我们Q这P我们׃必开启多个线E死{,从外界看Q实C畅的I/OdQ不堵塞了?<br>  <a href='http://www.aygfsteel.com/fanyingjie/archive/2009/05/31/279213.html'>阅读全文</a><img src ="http://www.aygfsteel.com/fanyingjie/aggbug/279213.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fanyingjie/" target="_blank">rogerfan</a> 2009-05-31 15:17 <a href="http://www.aygfsteel.com/fanyingjie/archive/2009/05/31/279213.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【{】关于java产生随机C?/title><link>http://www.aygfsteel.com/fanyingjie/archive/2009/05/14/270572.html</link><dc:creator>rogerfan</dc:creator><author>rogerfan</author><pubDate>Thu, 14 May 2009 03:40:00 GMT</pubDate><guid>http://www.aygfsteel.com/fanyingjie/archive/2009/05/14/270572.html</guid><wfw:comment>http://www.aygfsteel.com/fanyingjie/comments/270572.html</wfw:comment><comments>http://www.aygfsteel.com/fanyingjie/archive/2009/05/14/270572.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/fanyingjie/comments/commentRss/270572.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/fanyingjie/services/trackbacks/270572.html</trackback:ping><description><![CDATA[     摘要: //Ҏ(gu)不同的难度生随机字母和数字 <br>for(int i=0; readomNumStart.length()<4; i++) { <br>if(difficult == 1) { <br> <br>//产生随机?-9的数? <br>a = String.valueOf((int)(Math.random() * 10)) ; <br>}   <a href='http://www.aygfsteel.com/fanyingjie/archive/2009/05/14/270572.html'>阅读全文</a><img src ="http://www.aygfsteel.com/fanyingjie/aggbug/270572.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/fanyingjie/" target="_blank">rogerfan</a> 2009-05-14 11:40 <a href="http://www.aygfsteel.com/fanyingjie/archive/2009/05/14/270572.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【{】获取JAVA路径Q包括CLASSPATH外的路径http://www.aygfsteel.com/fanyingjie/archive/2009/05/14/270571.htmlrogerfanrogerfanThu, 14 May 2009 03:39:00 GMThttp://www.aygfsteel.com/fanyingjie/archive/2009/05/14/270571.htmlhttp://www.aygfsteel.com/fanyingjie/comments/270571.htmlhttp://www.aygfsteel.com/fanyingjie/archive/2009/05/14/270571.html#Feedback0http://www.aygfsteel.com/fanyingjie/comments/commentRss/270571.htmlhttp://www.aygfsteel.com/fanyingjie/services/trackbacks/270571.html
注明Q如果从ANT启动E序Qthis.getClass().getResource("")取出来的比较怪,直接用JAVA命o行调试就可成功?
 
得到classpath和当前类的绝对\径的一些方?

获得CLASSPATH之外路径的方法:
URL base = this.getClass().getResource(""); //先获得本cȝ所在位|,?home/popeye/testjava/build/classes/net/
String path = new File(base.getFile(), "../../../"+name).getCanonicalPath(); //可以得?home/popeye/testjava/name   阅读全文

rogerfan 2009-05-14 11:39 发表评论
]]>
վ֩ģ壺 | ˫| | | ۲| | | | | | | | | º| γ| | | лͨ| | ˮ| | ˷| | | | | | ·| ɽ| | | | | | | ױ| ƽ| | ʡ| ʤ| |