??xml version="1.0" encoding="utf-8" standalone="yes"?>在线观看国产区亚洲一区成人,亚洲AV无码国产精品麻豆天美 ,亚洲日韩人妻第一页http://m.tkk7.com/ann/category/35029.html冰是没有未来的,因ؓ它的永恒zh-cnTue, 23 Aug 2011 01:35:30 GMTTue, 23 Aug 2011 01:35:30 GMT60tomcat-6.0.18 log4j讄http://m.tkk7.com/ann/archive/2010/01/14/309485.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Thu, 14 Jan 2010 10:10:00 GMThttp://m.tkk7.com/ann/archive/2010/01/14/309485.html下蝲地址Q?
http://www.apache.org/dist/tomcat/tomcat-6/v6.0.18/bin/extras/tomcat-juli.jar
http://www.apache.org/dist/tomcat/tomcat-6/v6.0.18/bin/extras/tomcat-juli-adapters.jar

tomcat6-------lib
| |--------tomcat-juli-adapters.jar
| |--------log4j.jar
| |--------log4j.properites
|
|----bin
|--------tomcat-juli.jar
阅读全文

]]>
debian Q?SEVERE: Failed to instanciate class hudson.node_monitors.DiskSpaceMonitorhttp://m.tkk7.com/ann/archive/2010/01/12/309137.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Tue, 12 Jan 2010 05:22:00 GMThttp://m.tkk7.com/ann/archive/2010/01/12/309137.html比如?home/hudson/下面
.hudson/nodeMonitors.xml 加入


false


false



  阅读全文

冰是没有未来的,因ؓ它的永恒 2010-01-12 13:22 发表评论
]]>
jetty 错误日志ava.lang.IllegalStateException: Form too large225854>200000 解决的办?/title><link>http://m.tkk7.com/ann/archive/2010/01/12/309107.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Tue, 12 Jan 2010 03:09:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2010/01/12/309107.html</guid><description><![CDATA[     摘要: <br> <br>Jetty's default configuration has a limitation on POST data Q?00000 bytesQthat <br>prevents Hudson from reading the Update Center data (available <br>plugins). Jetty gets an error like java.lang.IllegalStateException: Form too large. To resolve this, add something like this to jetty.xml: <br> <br>Jetty 6: <br> <br>在jetty.xml中设|该参数 <br> <br><Call class="java.lang.System" name="setProperty"> <br> <br> <Arg>org.mortbay.jetty.Request.maxFormContentSize</Arg> <br> <br> <Arg>-1</Ar  <a href='http://m.tkk7.com/ann/archive/2010/01/12/309107.html'>阅读全文</a><img src ="http://m.tkk7.com/ann/aggbug/309107.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2010-01-12 11:09 <a href="http://m.tkk7.com/ann/archive/2010/01/12/309107.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java restful webservice 之MultivaluedMap 例子http://m.tkk7.com/ann/archive/2010/01/11/309042.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Mon, 11 Jan 2010 09:02:00 GMThttp://m.tkk7.com/ann/archive/2010/01/11/309042.html
package com.test.web.resources;

import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;

import org.springframework.stereotype.Component;


/**
* 试
* @author ann
*
*/
@Path("/test")
@Component
public class Test {

@POST
@Path("/formTest")
  阅读全文

冰是没有未来的,因ؓ它的永恒 2010-01-11 17:02 发表评论
]]>
q发集合cȝ选择http://m.tkk7.com/ann/archive/2010/01/07/308580.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Thu, 07 Jan 2010 10:04:00 GMThttp://m.tkk7.com/ann/archive/2010/01/07/308580.html
ConcurrentHashMap和CopyOnWriteArrayList实现提供了更高的q发性,同时q保住了U程安全性,只不q在对其调用者的承诺上打了点折扣。ConcurrentHashMap和CopyOnWriteArrayListq不是在您用HashMap或ArrayList的Q何地斚w一定有用,但是它们是设计用来优化某些特定的公用解决Ҏ的。许多ƈ发应用程序将从对它们的用中获得好处?

ȝQ在多线Eƈ发情况下Qؓ了避免ConcurrentModificati  阅读全文

冰是没有未来的,因ؓ它的永恒 2010-01-07 18:04 发表评论
]]>
java jar http://m.tkk7.com/ann/archive/2009/12/22/306873.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Tue, 22 Dec 2009 01:47:00 GMThttp://m.tkk7.com/ann/archive/2009/12/22/306873.html阅读全文

冰是没有未来的,因ؓ它的永恒 2009-12-22 09:47 发表评论
]]>
gsonQJSON字符串{换成一个相{的Java对象Q?/title><link>http://m.tkk7.com/ann/archive/2009/11/05/gson.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Thu, 05 Nov 2009 07:31:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2009/11/05/gson.html</guid><description><![CDATA[     摘要: 目前大多C用gson的还要求在javacM使用java annotationQ不完全支持POJO?<br>Gsonq个Javacd可以把Java对象转换成JSONQ也可以把JSON字符串{换成一个相{的Java对象。Gson支持L复杂Java对象包括没有源代码的对象?<br> <br>下蝲地址 <br>http://code.google.com/p/google-gson/downloads/list  <a href='http://m.tkk7.com/ann/archive/2009/11/05/gson.html'>阅读全文</a><img src ="http://m.tkk7.com/ann/aggbug/301283.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2009-11-05 15:31 <a href="http://m.tkk7.com/ann/archive/2009/11/05/gson.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>restful webservice q回json格式的string出现的问?/title><link>http://m.tkk7.com/ann/archive/2009/10/15/298314.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Thu, 15 Oct 2009 01:28:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2009/10/15/298314.html</guid><description><![CDATA[     摘要: 在测试发?当数l返回json格式的String的时候,如果数组中只有一个,则返回的json格式不是数组形式Q而是单一对象格式?nbsp; <a href='http://m.tkk7.com/ann/archive/2009/10/15/298314.html'>阅读全文</a><img src ="http://m.tkk7.com/ann/aggbug/298314.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2009-10-15 09:28 <a href="http://m.tkk7.com/ann/archive/2009/10/15/298314.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java restful 风格的Webservicehttp://m.tkk7.com/ann/archive/2009/09/27/296641.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Sun, 27 Sep 2009 07:19:00 GMThttp://m.tkk7.com/ann/archive/2009/09/27/296641.html
1. 创徏一个project

2. 建立q回的model

q里面的model例子

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package com.test.webservice.model;

/**
*
* @author ann
*/
import com.fg114.model.People;
import java.util.Date;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax  阅读全文

冰是没有未来的,因ؓ它的永恒 2009-09-27 15:19 发表评论
]]>
java.lang.LinkageError: loader constraint violation: when resolving overridden method "com.sun.xml.ws.message.jaxb.AttachmentMarshallerImpl.addMtomAttachment(Ljavax/activation/DataHandler;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;" the chttp://m.tkk7.com/ann/archive/2009/09/18/295584.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Fri, 18 Sep 2009 08:13:00 GMThttp://m.tkk7.com/ann/archive/2009/09/18/295584.htmljava.lang.LinkageError: loader constraint violation: when resolving overridden method "com.sun.xml.ws.message.jaxb.AttachmentMarshallerImpl.addMtomAttachment(Ljavax/activation/DataHandler;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;" the class loader (instance of org/mortbay/jetty/webapp/WebAppClassLoader) of the current class, com/sun/xml/ws/message/jaxb/AttachmentMarshallerImpl, and its superclass loader (instance of <bootloader>), have different Class objects for the type javax/activation/DataHandler used in the signature 因ؓjetty自带的activation.jar和你的application中用到的activation.jar版本不一?也即It seems that versions of the same library are loaded in different classloaders, nasty error. 解决的办法就是把删除一个,把javaee.jarUd到jetty的lib下面

冰是没有未来的,因ؓ它的永恒 2009-09-18 16:13 发表评论
]]>
jvm调优ȝhttp://m.tkk7.com/ann/archive/2009/07/15/286871.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Wed, 15 Jul 2009 06:26:00 GMThttp://m.tkk7.com/ann/archive/2009/07/15/286871.html

׃应用服务器本w对内存消耗比较大Q所以遇C同配|的机器时经常要对suite的启动脚本进行修?/p>

来调整内存参敎ͼ其是在虚拟机分配内存过的情况

于是xȝ一下内存参数相关的内容Q但搜烦之后发现unixboy已经很好的ȝ?/p>

于是转蝲q来以供自己学习参考?/p>

声明Q本文一下内容{自:http://unixboy.javaeye.com/blog/174173

  1. 堆大设|?br /> JVM 中最大堆大小有三斚w限制Q相x作系l的数据模型Q?2-btq是64-bitQ限Ӟpȝ的可用虚拟内存限Ӟpȝ的可用物理内存限制?2位系l下Q一般限制在1.5G~2GQ?4为操作系l对内存无限制。我在Windows Server 2003 pȝQ?.5G物理内存QJDK5.0下测试,最大可讄?478m?br /> 典型讄Q?/span>
    • java -Xmx3550m -Xms3550m -Xmn2g -Xss128k
      -
      Xmx3550mQ设|JVM最大可用内存ؓ3550M?br /> -Xms3550mQ设|JVM促内存?550m。此值可以设|与-Xmx相同Q以避免每次垃圾回收完成后JVM重新分配内存?br /> -Xmn2gQ设|年M大小?G?strong style="font-weight: bold; ">整个堆大?q轻代大?+ q老代大小 + 持久代大?/span>。持久代一般固定大ؓ64mQ所以增大年M后,会减小q老代大小。此值对pȝ性能影响较大QSun官方推荐配置为整个堆?/8?br /> -Xss128kQ设|每个线E的堆栈大小。JDK5.0以后每个U程堆栈大小?MQ以前每个线E堆栈大ؓ256K。更具应用的U程所需内存大小q行调整。在相同物理内存下,减小q个D生成更多的线E。但是操作系l对一个进E内的线E数q是有限制的Q不能无限生成,l验值在3000~5000左右?br />
    • java -Xmx3550m -Xms3550m -Xss128k -XX:NewRatio=4 -XX:SurvivorRatio=4 -XX:MaxPermSize=16m -XX:MaxTenuringThreshold=0
      -XX:NewRatio=4
      :讄q轻代(包括Eden和两个Survivor区)与年老代的比|除去持久代)。设|ؓ4Q则q轻代与q老代所占比gؓ1Q?Q年M占整个堆栈的1/5
      -XX:SurvivorRatio=4
      Q设|年M中EdenZSurvivor区的大小比倹{设|ؓ4Q则两个SurvivorZ一个Eden区的比gؓ2:4Q一个Survivor区占整个q轻代的1/6
      -XX:MaxPermSize=16m:讄持久代大ؓ16m?br /> -XX:MaxTenuringThreshold=0Q设|垃圾最大年龄?strong style="font-weight: bold; ">如果讄?的话Q则q轻代对象不l过Survivor区,直接q入q老代。对于年老代比较多的应用Q可以提高效率?strong style="font-weight: bold; ">如果此D|ؓ一个较大|则年M对象会在Survivor行多ơ复Ӟq样可以增加对象再年M的存zL?/span>Q增加在q轻代即被回收的概论?/span>
  2. 回收器选择
    JVMl了三种选择Q?strong style="font-weight: bold; ">串行攉器、ƈ行收集器、ƈ发收集器Q但是串行收集器只适用于小数据量的情况Q所以这里的选择主要针对q行攉器和q发攉器。默认情况下QJDK5.0以前都是使用串行攉器,如果想用其他收集器需要在启动时加入相应参数。JDK5.0以后QJVM会根据当?a style="color: #108ac6; text-decoration: underline; ">pȝ配置q行判断?
    1. 吞吐量优?/strong>的ƈ行收集器
      如上文所qͼq行攉器主要以到达一定的吞吐量ؓ目标Q适用于科学技术和后台处理{?br /> 典型配置Q?
      • java -Xmx3800m -Xms3800m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20
        -XX:+UseParallelGC
        Q选择垃圾攉器ؓq行攉器?/span>此配|仅对年M有效。即上述配置下,q轻代用ƈ发收集,而年老代仍旧使用串行攉?br /> -XX:ParallelGCThreads=20Q配|ƈ行收集器的线E数Q即Q同时多个U程一赯行垃圑֛收。此值最好配|与处理器数目相{?br />
      • java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20 -XX:+UseParallelOldGC
        -XX:+UseParallelOldGCQ配|年老代垃圾攉方式为ƈ行收集。JDK6.0支持对年老代q行攉?br />
      • java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC  -XX:MaxGCPauseMillis=100
        -XX:MaxGCPauseMillis=100:讄每次q轻代垃圑֛收的最长时_如果无法满此时_JVM会自动调整年M大小Q以满此倹{?br />
      • java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC  -XX:MaxGCPauseMillis=100 -XX:+UseAdaptiveSizePolicy
        -XX:+UseAdaptiveSizePolicy
        Q设|此选项后,q行攉器会自动选择q轻代区大小和相应的Survivor区比例,以达到目标系l规定的最低相应时间或者收集频率等Q此值徏议用ƈ行收集器Ӟ一直打开?/li>
    2. 响应旉优先的ƈ发收集器
      如上文所qͼq发攉器主要是保证pȝ的响应时_减少垃圾攉时的停顿旉。适用于应用服务器、电信领域等?br /> 典型配置Q?
      • java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:ParallelGCThreads=20 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC
        -XX:+UseConcMarkSweepGCQ设|年老代为ƈ发收集。测试中配置q个以后Q?XX:NewRatio=4的配|失效了Q原因不明。所以,此时q轻代大最好用-Xmn讄?br /> -XX:+UseParNewGC:讄q轻代ؓq行攉。可与CMS攉同时使用。JDK5.0以上QJVM会根据系l配|自行设|,所以无需再设|此倹{?/span>
      • java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseConcMarkSweepGC -XX:CMSFullGCsBeforeCompaction=5 -XX:+UseCMSCompactAtFullCollection
        -XX:CMSFullGCsBeforeCompactionQ由于ƈ发收集器不对内存I间q行压羃、整理,所以运行一D|间以后会产生“片”Q得运行效率降低。此D|运行多次GC以后对内存空间进行压~、整理?br /> -XX:+UseCMSCompactAtFullCollectionQ打开对年老代的压~。可能会影响性能Q但是可以消除碎?/li>
  3. 辅助信息
    JVM提供了大量命令行参数Q打C息,供调试用。主要有以下一些:
    • -XX:+PrintGC
      输出形式Q[GC 118250K->113543K(130112K), 0.0094143 secs]

                      [Full GC 121376K->10414K(130112K), 0.0650971 secs]

    • -XX:+PrintGCDetails
      输出形式Q[GC [DefNew: 8614K->781K(9088K), 0.0123035 secs] 118250K->113543K(130112K), 0.0124633 secs]

                      [GC [DefNew: 8614K->8614K(9088K), 0.0000665 secs][Tenured: 112761K->10414K(121024K), 0.0433488 secs] 121376K->10414K(130112K), 0.0436268 secs]

    • -XX:+PrintGCTimeStamps -XX:+PrintGCQPrintGCTimeStamps可与上面两个混合使用
      输出形式Q?strong style="font-weight: bold; ">11.851: [GC 98328K->93620K(130112K), 0.0082960 secs]
    • -XX:+PrintGCApplicationConcurrentTime:打印每次垃圾回收前,E序未中断的执行旉。可与上面؜合?br /> 输出形式Q?strong style="font-weight: bold; ">Application time: 0.5291524 seconds
    • -XX:+PrintGCApplicationStoppedTimeQ打印垃圑֛收期间程序暂停的旉。可与上面؜合?br /> 输出形式Q?strong style="font-weight: bold; ">Total time for which application threads were stopped: 0.0468229 seconds
    • -XX:PrintHeapAtGC:打印GC前后的详l堆栈信?br /> 输出形式Q?br /> 34.702: [GC {Heap before gc invocations=7:
       def new generation   total 55296K, used 52568K [0x1ebd0000, 0x227d0000, 0x227d0000)
      eden space 49152K,  99% used [0x1ebd0000, 0x21bce430, 0x21bd0000)
      from space 6144K,  55% used [0x221d0000, 0x22527e10, 0x227d0000)
        to   space 6144K,   0% used [0x21bd0000, 0x21bd0000, 0x221d0000)
       tenured generation   total 69632K, used 2696K [0x227d0000, 0x26bd0000, 0x26bd0000)
      the space 69632K,   3% used [0x227d0000, 0x22a720f8, 0x22a72200, 0x26bd0000)
       compacting perm gen  total 8192K, used 2898K [0x26bd0000, 0x273d0000, 0x2abd0000)
         the space 8192K,  35% used [0x26bd0000, 0x26ea4ba8, 0x26ea4c00, 0x273d0000)
          ro space 8192K,  66% used [0x2abd0000, 0x2b12bcc0, 0x2b12be00, 0x2b3d0000)
          rw space 12288K,  46% used [0x2b3d0000, 0x2b972060, 0x2b972200, 0x2bfd0000)
      34.735: [DefNew: 52568K->3433K(55296K), 0.0072126 secs] 55264K->6615K(124928K)Heap after gc invocations=8:
       def new generation   total 55296K, used 3433K [0x1ebd0000, 0x227d0000, 0x227d0000)
      eden space 49152K,   0% used [0x1ebd0000, 0x1ebd0000, 0x21bd0000)
        from space 6144K,  55% used [0x21bd0000, 0x21f2a5e8, 0x221d0000)
        to   space 6144K,   0% used [0x221d0000, 0x221d0000, 0x227d0000)
       tenured generation   total 69632K, used 3182K [0x227d0000, 0x26bd0000, 0x26bd0000)
      the space 69632K,   4% used [0x227d0000, 0x22aeb958, 0x22aeba00, 0x26bd0000)
       compacting perm gen  total 8192K, used 2898K [0x26bd0000, 0x273d0000, 0x2abd0000)
         the space 8192K,  35% used [0x26bd0000, 0x26ea4ba8, 0x26ea4c00, 0x273d0000)
          ro space 8192K,  66% used [0x2abd0000, 0x2b12bcc0, 0x2b12be00, 0x2b3d0000)
          rw space 12288K,  46% used [0x2b3d0000, 0x2b972060, 0x2b972200, 0x2bfd0000)
      }
      , 0.0757599 secs]
    • -Xloggc:filename:与上面几个配合用,把相x志信息记录到文g以便分析?/li>
  4. 常见配置汇?/strong>
    1. 堆设|?
      • -Xms:初始堆大?/li>
      • -Xmx:最大堆大小
      • -XX:NewSize=n:讄q轻代大?/li>
      • -XX:NewRatio=n:讄q轻代和q老代的比倹{如:?Q表C年M与年老代比gؓ1Q?Q年M占整个年Mq老代和的1/4
      • -XX:SurvivorRatio=n:q轻代中EdenZ两个Survivor区的比倹{注意Survivor区有两个。如Q?Q表CEdenQSurvivor=3Q?Q一个Survivor区占整个q轻代的1/5
      • -XX:MaxPermSize=n:讄持久代大?/li>
    2. 攉器设|?
      • -XX:+UseSerialGC:讄串行攉?/li>
      • -XX:+UseParallelGC:讄q行攉?/li>
      • -XX:+UseParalledlOldGC:讄q行q老代攉?/li>
      • -XX:+UseConcMarkSweepGC:讄q发攉?/li>
    3. 垃圾回收l计信息
      • -XX:+PrintGC
      • -XX:+PrintGCDetails
      • -XX:+PrintGCTimeStamps
      • -Xloggc:filename
    4. q行攉器设|?
      • -XX:ParallelGCThreads=n:讄q行攉器收集时使用的CPU数。ƈ行收集线E数?/li>
      • -XX:MaxGCPauseMillis=n:讄q行攉最大暂停时?/li>
      • -XX:GCTimeRatio=n:讄垃圾回收旉占程序运行时间的癑ֈ比。公式ؓ1/(1+n)
    5. q发攉器设|?
      • -XX:+CMSIncrementalMode:讄为增量模式。适用于单CPU情况?/li>
      • -XX:ParallelGCThreads=n:讄q发攉器年M攉方式为ƈ行收集时Q用的CPU数。ƈ行收集线E数?/li>


四、调优ȝ

  1. q轻代大选择
    • 响应旉优先的应?/strong>Q?strong style="font-weight: bold; ">可能设大,直到接近pȝ的最低响应时间限?/span>Q根据实际情况选择Q。在此种情况下,q轻代收集发生的频率也是最的。同Ӟ减少到达q老代的对象?/li>
    • 吞吐量优先的应用Q尽可能的设|大Q可能到达Gbit的程度。因为对响应旉没有要求Q垃圾收集可以ƈ行进行,一般适合8CPU以上的应用?/li>
  2. q老代大小选择
    • 响应旉优先的应?/strong>Q年老代使用q发攉器,所以其大小需要小心设|,一般要考虑q发会话?/strong>?strong style="font-weight: bold; ">会话持箋旉{一些参数。如果堆讄了Q可以会造成内存片、高回收频率以及应用暂停而用传l的标记清除方式Q如果堆大了Q则需要较长的攉旉。最优化的方案,一般需要参考以下数据获得:
      • q发垃圾攉信息
      • 持久代ƈ发收集次?/li>
      • 传统GC信息
      • 花在q轻代和q老代回收上的旉比例
      减少q轻代和q老代p的时_一般会提高应用的效?/li>
    • 吞吐量优先的应用Q一般吞吐量优先的应用都有一个很大的q轻代和一个较的q老代。原因是Q这样可以尽可能回收掉大部分短期对象Q减中期的对象Q而年老代存N期存zd象?/li>
  3. 较小堆引L片问题
    因ؓq老代的ƈ发收集器使用标记、清除算法,所以不会对堆进行压~。当攉器回收时Q他会把盔R的空间进行合qӞq样可以分配l较大的对象。但是,当堆I间较小Ӟq行一D|间以后,׃出现“片”Q如果ƈ发收集器找不到够的I间Q那么ƈ发收集器会停止Q然后用传l的标记、清除方式进行回收。如果出?#8220;片”Q可能需要进行如下配|:
    • -XX:+UseCMSCompactAtFullCollectionQ用ƈ发收集器Ӟ开启对q老代的压~?/li>
    • -XX:CMSFullGCsBeforeCompaction=0Q上面配|开启的情况下,q里讄多少ơFull GC后,对年老代q行压羃

此外Q对ibm的jdk1.4版本Q不支持PermSize?/span>



]]>
linux java main函数启动的例?/title><link>http://m.tkk7.com/ann/archive/2009/06/15/282414.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Mon, 15 Jun 2009 10:02:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2009/06/15/282414.html</guid><description><![CDATA[     摘要: java -cp "./WEB-INF/lib/*:./WEB-INF/classes" bran.RestaurantCenterJettyStarter <br>nohup java -cp "./WEB-INF/lib/*:./WEB-INF/classes" bran.RestaurantCenterJettyStarter >log.log & 退出时候,不中?nbsp; <a href='http://m.tkk7.com/ann/archive/2009/06/15/282414.html'>阅读全文</a><img src ="http://m.tkk7.com/ann/aggbug/282414.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2009-06-15 18:02 <a href="http://m.tkk7.com/ann/archive/2009/06/15/282414.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>solr int Querying Ranges Problemhttp://m.tkk7.com/ann/archive/2009/06/13/282059.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Sat, 13 Jun 2009 09:45:00 GMThttp://m.tkk7.com/ann/archive/2009/06/13/282059.html
Ensure that the fieldType maps back to solr.SortableIntField rather
than solr.IntField


]]>
unconpilable exception code in netbeanshttp://m.tkk7.com/ann/archive/2009/06/13/282030.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Sat, 13 Jun 2009 06:38:00 GMThttp://m.tkk7.com/ann/archive/2009/06/13/282030.html
have a little testcase:

        Class enumClass = TestEnum.class;
        System.out.println(TestEnum.?;
        Method method = null;
        method = enumClass.getDeclaredMethod("values", new Class[0]);
        Object[] values = (Object[]) method.invoke(null, new Object[0]);
        Assert.assertTrue(values.length > 0);
        System.out.println(values[0]);

The method invocation blows out and complains  uncompilable code

The reason seems to be related to 
- auto compile on save 
- anto deploy on save 

feature: when they're turned off the problem went away! So weird!


]]>
jetty starter 不检?端口是否被占?/title><link>http://m.tkk7.com/ann/archive/2009/06/12/281846.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Fri, 12 Jun 2009 07:15:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2009/06/12/281846.html</guid><description><![CDATA[<font face="Arial" size="3"><span style="border-collapse: collapse; font-size: 12px;"> <div style="background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; padding-right: 5px; padding-bottom: 4px; padding-left: 4px; padding-top: 4px; width: 98%; word-break: break-all; "><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #0000FF; ">public</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">class</span><span style="color: #000000; "> RestaurantCenterJettyStarter {<br />     </span><span style="color: #0000FF; ">public</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">static</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> main(String[] args) {<br />         </span><span style="color: #0000FF; ">long</span><span style="color: #000000; "> start </span><span style="color: #000000; ">=</span><span style="color: #000000; "> System.currentTimeMillis();<br />         </span><span style="color: #0000FF; ">try</span><span style="color: #000000; "> {<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> set up files and urls<br /> </span><span style="color: #008000; ">//</span><span style="color: #008000; ">            URL[] urls;<br /> </span><span style="color: #008000; ">//</span><span style="color: #008000; ">            {<br /> </span><span style="color: #008000; ">//</span><span style="color: #008000; ">                urls = RefreshingURLClassLoader.getReloadableUrls();<br /> </span><span style="color: #008000; ">//</span><span style="color: #008000; ">            }<br /> <br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> deal with classloader<br /> </span><span style="color: #008000; ">//</span><span style="color: #008000; ">            ClassLoader parent = Thread.currentThread().getContextClassLoader();<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "><br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> eclipse will recompile the class. so I disable this<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "><br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> for (int i = 0; i < files.length; i++) {<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> File file = files[i];<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> CompilingClassLoader ccl = new CompilingClassLoader(parent,<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> file);<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> ccl.start();<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> parent = ccl;<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> }<br /> </span><span style="color: #008000; ">//</span><span style="color: #008000; ">            URLClassLoader urlCloader = new RefreshingURLClassLoader(urls, parent);<br /> </span><span style="color: #008000; ">//</span><span style="color: #008000; ">            Thread.currentThread().setContextClassLoader(urlCloader);<br /> <br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> finally, start the server!</span><span style="color: #008000; "><br /> </span><span style="color: #000000; ">            Server server </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> Server();<br />             SelectChannelConnector connector </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> SelectChannelConnector();<br />             connector.setPort(</span><span style="color: #000000; ">8080</span><span style="color: #000000; ">);<br />             connector.setReuseAddress(</span><span style="color: #0000FF; ">false</span><span style="color: #000000; ">); //<span style="font-size: 12px; ">q样׃能重复启动同一?jetty ? </span><span style="border-collapse: separate; color: #003366; font-size: 17px; font-weight: bold; ">jetty starter 不检?端口是否被占?/span><br />             server.setConnectors(</span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> Connector[] { connector });<br /> <br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> WebAppContext wac4 = new WebAppContext("./chatty", "/chatty");<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> WebAppContext wac = new WebAppContext("/s100-webdata/photo",<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> "/photo");<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> WebAppContext wac2 = new WebAppContext("/s100-webdata/photo",<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> "/video");</span><span style="color: #008000; "><br /> </span><span style="color: #000000; ">            WebAppContext wac3 </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> WebAppContext(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">./web</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #000000; ">"</span><span style="color: #000000; ">/RestaurantCenter</span><span style="color: #000000; ">"</span><span style="color: #000000; ">);<br /> <br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> wac.setClassLoader(urlCloader);<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> wac2.setClassLoader(urlCloader);<br /> </span><span style="color: #008000; ">//</span><span style="color: #008000; ">            wac3.setClassLoader(urlCloader);<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> wac4.setClassLoader(urlCloader);</span><span style="color: #008000; "><br /> </span><span style="color: #000000; "><br />             ContextHandlerCollection contexts </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> ContextHandlerCollection();<br />             contexts.setHandlers(</span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> Handler[] { wac3, </span><span style="color: #008000; ">/*</span><span style="color: #008000; "> wac, wac2,wac4 </span><span style="color: #008000; ">*/</span><span style="color: #000000; ">}); </span><span style="color: #008000; ">//</span><span style="color: #008000; "> the<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> order<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> doesn't<br />             </span><span style="color: #008000; ">//</span><span style="color: #008000; "> matter</span><span style="color: #008000; "><br /> </span><span style="color: #000000; "><br />             HandlerCollection handlers </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> HandlerCollection();<br />             handlers.setHandlers(</span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> Handler[] { contexts, </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> DefaultHandler() });<br /> <br />             server.setHandler(handlers);<br />             server.start();<br />             </span><span style="color: #0000FF; ">long</span><span style="color: #000000; "> duration </span><span style="color: #000000; ">=</span><span style="color: #000000; "> System.currentTimeMillis() </span><span style="color: #000000; ">-</span><span style="color: #000000; "> start;<br />             System.out.println(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">启动 Jetty 服务?#160;in </span><span style="color: #000000; ">"</span><span style="color: #000000; "> </span><span style="color: #000000; ">+</span><span style="color: #000000; "> duration </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">"</span><span style="color: #000000; ">ms</span><span style="color: #000000; ">"</span><span style="color: #000000; ">);<br />             System.out.println(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">Web Service is @ http://localhost:8080/RestaurantCenter/RestaurantWebService?wsdl</span><span style="color: #000000; ">"</span><span style="color: #000000; "> );<br />         } </span><span style="color: #0000FF; ">catch</span><span style="color: #000000; "> (Exception e) {<br />             e.printStackTrace();<br />         }<br /> <br />     }<br /> }<br /> <br /> </span></div> </span></font> <img src ="http://m.tkk7.com/ann/aggbug/281846.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2009-06-12 15:15 <a href="http://m.tkk7.com/ann/archive/2009/06/12/281846.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>solrj的相关网址http://m.tkk7.com/ann/archive/2009/06/03/279774.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Wed, 03 Jun 2009 03:55:00 GMThttp://m.tkk7.com/ann/archive/2009/06/03/279774.htmlhttp://mxsfengg.javaeye.com/?show_full=true




]]>
Google geo APIhttp://m.tkk7.com/ann/archive/2009/06/03/279748.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Wed, 03 Jun 2009 01:57:00 GMThttp://m.tkk7.com/ann/archive/2009/06/03/279748.htmlhttp://ditu.google.com/maps/geo?output=json&oe=utf-8&q=要查的地址

/**
 * a positive response:
 * 
 * 
 {
    "name": "上v金桥开发区",
    "Status": {
        "code": 200,
        "request": "geocode"
    },
    "Placemark": [
        {
            "id": "p1",
            "address": "中国上v市东新区金桥开发\r\r\n?,
            "AddressDetails": {
                "Country": {
                    "CountryNameCode": "CN",
                    "CountryName": "中国",
                    "Locality": {
                        "LocalityName": "上v\r\r\n?,
                        "DependentLocality": {
                            "DependentLocalityName": "东新区",
                            "AddressLine": [
                                "金桥开发区"
                            ]
                        }
                    }
                },
                "Accuracy": 9
            },
            "Point": {
                "coordinates": [
                    121.588633,
                    31.240829,
                    0
                ]
            }
        },
        {
            "id": "p2",
            "address": "中国上v市东新区东金桥开发\r\r\n?,
            "AddressDetails": {
                "Country": {
                    "CountryNameCode": "CN",
                    "CountryName": "中国",
                    "Locality": {
                        "LocalityName": "上v\r\r\n?,
                        "DependentLocality": {
                            "DependentLocalityName": "东新区",
                            "AddressLine": [
                                "东金桥开发区"
                            ]
                        }
                    }
                },
                "Accuracy": 9
            },
            "Point": {
                "coordinates": [
                    121.588633,
                    31.240829,
                    0
                ]
            }
        }
    ]
}

a negetive response:

{
    "name": "东西打点",
    "Status": {
        "code": 602,
        "request": "geocode"
    }
}


]]>
成批转换java 文g的编?/title><link>http://m.tkk7.com/ann/archive/2009/06/03/279745.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Wed, 03 Jun 2009 01:52:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2009/06/03/279745.html</guid><description><![CDATA[<span style="font-family: Arial; font-size: 12px; "> <table xmlns="http://www.w3.org/1999/xhtml" id="sites-content-table5" class="sites-layout-hbox" cellspacing="0" style="width: 100%; table-layout: fixed; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "> <tbody> <tr> <td id="col05" width="100%;" style="vertical-align: top; "> <div class="qak2cak" id="sites-content05" class="goog-ws-content-wrapper sites-clear" style="background-color: transparent; "> <div dir="ltr" style="background-color: transparent; ">netbeans目中缺省?utf-8. q要求所有的源文件?utf8 ~码有些源文件是从别的文件系l中拯出来, 可能使用别的~码方式, 例如 iso-8859-1. 如果其中?Ascii 扩展字符, ?~译的时候会抱怨有 q不认识?unicode ~码.  (ummapped unicode characters)<br /> <br /> 解决Ҏ: 使用 GNU iconv 工具q行批处理{? <br /> <br /> - iconv ?cygwin 中有发布, 需?iconv2 ? 也有单独?windows 版本. <br /> <br /> - ?一个时文件目录两U徏立和源目录相同的目录l构: 拯q去以后, find . -name "*.*" | xargs rm,  find . -name ".svn" | xargs rm -R<br /> - 在源文g目录?<span style="font-family: 'courier new', monospace; "> $ for a in `find . -name "*.java"`; do iconv -f iso-8859-1 -t utf-8 <"$a" > /tmp/"$a" ; done</span><br /> <br /> 源文件如果是 GBK ~码, ?-f gbk<br /> <br /> - 然后拯q来替换原有的文? </div> </div> </td> </tr> </tbody> </table> </span> <img src ="http://m.tkk7.com/ann/aggbug/279745.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2009-06-03 09:52 <a href="http://m.tkk7.com/ann/archive/2009/06/03/279745.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>标记javabean 属性不要映到 xmlhttp://m.tkk7.com/ann/archive/2009/06/03/279742.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Wed, 03 Jun 2009 01:44:00 GMThttp://m.tkk7.com/ann/archive/2009/06/03/279742.html
JTS Geometry 对象不能?JAXB 映射成xml. 

可用一下的Ҏ避免指定?java bean property 不被 xml ?br />
?bean 的classU别: 

@XmlAccessorType(XmlAccessType.FIELD) // for jaxb to ananlyze the object

然后?field 上面

@XmlTransient


如果没有 XmlAccessorType, 则需要把 @XmlTransient 攑֜getter 上面.


]]>
visualparadigm 实体和数据库的映?/title><link>http://m.tkk7.com/ann/archive/2009/05/22/277243.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Fri, 22 May 2009 02:24:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2009/05/22/277243.html</guid><description><![CDATA[<font color="#002C99"> <div>数据库映ؓ实体Q?span style="color: #000000; "><a style="color: #002c99; text-decoration: none; ">http://resources.visual-paradigm.com/index.php/dbm-tut/42-tut/129-db-reverse-sc.htm</a>l</span></div> <div><font color="#000000">实体映射为数据库Q?a style="color: #002c99; text-decoration: none; ">http://resources.visual-paradigm.com/index.php/dbm-tut/42-tut/129-db-reverse-sc.htm</a>l</font></div> </font> <div><font color="#002C99"><br /> </font></div> <img src ="http://m.tkk7.com/ann/aggbug/277243.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2009-05-22 10:24 <a href="http://m.tkk7.com/ann/archive/2009/05/22/277243.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>log4j 发送到消息?jms server Q?openMQQ?/title><link>http://m.tkk7.com/ann/archive/2009/05/14/270611.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Thu, 14 May 2009 06:45:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2009/05/14/270611.html</guid><description><![CDATA[     摘要: 1. log4j的配|?<br> <br>### direct log messages to stdout ### <br>log4j.appender.stdout=org.apache.log4j.ConsoleAppender <br>log4j.appender.stdout.Target=System.out <br>log4j.appender.stdout.layout=org.apache.log4j.PatternLayout <br>log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n <br> <br>### direct messages to file hibernate.log ### <br>#log4j.appender.file=org.apache.log4j.FileAppender <br>#log4j.appender.file.File=hibernate.log <br>#log4j.appender.file.layout=or  <a href='http://m.tkk7.com/ann/archive/2009/05/14/270611.html'>阅读全文</a><img src ="http://m.tkk7.com/ann/aggbug/270611.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2009-05-14 14:45 <a href="http://m.tkk7.com/ann/archive/2009/05/14/270611.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>通过集成w䆾验证q行q接 sqlserverhttp://m.tkk7.com/ann/archive/2009/05/11/270047.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Mon, 11 May 2009 06:44:00 GMThttp://m.tkk7.com/ann/archive/2009/05/11/270047.html

      JDBC 驱动E序支持通过 integratedSecurity q接字符串属性在 Windows 操作pȝ上?#8220;cd 2”集成w䆾验证?/p>

  注意:如果您运?32 位的 Java 虚拟?(JVM)Q则使用 x86 文g夹中?sqljdbc_auth.dll 文gQ即使操作系l是 x64 版本也不例外。如果您?x64 处理器上q行 64 ?JVMQ则使用 x64 文g夹中?sqljdbc_auth.dll 文g。如果您?Itanium 处理器上q行 64 ?JVMQ则使用 IA64 文g夹中?sqljdbc_auth.dll 文g?/p>


 例子Q?br />
      1. java代码Q?br />    
public class DBConnect {
    
static {
        
try {

            Class.forName(
"com.microsoft.sqlserver.jdbc.SQLServerDriver");
        } 
catch (Exception e) {
                e.printStackTrace();
        }
    }

     
public void testCon() throws SQLException{
       Connection conn  
= null;
        
try {
             conn  
= DriverManager.getConnection("jdbc:sqlserver://localhost:1433;integratedSecurity=true;DatabaseName=test");
             System.out.println(
" conn is ok !");
        } 
catch (Exception e) {
            e.printStackTrace();
        }
finally{
            
if(conn != null)conn.close();
        }

    }

     
public static void main(String[] args) {
        DBConnect dbConnect 
= new  DBConnect();
        
try {
            dbConnect.testCon();
        } 
catch (SQLException ex) {
            ex.printStackTrace();
        }
    }

}

2. 讄sqljdbc_auth.dll
    

          请将 sqljdbc_auth.dll 文g复制计算Z Windows pȝ路径下的 JDBC 驱动E序安装目录中。sqljdbc_auth.dll 文g的安装位|如下:

        <安装目录>\sqljdbc_<版本>\<语言>\auth\

       也可以通过讄 java.libary.path pȝ属性来指定 sqljdbc_auth.dll 的目录,例如Q如?JDBC 驱动E序安装在默认目录中Q您可以?Java 应用E序启动时用以下虚拟机 (VM) 参数来指?DLL 的位|:

如果把你的javaE序讄为wins 服务可以参照http://m.tkk7.com/ann/articles/270043.html


      

 



]]>
glassfish 的jvm讄http://m.tkk7.com/ann/archive/2009/05/06/269170.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Wed, 06 May 2009 02:09:00 GMThttp://m.tkk7.com/ann/archive/2009/05/06/269170.html     -Xmx512m -Xms512m -Xmn256m -Xss128k
    -XX:PermSize=256m
    -XX:+DisableExplicitGC
    -XX:ParallelGCThreads=24
    -XX:LargePageSizeInBytes=256m
    -XX:+UseParallelOldGC
    -XX:+AggressiveOpts
    -DAllowManagedFieldsInDefaultFetchGroup=true
    -DAllowMediatedWriteInDefaultFetchGroup=true
    -XX:-UseBiasedLocking
    -Dcom.sun.ejb.containers.readonly.relative.refresh.mode=true
    -Dcom.sun.jts.dblogging.insertquery=insert into
txn_log_table_0 values ( ? , ? , ? )
    -Dcom.sun.jts.dblogging.deletequery=delete from
txn_log_table_0 where localtid = ? and servername = ?
    -Dcom.sun.jdo.spi.persistence.support.sqlstore.
MULTILEVEL_PREFETCH=true


上述D落?#8220;-XX”的参数是SUN JVM的扩展选项Q其中以下的q些都是和垃圑֛ӞGCQ有养I

  -XX:PermSize=256m
  -XX:+DisableExplicitGC
  -XX:ParallelGCThreads=24
  -XX:+UseParallelOldGC
-XX:+AggressiveHeap

下面q个选项是选择大的内存面: -XX:LargePageSizeInBytes=256m

"-XX:+AggressiveOpts"是一些试验性优化参敎ͼ“-XX:-UseBiasedLocking”是非竞争性的同步选项?

而选项“    -Xmx512m -Xms512m -Xmn256m -Xss128k ”则是初始堆栈的内存|注意-Xmx?Xms的值是一LQ这Ll性能会较q稳些?





]]>
galssfish做成wins 服务http://m.tkk7.com/ann/archive/2009/04/14/265454.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Tue, 14 Apr 2009 03:39:00 GMThttp://m.tkk7.com/ann/archive/2009/04/14/265454.htmlhttp://m.tkk7.com/Files/ann/GlassfishSvc.rarQ,q将其复制到 Glassfish 安装路径Q例?e:\Program Files\Sun\glassfishQ然后从命o行运行以下命令: java -jar GlassfishSvc.jar -i
2. 防止 Windows 用户注销
     打开 <GF_HOME>\domains\domain1\config\domain.xml 文gQƈ查找含有大量 <jvm-options>某个 JVM 选项</jvm-options> 行的部分。在该部分中d以下行:
   <jvm-options>-Xrs</jvm-options>
 注意: 在某?Windows 2003 Server 安装中将 -Xrs jvm-option d?domain.xml 无法解决此问题。所报告的解x案是?jvm 选项d?<GF_HOME>\lib\processLauncher.xmlQ?
   <process name="as9-server">
   ...
   <sysproperty key="-Xrs"/>
   ...



]]>
spring quartzQ定时Q务例子)http://m.tkk7.com/ann/archive/2009/03/23/261466.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Mon, 23 Mar 2009 02:56:00 GMThttp://m.tkk7.com/ann/archive/2009/03/23/261466.html      Quartz是一个作业调度系l(a job scheduling systemQ,负责在约定的旉到达时执行(或通知Q其他Y件控制。是一个Java的定时Q务框Ӟ使用它可以方便的实现计划dQ即在某个时间或每隔一定时间运行一个Q务。Quartz的核心是Job/JobDetail,Trigger和Scheduler?br />
    1.Job/JobDetail
       Job/JobDetail=既要执行的Q务,可以通过实现JobQinterfaceQ中的excuteҎ来指定Q务的具体操作?他描qC一个Q务具体的信息Q比如名Uͼl名{等。JobDetail对象是在Quartz的客LQ我们的E序Q在Job被关联加入到Scheduler时创建的QJobDetail包含了Job的各U属性值和   JobDataMapQJobDataMap中存放了与之相关的Jobcd例的状态信息?br />
    2.Trigger
       用于控制一lJob的触发,包裹SimmperTrigger和CronTriggerQ后者支持一U描q触发事件和间隔的表辑ּ语言。Quartz有个很好的想法就是分Md和Q务执行的条g。Trigger是控制d执行条g的类Q当Trigger认ؓ执行条g满的时刻,Trigger会通知相关的JobL行。分ȝ好处是:
            1).你可以ؓ某个Job兌多个TriggerQ其中Q何一个条件满都可以触发job执行Q这样可以完成一些组合的高触发条g
            2).当Trigger失效后(比如Q一个永q都不能满的条ӞQ你不必d明一个新的jobQ代替的是你可以为job兌一个新的Trigger让job可以l箋执行?br />   
    3.Scheduler是控制和理触发器的启动和终止?br />        使用Scheduler前必d例化SchedulerQ需要由SchedulerFactorycL创徏Scheduler,Factory的实例可以通过在JNDI存储中的Factory的序列化的方式获取,实例化Factory后直接用该实例很容易。如下:
       public class WangyouQuartzListener extends QuartzInitializerListener {
            public  static  SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

            public WangyouQuartzListener() {
                       super();
            }

           public void contextInitialized(ServletContextEvent event) {
                    super.contextInitialized(event);
                    String factoryKey = event.getServletContext().getInitParameter("servlet-context-factory-key");
                     if (factoryKey == null) {
                               factoryKey = QUARTZ_FACTORY_KEY;
                      }
                      StdSchedulerFactory factory = (StdSchedulerFactory) event.getServletContext().getAttribute(factoryKey);

                   try {
                         QuartzScheduleHolder.getInstance().setScheduler(factory.getScheduler());
                       //per 2 hours add friends
                       Trigger trigger =  TriggerUtils.makeHourlyTrigger(24);
                       //Trigger trigger =  TriggerUtils.makeSecondlyTrigger(60);
                       trigger.setName(AddNewUserFriendJobDetail.JOB_NAME);
                      trigger.setStartTime(this.getBeforeAfterDate(1,-13));
                      QuartzScheduleHolder.getInstance().getScheduler().scheduleJob(new AddNewUserFriendJobDetail(),trigger);
                      //把job和Trigger兌Q这样当Trigger认ؓ应该触发的时候就会调用(实际上是Scheduler调用Qjob.executeҎ了?br />
                      //per 3 day send mail and leave message
                      Trigger trigger2 =  TriggerUtils.makeHourlyTrigger(24*3);
                      trigger2.setStartTime(this.getBeforeAfterDate(1,-12));
                      trigger2.setName(LeaveMessageNewUserJobDetail.JOB_NAME);
                      QuartzScheduleHolder.getInstance().getScheduler().scheduleJob(new LeaveMessageNewUserJobDetail(),trigger2);

                       // per 6  recommend video
                      Trigger trigger3 =  TriggerUtils.makeHourlyTrigger(24*7);
                      trigger3.setName(RecommendVideoNewUserJobDetail.JOB_NAME);
                      trigger3.setStartTime(this.getBeforeAfterDate(2,-11));
                      QuartzScheduleHolder.getInstance().getScheduler().scheduleJob(new RecommendVideoNewUserJobDetail(),trigger3);

           
                         QuartzScheduleHolder.getInstance().getScheduler().start();
                   } catch (Exception e) {
                        e.printStackTrace();
                   }
              }

             public void contextDestroyed(ServletContextEvent event) {
                   super.contextDestroyed(event);
                     QuartzScheduleHolder.getInstance().setScheduler(null);
             }

              private Date getBeforeAfterDate( int day,int hour){
                       Calendar   cal   =   Calendar.getInstance();
                      cal.add(Calendar.DATE,day);
                     cal.add(Calendar.HOUR,hour);
                     return cal.getTime();
             }
           }
二。Spring Quartz
      Spring的scheduling。quartz包中对Quartz的框架进行封装,使得开发时不用写Q何Quartz和Spring的代码就可以实现定时d。Spring通过JobDetailBeanQMethodInvokingJobDetailFactoryBean实现Job的定义,后者更加用,只需指定要运行的c,和该cMq行的方法即可,Spring自动生成符合Quartz要求的JobDetail。例如:
      1.jobDetail
         public class SayHelloJob {
   
                   private static  DateFormat dateFormat =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

                   private String message;

                   public String getMessage() {
                           return message;
                  }

                  public void setMessage(String message) {
                            this.message = message;
                 }

                 public void sayHello(){
                          Date date = new Date();
                         System.out.println(dateFormat.format(date)+" :"+this.getMessage() );
                 }
          }
       2.spring的配|文Ӟquartzbean.xml
           <?xml version="1.0" encoding="UTF-8"?>

           <beans xmlns="http://www.springframework.org/schema/beans"
                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
                    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

                    <bean name="sayHelloJob" class="com.fg114.takeout.job.SayHelloJob">
                              <property name="message" value="start .............." />
                   </bean>

                   <bean name="sayHelloDetailBean" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
                              <property name="targetObject" ref="sayHelloJob" />
                             <property name="targetMethod" value="sayHello"/>
                    </bean>

                   <bean name="simpleTriggerBean" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
                                  <!--q里定义定时d的对象的位置-->
                            <property name="jobDetail" ref="sayHelloDetailBean"/>
                           <!--q里定义每六U钟E序执行一?->
                             <property name=""></property>
                            <property name="repeatInterval" value="6000"/>
                           <!--q里定义E序启动两秒钟后开始执?->
                         <property name="startDelay" value="2000"/>
                    </bean>
                 <! --          启动d    -->
                   <bean name="schedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
                         <property name="triggers">
                             <list>
                                  <ref bean="simpleTriggerBean"/>
                            </list>
                       </property>
                  </bean>
             </beans>
3.web.xml Q?br />             加入
           <listener>
             <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
           </listener>
       注意Qcommon-collections.jar 版本布不能是2.1版本?br />


         

     


]]>
spring 事务理QTransactionQ?例子http://m.tkk7.com/ann/archive/2009/03/19/260827.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Thu, 19 Mar 2009 08:57:00 GMThttp://m.tkk7.com/ann/archive/2009/03/19/260827.html     传统上, J2EE开发者有两种事务理选择Q全局和本C务。Spring框架对事务管理的支持极大地改变传l上认ؓJ2EE应用需要应用服务器。这U改变不单是仅仅Z通过EJB来用生命式事务而用应用服务器。事实上Q即使你的应用服务器有强大的JTA功能QSpring框架的声明式事务提供了比EJB CMTQ声明式事务Q更强大Q更高效的编E模型。一般来_只有支持多个事务资源Q才会需要应用服务器的JTA功能Q而大多数应用不需要能够处理跨多种资源。最重要的一点,使用SpringQ你可以选择何时把你的应用迁Ud全功能的应用服务器。用Spring不需要像以前一L~码实现本地事务代替EJB CMT或JTAQ现在只需要改配置问hQ而不必改代码?br />
一. Spring事务理

  1. Spring ~程式事务管理(programmatic transaction managementQ?br />      
   DefaultTransactionDefinition def = new DefaultTransactionDefinition(); 
TransactionStatus status = transactionManager.getTransaction(def);
try {
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
jdbcTemplate.update("INSERT INTO USER VALUES('Spring008', 'caterpillar', 'M', 29)");
jdbcTemplate.update("INSERT INTO USER VALUES('Spring009', 'momor', 'F', 26)");
jdbcTemplate.update("INSERT INTO USER VALUES('Spring010, 'beckyday', 'F', 35)");
} catch (DataAccessException ex) {
transactionManager.rollback(status); // 也可以執行status.setRollbackOnly();
throw ex; 
    }
transactionManager.commit(status);
见:http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=2398

  2. Spring宣告式事务管理(declarative transaction managementQ主要是在spring的配|文件中讄
    <bean id="userDAOProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> 
<property name="transactionManager"> <ref bean="transactionManager"/> </property> <property name="target">
<ref bean="userDAO"/>
</property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
见:http://www.javaworld.com.tw/confluence/pages/viewpage.action?pageId=2402
? Spring的@Transcation的例?br /> 1. class ?br /> @Component //注释可以将该类定义?Spring 容器中的 Bean
public Class UserDaoImpl implements IUserDao {
@Override
//标志updateUsersQ)为Transactional
@Transactional(
propagation = Propagation.REQUIRED,
isolation = Isolation.DEFAULT,
rollbackFor = Exception.class
) public void updateUsers(List<User> users){
forQUser user QusersQ{
//逻辑
}
}
}
注意Q?事务的属性和基本概念
Required : 如果在一个事务中调用Q就该Ҏ加到此事务中Q如果没有启动事务,创建新事务
RequiredNew Q?不管当前有没有事务,都启动新事务Q如果有Q会被挂P直到此方法结?br /> NotSupported Q?不能在事务中执行此方法,如果有事务,会被挂vQ直到此Ҏl束
Supports Q?如果有当前事务,此方法回加到当前事务Q如果没有,容器不会启动C?br /> Mandatory Q?必须在事务中执行此方法,否则会抛出异?Q?TransactionRequiredException
Never Q?必须不在事务中调用此ҎQ否则抛出RemoteException(q程调用)或EJBException(本地调用)
        2.spring配置文g加入Q?br />            .....................
            <tx:annotation-driven/>
          .....................

      注意Q?webSerivces 是不支持事务的,如果使用事务Q必d下层的Object中实玎ͼ例如在Service层或者是Dao层实现?br />
另外Q?
http://www.ibm.com/developerworks/cn/java/j-ts1.html
http://www.javaworld.com.tw/confluence/display/opensrc/Spring
http://www.redsaga.com/spring_ref/2.0/html/transaction.html#transaction-declarative


]]>
WebsService学习之一http://m.tkk7.com/ann/archive/2009/03/17/260295.html冰是没有未来的,因ؓ它的永恒冰是没有未来的,因ؓ它的永恒Tue, 17 Mar 2009 09:24:00 GMThttp://m.tkk7.com/ann/archive/2009/03/17/260295.html 一 . WebService 概念
       WebSerivce 是通过一pd标准和协议来保证E序之间动态连接,卛_布式服务lg。本质上是要以标准话的形式实现企业内外部各个不同服务系l之间的互调或集成。其中最 基本的协议包裹:SOAPQWebService之间的基本通信?nbsp;  议)QWSDLQWebService描述语言Q它定义了WebSerivce 是做什么的Q怎么做和查询的信息)QUDDIQ用于集中存攑֒查找WSDL描述文gQv着目录服务器的作用Q?br />
      1. SOAP. Simple Object Access Protocol

          SOAP是消息传递的协议Q它规定了Web Serivces之间是怎样传递消息的。简单的_SOAP规定了:
  
         1Q? 传递的消息格式是XML。Web Services 可以在Q何^?M语言实现?br />          
         2Q? q程对象Ҏ调用的格式?规定了怎样表示被调用对象及调用的方法名和参数类型?br />         
         3Q? 参数cd和XML格式之间的映,被调用的Ҏ有时候需要传递一个复杂的参数Q例如,一个Customer对象Q怎样用XML来表CZ个对象参敎ͼ也是SOAP所定义的范?br />               例如Q?lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="................../">
                        <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="...................">
                        <soapenv:Header/>
                        <soapenv:Body>
                                  <web:addNewCustomer>
                                            <!--Optional:-->
                                            <arg0>
                                                    <id>?</id>
                                            <!--Optional:-->
                                                   <lastUpdatedDate>?</lastUpdatedDate>
                                            <!--Optional:-->
                                                   <name>?</name>
                                           </arg0>
                                 </web:addNewCustomer>
                         </soapenv:Body>
                        </soapenv:Envelope>

         4Q? 异常处理以及其他的相关信?br />
      2. WSDL.Web Services Description Language
          是Web Services的定义语a 。是ZXML格式的关于WEB服务的描q语aQ主要的目的在于为别人提供你实现某种服务的有兛_容,也即Z让别的程序调用,你必d诉大家你的服务接 口,例如服务名称Q服务所在的机器名称Q监听端口,传递参数的cdQ个敎ͼ序{等Q这样别人才能调? 你的服务。用者用者通过q个wsdl文档Q创建想用的SOAPh信息Q通过HTTP传递web Service 提供者,Web 服务器在完成服务h之后Q将SOAPq回消息传回h者,服务h者在Ҏwsdl文档SOAP消息解析成自p够理解的内容?br />            例如Q?CustomerService.wsdl ,CustomerService_schema1.xsd(省落)
                 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
                 <!-- Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.3.1-hudson-749-SNAPSHOT. -->
                 <definitions targetNamespace=".............." name="CustomerService" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="..........." xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"                     xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
                   <types>
                        <xsd:schema>
                             <xsd:import namespace="...................." schemaLocation="CustomerService_schema1.xsd"/>
                        </xsd:schema>
                   </types>
                   <message name="addNewCustomerResponse">
                        <part name="parameters" element="tns:addNewCustomerResponse"/>
                   </message>
                   <portType name="CustomerService">
                        <operation name="addNewCustomer">
                            <input message="tns:addNewCustomer"/>
                            <output message="tns:addNewCustomerResponse"/>
                        </operation>
                    </portType>
                   <binding name="CustomerServicePortBinding" type="tns:CustomerService">
                        <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
                        <operation name="addNewCustomer">
                               <soap:operation soapAction=""/>
                               <input>
                                         <soap:body use="literal"/>
                               </input>
                               <output>
                                        <soap:body use="literal"/>
                               </output>
                        </operation>
                    </binding>
                  <service name="CustomerServiceService">
                        <port name="CustomerServicePort" binding="tns:CustomerServicePortBinding">
                                <soap:address location="REPLACE_WITH_ACTUAL_URL"/>
                       </port>
                  </service>
            </definitions>
            注意Q?Types Q数据类型的定义容器Q它使用某种cdpȝQ一般用XML Schema中的cdpȝ。例如这里面是Q?font size="1">
                       Message Q通信消息的数据结构的抽象cd化定义。用Types所定义的类型来定义整个消息的数据结构(例如QCustomerService_schema1.xsdQ?br />                         PortType:对于每个讉K入口cd所支持的操作的抽象几个Q这些操作可以由一个或多个讉K服务Ҏ支持?br />                        OperationQ?Ҏ务中所支持的操作的抽象描述Q一般单个Operation描述了一个访问入口的h/响应消息寏V例如:
                                       <operation name="addNewCustomer">
                                           <input message="tns:addNewCustomer"/>
                                           <output message="tns:addNewCustomerResponse"/>
                                       </operation>
                                      中有input/outPut消息寏V?br />                         BindingQ?特定端口cd的具体协议和数据格式规范的绑?br />                         Port Q?定义为协?数据格式l定与具体的Web讉K地址l合的单个服务访问点
                        ServiceQ相x务访问点的集合?br />                       
                   
      3. UDDI .Universal Description, Discovery, and Integration
           单说QUDDI用于集中存放和查找WSDL描述文gQv着目录服务器的作用?br />
?. Web service 生命?/span>
        见图Qhttp://gceclub.sun.com.cn/staticcontent/html/java/webservices_for/webservice_for_html_m126e0ad.gif
   
    下面描述?/span>XML Web service 调用时发生事件的序列Q?o:p>

1.         客户端徏立了新的XML Web service 服务代理cd例,此实例对象驻留在客户端的计算Z?/span>

2.         客户端调用一个代理类的方法?/font>

3.         客户计算机的底层l构序列?/span>XML Web service Ҏ的参CؓSOAP消息Qƈ通过|络其发送到XML Web service 服务端?/span>

4.         在服务端的底层结构及收到SOAP消息Qƈ房序列化?/span>XML。徏立一个类的实例来完成XML Web serviceQ调用XML Web service Ҏq传递XML参数?/span>

5.         XML Web service Ҏ执行Q最l设|返回值和输出参数?/span>

6.         XML Web service 服务方的底层l构返回值和数除参数序列化ؓSOAP消息。ƈ通过|络发回客户端?/span>

7.         客户端的底层l构接收C面的SOAP消息Q反序列?/span>XML回值和输出参数。ƈ其传递给代理cd例?/span>

              8.         客户端接受到q回式和输出参数

     webService 实现的例子?br />  
      1.实现一个WebServiceQ其能够接受和响应SOAP消息
      
      2.撰写一个WSDL文g用于描述此Web Services?br />
      3.此WSDL发布到UDDI?br />  
      4. 其他的应用程序(客户端)从UDDI上搜索倒你的WSDL

      5.Ҏ你的WSDLQ客L~写E序调用Web Service.

          





         



]]>
java URLEncoder 中特D处?/title><link>http://m.tkk7.com/ann/archive/2008/10/07/232875.html</link><dc:creator>冰是没有未来的,因ؓ它的永恒</dc:creator><author>冰是没有未来的,因ؓ它的永恒</author><pubDate>Tue, 07 Oct 2008 03:40:00 GMT</pubDate><guid>http://m.tkk7.com/ann/archive/2008/10/07/232875.html</guid><description><![CDATA[     摘要: java URLEncoder 中特D处?nbsp; <a href='http://m.tkk7.com/ann/archive/2008/10/07/232875.html'>阅读全文</a><img src ="http://m.tkk7.com/ann/aggbug/232875.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/ann/" target="_blank">冰是没有未来的,因ؓ它的永恒</a> 2008-10-07 11:40 <a href="http://m.tkk7.com/ann/archive/2008/10/07/232875.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://m.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> վ֩ģ壺 <a href="http://kimnote.com" target="_blank">ѧһ</a>| <a href="http://znboxcdn107.com" target="_blank">ϣӰԺѹۿƵ</a>| <a href="http://youketech.com" target="_blank">2020þþƷۺһ</a>| <a href="http://gysysz.com" target="_blank">޾ƷWWWþþþþ </a>| <a href="http://www779rr.com" target="_blank">߾Ʒһ</a>| <a href="http://kouchoubao.com" target="_blank">ҹƵ</a>| <a href="http://xianfeng-motor.com" target="_blank">re99þ6Ʒ</a>| <a href="http://bb9234.com" target="_blank">wwwƵ߹ۿ</a>| <a href="http://0330196.com" target="_blank">av</a>| <a href="http://rimcn.com" target="_blank">7777þĻ</a>| <a href="http://65123456.com" target="_blank">þպƷһ</a>| <a href="http://www676617.com" target="_blank">91Ʒһ鶹</a>| <a href="http://by6216.com" target="_blank">߹ۿ91Ʒ</a>| <a href="http://ekyzs.com" target="_blank">߹ۿվ</a>| <a href="http://sjzbosite.com" target="_blank">999þþѾƷ</a>| <a href="http://xtolm.com" target="_blank">߹ۿƵվɫ</a>| <a href="http://meixiudashi.com" target="_blank">Ƶ</a>| <a href="http://ccc16938.com" target="_blank">عΰAëƬѿ</a>| <a href="http://8099456.com" target="_blank">avպۺһ</a>| <a href="http://3344by.com" target="_blank">Ʒþþþþ޾Ʒ</a>| <a href="http://kkxzz.com" target="_blank">޵һվƵ</a>| <a href="http://zf91.com" target="_blank">˳߹ۿ</a>| <a href="http://https357171.com" target="_blank">AVþþƷ </a>| <a href="http://55118885.com" target="_blank">һһһƬѸ</a>| <a href="http://www-60060.com" target="_blank">ۺϾƷһ</a>| <a href="http://whdysdt.com" target="_blank">ɫվwww</a>| <a href="http://bb927bb.com" target="_blank">aĻ</a>| <a href="http://ydstbj.com" target="_blank">ɫͼѧ</a>| <a href="http://xingqiu1.com" target="_blank">ĻĻɫ</a>| <a href="http://yuezhaoming.com" target="_blank">ŵ</a>| <a href="http://www769393.com" target="_blank">Ƶ߹ۿ</a>| <a href="http://www-282555.com" target="_blank">޹Ʒۺɫ</a>| <a href="http://xsdjiagu.com" target="_blank">ۺϾþۺϼþ</a>| <a href="http://dsfv1.com" target="_blank">Ƶ߹ۿ</a>| <a href="http://740740740.com" target="_blank">Ļ޾Ʒ</a>| <a href="http://ddm88888.com" target="_blank">޹պ߳ѿ</a>| <a href="http://chandou8.com" target="_blank">߹ۿ</a>| <a href="http://www84847.com" target="_blank">jizzjizz߲ž</a>| <a href="http://86trader.com" target="_blank">һ24޿</a>| <a href="http://bjlfggcm.com" target="_blank">ŷ</a>| <a href="http://564ka.com" target="_blank">̱߳ˬƵ99</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>