??xml version="1.0" encoding="utf-8" standalone="yes"?>久久99精品久久久久久水蜜桃,有坂深雪av一区二区精品,国产精品毛片aⅴ一区二区三区http://www.aygfsteel.com/tomjamescn/category/41151.htmlstudy java Platform....J2SE J2MM J2EE...zh-cnThu, 15 Oct 2009 16:23:25 GMTThu, 15 Oct 2009 16:23:25 GMT60必须知道的Java知识一 字符串创?/title><link>http://www.aygfsteel.com/tomjamescn/archive/2009/10/15/298473.html</link><dc:creator>tomjamescn</dc:creator><author>tomjamescn</author><pubDate>Thu, 15 Oct 2009 13:58:00 GMT</pubDate><guid>http://www.aygfsteel.com/tomjamescn/archive/2009/10/15/298473.html</guid><wfw:comment>http://www.aygfsteel.com/tomjamescn/comments/298473.html</wfw:comment><comments>http://www.aygfsteel.com/tomjamescn/archive/2009/10/15/298473.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/tomjamescn/comments/commentRss/298473.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/tomjamescn/services/trackbacks/298473.html</trackback:ping><description><![CDATA[    一切从String str = new StringQ?abc"Q说?..<br />     q行代码形式上很单,其实很复杂。有一个常见的JavaW试题就是问上面q行代码创徏了几个String对象?br />     我刚开始很自然的觉得应该是创徏了一个String对象Q后来查阅资料,才发玎ͼ实际上创Z两个String对象。下面说明ؓ什么创Z两个String对象?br />     首先Q来了解一下Java中的字符串驻留池的概cJVMZ提高性能Q将一下两UŞ式的字符串放在一个称之ؓ字符串驻留池的内存块中:<br />     形式一QString str = "abc";<br />     形式二:"abc"<br />     其实QŞ式一和Ş式二都是字符串的字面帔R。所以,可以q样理解Q即把字W串的字面常量都攑֜了字W串ȝ池中。对形式一来说Qstr其实是引用的字W串ȝ池中"abc"q个String对象?br />     如果有如下的两行代码Q?br />     String str1 = "abc";<br />     String str2 = "abc";<br />     那么Q上面的两行代码创徏了几个String对象Q答案是一个。根据我们刚才所qͼ那么W一行语句将在池中创Z个String对象Q第二行会先在池中寻找是否有g"abc"相同的String对象Q如果有Q就直接引用Q没有这在池中新建String对象。这下,明白了Z么上面的两行语句仅仅创徏了一个String对象?br />     然后Q让我们来看一看String str = new String("abc")。我们先不讨论到底创Z几个String对象。我们在q里Q比较一下这Unew的方式和上面的直接赋值方式两U创建String对象的不同,直接赋值的方式是在字符串驻留池中创建对象,但newq种方式是在堆中创徏对象。即Qnew创徏的String对象是不会放入字W串ȝ池中的。如果一定要把某个通过new创徏的字W串对象攑օȝ池,可以使用intern()Ҏ。如String strt = str.intern()Q将把str的值放在驻留池中(当然Q是在驻留池原来没有q个值对应的String对象的情况下Q,q返回驻留池中String对象的引用?br />     现在Q可以分析String str = new String("abc");创徏了几个String对象?)很明显,传入?abc"字符串字面常量在ȝ池中创徏了一个对象,new操作W在堆中创徏了一个对象,所以,一共创Z两个String对象?br />     对于Java中的其他cȝ对象的创建,应该没有q种问题。看来,String对象q是挺特D的...q根I底Q我觉得q是因ؓ字符串操作太多了Qؓ了优化,不得已而ؓ之?br />     <br /> <br /> <img src ="http://www.aygfsteel.com/tomjamescn/aggbug/298473.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/tomjamescn/" target="_blank">tomjamescn</a> 2009-10-15 21:58 <a href="http://www.aygfsteel.com/tomjamescn/archive/2009/10/15/298473.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java标注Annotation学习http://www.aygfsteel.com/tomjamescn/archive/2009/10/14/298214.htmltomjamescntomjamescnWed, 14 Oct 2009 07:04:00 GMThttp://www.aygfsteel.com/tomjamescn/archive/2009/10/14/298214.htmlhttp://www.aygfsteel.com/tomjamescn/comments/298214.htmlhttp://www.aygfsteel.com/tomjamescn/archive/2009/10/14/298214.html#Feedback0http://www.aygfsteel.com/tomjamescn/comments/commentRss/298214.htmlhttp://www.aygfsteel.com/tomjamescn/services/trackbacks/298214.html

    Java标注Q?span style="color: blue;">AnnotationQ是Java语言5.0版本开始支持加入源代码的特D语?a title="元数?>元数?/a>?/p>

    Java语言中的cR方法、变量、参数和包等都可以被标注。Java标注?a class="new" title="JavadocQ尚未撰写)">Javadoc不同Q标注有自反性。在~译器生成类文gӞ标注可以被嵌入到?/p>

    Java标注可以用于~译Ӟ也可以用于运行时。下面的讨论主要集中于运行时?/p>

    Annotation分类

    1Q内建Annotation——Java5.0版在java语法中经常用到的内徏AnnotationQ?/strong>
    @Deprecated用于修饰已经q时的方法;
    @Override用于修饰此方法覆盖了父类的方法(而非重蝲Q;
    @SuppressWarnings用于通知java~译器禁止特定的~译警告?br />
    下面代码展示了内建Annotationcd的用法:

 1 package com.bjinfotech.practice.annotation;
 2 
 3 /**
 4  * 演示如何使用java5内徏的annotation
 5  * 参考资料:
 6  * http://java.sun.com/docs/books/tutorial/java/javaOO/annotations.html
 7  * http://java.sun.com/j2se/1.5.0/docs/guide/language/annotations.html
 8  * http://mindprod.com/jgloss/annotations.html
 9  * @author cleverpig
10  *
11  */
12 import java.util.List;
13 
14 public class UsingBuiltInAnnotation {
15         //食物c?/span>
16         class Food{}
17         //q草c?/span>
18         class Hay extends Food{}
19         //动物c?/span>
20         class Animal{
21                 Food getFood(){
22                         return null;
23                 }
24                 //使用Annotation声明DeprecatedҎ
25                 @Deprecated
26                 void deprecatedMethod(){
27                 }
28         }
29         //马类-l承动物c?/span>
30         class Horse extends Animal{
31                 //使用Annotation声明覆盖Ҏ
32                 @Override
33                 Hay getFood(){
34                         return new Hay();
35                 }
36                 //使用Annotation声明止警告
37                 @SuppressWarnings({"deprecation","unchecked"})
38                 void callDeprecatedMethod(List horseGroup){
39                         Animal an=new Animal();
40                         an.deprecatedMethod();
41                         horseGroup.add(an);
42                 }
43         }
44 }
45 
46 

    2,开发者自定义AnnotationQ由开发者自定义Annotationcd?/strong>
    下面是一个用annotationq行Ҏ试的sampleQ?br />
    AnnotationDefineForTestFunctioncd定义如下Q?br />
 1 
 2 package com.bjinfotech.practice.annotation;
 3 
 4 import java.lang.annotation.*;
 5 /**
 6  * 定义annotation
 7  * @author cleverpig
 8  *
 9  */
10 //加蝲在VM中,在运行时q行映射
11 @Retention(RetentionPolicy.RUNTIME)
12 //限定此annotation只能标示Ҏ
13 @Target(ElementType.METHOD)
14 public @interface AnnotationDefineForTestFunction{}
15 
16 

    试annotation的代码如下:
 1 package com.bjinfotech.practice.annotation;
 2 
 3 import java.lang.reflect.*;
 4 
 5 /**
 6  * 一个实例程序应用前面定义的AnnotationQAnnotationDefineForTestFunction
 7  * @author cleverpig
 8  *
 9  */
10 public class UsingAnnotation {
11         @AnnotationDefineForTestFunction public static void method01(){}
12         
13         public static void method02(){}
14         
15         @AnnotationDefineForTestFunction public static void method03(){
16                 throw new RuntimeException("method03");
17         }
18         
19         public static void method04(){
20                 throw new RuntimeException("method04");
21         }
22         
23         public static void main(String[] argv) throws Exception{
24                 int passed = 0, failed = 0;
25                 //被检的cd
26                 String className="com.bjinfotech.practice.annotation.UsingAnnotation";
27                 //逐个查此cȝҎQ当其方法用annotation声明时调用此Ҏ
28             for (Method m : Class.forName(className).getMethods()) {
29                if (m.isAnnotationPresent(AnnotationDefineForTestFunction.class)) {
30                   try {
31                      m.invoke(null);
32                      passed++;
33                   } catch (Throwable ex) {
34                      System.out.printf("试 %s p|: %s %n", m, ex.getCause());
35                      failed++;
36                   }
37                }
38             }
39             System.out.printf("试l果Q?nbsp;通过: %d, p|Q?nbsp;%d%n", passed, failed);
40         }
41 }
42 
43 


    3Q用第三方开发的Annotationcd
    q也是开发h员所常常用到的一U方式。比如我们在使用Hibernate3.0时就可以利用Annotation生成数据表映配|文Ӟ而不必用Xdoclet?

tomjamescn 2009-10-14 15:04 发表评论
]]>
[转]Servletqo器概늉点等详谈http://www.aygfsteel.com/tomjamescn/archive/2009/08/04/289717.htmltomjamescntomjamescnTue, 04 Aug 2009 02:32:00 GMThttp://www.aygfsteel.com/tomjamescn/archive/2009/08/04/289717.htmlhttp://www.aygfsteel.com/tomjamescn/comments/289717.htmlhttp://www.aygfsteel.com/tomjamescn/archive/2009/08/04/289717.html#Feedback0http://www.aygfsteel.com/tomjamescn/comments/commentRss/289717.htmlhttp://www.aygfsteel.com/tomjamescn/services/trackbacks/289717.html转自Q?a >http://developer.51cto.com/art/200907/134130.htm

一、Servletqo器的概念Q?/strong>

◆Servletqo器是在Java Servlet规范2.3中定义的Q它能够对Servlet容器的请求和响应对象q行查和修改。 

◆Servletqo器本wƈ不生请求和响应对象Q它只能提供qo作用。Servletq期能够在Servlet被调用之前检查Request对象Q修改Request Header和Request内容Q在Servlet被调用之后检查Response对象Q修改Response Header和Response内容?/p>

Servletq期负责qo的Weblg可以是Servlet、JSP或者HTML文g。 

二、Servletqo器的特点Q?/strong>

◆Servletqo器可以检查和修改ServletRequest和ServletResponse对象

◆Servletqo器可以被指定和特定的URL兌Q只有当客户h讉K该URLӞ才会触发qo?/p>

◆Servletqo器可以被串联在一P形成道效应Q协同修改请求和响应对象

三、Servletqo器的作用Q?/strong>

◆查询请求ƈ作出相应的行动?/p>

◆阻塞请?响应对,使其不能q一步传递?/p>

◆修改请求的头部和数据。用户可以提供自定义的请求?/p>

◆修改响应的头部和数据。用户可以通过提供定制的响应版本实现?/p>

◆与外部资源q行交互?/p>

四、Servletqo器的适用场合Q?/strong>

◆认证过?/p>

◆登录和审核qo

◆图像{换过?/p>

◆数据压~过?/p>

◆加密过?/p>

◆o牌过?/p>

◆资源访问触发事件过?/p>

◆XSL/Tqo

◆Mime-typeqo

五、Servletqo器接口的构成Q?/strong>

所有的Servletqo器类都必d现javax.servlet.Filter接口。这个接口含?个过滤器cdd现的ҎQ?/p>

◆init(FilterConfig)Q?br /> q是Servletqo器的初始化方法,Servlet容器创徏Servletqo器实例后调用这个方法。在q个Ҏ中可以读取web.xml文g中Servletqo器的初始化参?/p>

◆doFilter(ServletRequest,ServletResponse,FilterChain)Q?br /> q个Ҏ完成实际的过滤操作,当客戯求访问于qo器关联的URLӞServlet容器先调用qo器的doFilterҎ。FilterChain参数用于讉K后箋qo?/p>

◆destroy()Q?br /> Servlet容器在销毁过滤器实例前调用该ҎQ这个方法中可以释放Servletqo器占用的资源

六、Servletqo器的创徏步骤Q?/strong>

◆实现javax.servlet.Filter接口

◆实现initҎQ读取过滤器的初始化函数

◆实现doFilterҎQ完成对h或过滤的响应

◆调用FilterChain接口对象的doFilterҎQ向后箋的过滤器传递请求或响应

◆销毁过滤器

七、Servletqo器对h的过滤:

◆Servlet容器创徏一个过滤器实例

◆过滤器实例调用initҎQ读取过滤器的初始化参数

◆过滤器实例调用doFilterҎQ根据初始化参数的值判断该h是否合法

◆如果该h不合法则d该请?/p>

◆如果该h合法则调用chain.doFilterҎ该h向后l传?/p>

八、Servletqo器对响应的过滤:

◆过滤器截获客户端的h

◆重新封装ServletResponseQ在装后的ServletResponse中提供用戯定义的输出流

◆将h向后l传?/p>

◆Weblg产生响应

◆从装后的ServletResponse中获取用戯定义的输出流

◆将响应内容通过用户自定义的输出写入到~冲中

◆在~冲中修改响应的内容后清空~冲,输出响应内容

九、Servletqo器的发布Q?/strong>

◆发布Servletqo器时Q必dweb.xml文g中加入﹤filterH元素和Hfilter-mappingH元素?/p>

◆filter元素用来定义一个过滤器Q?/p>

  1. //属?nbsp;                  含义  
  2. filter-name    指定qo器的名字  
  3. filter-class    指定qo器的cd  
  4. init-param    滤器实例提供初始化参敎ͼ可以有多?nbsp;

◆filter-mapping元素用于过滤器和URL兌Q?/p>

  1. //属?nbsp;                    含义  
  2. filter-name    指定qo器的名字  
  3. url-pattern    指定和过滤器兌的URLQؓ”/*”表示所有URL 

十一、Servletqo器用的注意事项

◆由于Filter、FilterConfig、FilterChain都是位于javax.servlet包下Qƈ非HTTP包所Ҏ的,所以其中所用到的请求、响应对象ServletRequest、ServletResponse在用前都必d转换成HttpServletRequest、HttpServletResponse再进行下一步操作?/p>

◆在web.xml中配|Servlet和Servletqo器,应该先声明过滤器元素Q再声明Servlet元素

◆如果要在Servlet中观察过滤器生成的日志,应该保在server.xml的localhost对应的﹤hostH元素中配置如下HloggerH元素:

  1. HLogger className = “org.apache.catalina.logger.FileLogger”  
  2. directory = “logs”prefix = “localhost_log.”suffix=”.txt”  
  3. timestamp = “true”/H?nbsp;

Servletqo器的情况向你介l到q里Q那么你对Servletqo器是否有了了解呢Q?/p>



tomjamescn 2009-08-04 10:32 发表评论
]]>
[转]关于 JavaBean 规范你还是应该知道的二三?/title><link>http://www.aygfsteel.com/tomjamescn/archive/2009/08/02/289505.html</link><dc:creator>tomjamescn</dc:creator><author>tomjamescn</author><pubDate>Sun, 02 Aug 2009 14:09:00 GMT</pubDate><guid>http://www.aygfsteel.com/tomjamescn/archive/2009/08/02/289505.html</guid><wfw:comment>http://www.aygfsteel.com/tomjamescn/comments/289505.html</wfw:comment><comments>http://www.aygfsteel.com/tomjamescn/archive/2009/08/02/289505.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/tomjamescn/comments/commentRss/289505.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/tomjamescn/services/trackbacks/289505.html</trackback:ping><description><![CDATA[  来自Qhttp://www.aygfsteel.com/Unmi/archive/2009/07/01/285020.html<br /> 作ؓ Java  E序员,对于 JavaBean 也许你会说再熟悉不过了,它诏I在pȝ的多层中Q不同的叫法? PO、VO、DTO、POJO、DO(Domain Object)。然而它无外乎就是一?Class c,带上些属性和它们? setter/getter ҎQset/get 后面那一个字母大写。虽然我们现在很把 JavaBean 与那个古老的 2.0 ?nbsp;EJB 搞؜Q但Z么明明用 IDE 为属性生成的 getter/setter ҎQ应用一q行Q还是报找不到某?bean 属性的 setter ? getter Ҏ呢?<br /> <br /> 要知道,?Sun 的网站上那个关于 JavaBean 规范?PDF 文档可是有_实的 114 啊。难免有些规则有点古怪,至知名?IDE 都难以应对,所以我们还是有必要了解其中二三Q来规范我们?JavaBean 和解释一些情形? <p>Sun  的关?JavaBean 规范见:<a >http://java.sun.com/javase/technologies/desktop/javabeans/docs/spec.html</a>Q其中可下蝲?JavaBean 规范?nbsp; PDF 文?br /> <br /> <font color="#000080"><strong><font color="#0000ff"><br /> <font size="4">实际中的问题</font></font></strong><br /> </font><br /> ? 先,当然q是要说它的属性及 setter/getter Ҏ。属性以写字母开_驼峰命名格式Q相应的 getter/setter Ҏ? get/set 接上首字母大写的属性名。多数情冉|对的Q且当前行?IDE(Eclipse、JBuilder) 也都认这个死理,q里 NetBean 值得表扬一下。但要是到些遗留的代码中属性名不规范,或者有些h是固Q或真是对属性命名犹豫不x的写下的代码Ӟ那还是有得你研究一下?br /> <br /> q里来看?Eclipse 为几个属性生成的 getter/setter Ҏ吧:<br /> <br /> sName(?C 转过来的Q受匈牙利的影响Q认?Name 是个字符Ԍ所以加个前~ s)           getSName()/setSName(String name)<br /> URL (qx认ؓ是羃略语/专有名词Q理当全部大写,q在我们对待 ID 时经常发生的)           getURL()/setURL(String url)<br /> <br /> ? 面第一个由 Eclipse 为我们生成的 getSName()/setSName(String name) ҎQ参?JavaBean  规范来说Q其实是错误的。如果出现这LҎQ放到我们的标签(?Struts 标签Q如 <s:textfield name="sName"/>)Q或是进?Hibernate/iBatis 那种映射Ӟ你就能收到报 <font color="#ff0000">找不?sName 属性相应的 getter/setter Ҏ</font> 那样的错误。不是明明有 getSName() ?setSName(String name)Q可是方法名错了Q正的版本应该?getsName() ?setsName(String name)?br /> <br /> 前面首先解释了属性命名不规范产生问题的原因,现在来更仔l的了解关于 JavaBean 属性及?getter/setter Ҏ的约定,有些是硬性的?br /> <br /> <strong><font color="#0000ff"><br /> <font size="4">属性与存取讉K的规?/font></font></strong><br /> <br /> ?JavaBean 创徏属性时Q必ȝ讎ͼ~略语通常被视Z个独立的单词Q而不是单个字母。例如,URL 对应的属性名应该?urlQ相应的 getUrl()/setUrl()Q所?ID q是?id 作ؓ属性吧Q相应的 getId()/setId()?br /> <br /> ? 范中另一个特别的地方是Q第二个字母为大写的属性名要区别对待。如果属性名的第二个字母是大写的Q那么该属性名直接用作 getter/setter Ҏ?get/set 的后部分Q就是说大小写不变。这是Z?sName 对应的存取方法是 getsName()/setsName() 的原因,不能不说q条规则很o解。那更有必要看看下面表格的规范Q?/p> <table style="border-collapse: collapse;" align="center" border="1" bordercolor="black" width="75%"> <tbody> <tr> <td><strong>属性名/cd</strong></td> <td><strong>getter Ҏ</strong></td> <td><strong>setter Ҏ</strong></td> </tr> <tr> <td>xcoordinate/Double</td> <td>public Double getXcoordinate()</td> <td>public void setXcoordinate(Double newValue)</td> </tr> <tr> <td>xCoordinate/Double</td> <td>public Double getxCoordinate()</td> <td>public void setxCoordinate(Double newValue)</td> </tr> <tr> <td>XCoordinate/Double</td> <td>public Double getXCoordinate()</td> <td>public void setXCoordinate(Double newValue)</td> </tr> <tr> <td>Xcoordinate/Double</td> <td>不允?/td> <td>不允?/td> </tr> <tr> <td>student/Boolean</td> <td>public Boolean getStudent()</td> <td>public void setStudent(Boolean newValue)</td> </tr> <tr> <td>student/boolean</td> <td>public boolean getStudent()<br /> public boolean isStudent()</td> <td>public void setStudent(boolean newValue)</td> </tr> </tbody> </table> <br /> ? 性是首字母大写,ơ字母小写是Q你永远都找不到它的 getter/setter Ҏ的,对这个属性的使用是会害h的。对?boolean cd属性的 getter Ҏ?isXxx() q是 getXxx() p己决定了QisXxx() 应该更接q于自然语言Q更溜些?br /> <br /> 知道了属性及存取Ҏ的规定,那么你即使是面对古老代码,在用标{来引用或与 Hibernate/iBatis {进行映,你就知道该填什么样的属性名了?br /> <br /> q有一个我们很碰触到的是关于可烦引属性的 getter/setter Ҏ(q方?C# 表现的比 Java 要优U)Q比如有属?br />  <br /> private  OrderItem[] orderItem;      那它相应?getter/setter 除常见的两个外,q有带烦引参数的两个版本Q如下:<br /> <br /> public OrderItem[] getOrderItem();<br /> public void setOrderItem(OrderItem[] newArray);<br /> public OrderItem[] getOrderItem(int index);<br /> public void setOrderItem(int index, OrderItem orderItem);<br /> <br /> <strong><br /> <font color="#0000ff" size="4">关于 Bean D</font></strong><br /> <br /> 最后就?Bean D的规范,通常用点记法(dot notation) 来引用属性,同时也要注意索引属性的讉K。在 Web MVC 的表单中Q以及标{中Q?Jarkata-Commons-BeanUtils  中用得很多。看点记法的CZQ?br /> <br /> <table style="border-collapse: collapse;" align="center" border="1" bordercolor="black" width="75%"> <tbody> <tr> <td><strong>Java 代码</strong></td> <td><strong>点记?/strong></td> </tr> <tr> <td>anOrder.getAccount().getUsername()</td> <td>anOrder.account.username</td> </tr> <tr> <td>anOrder.getOrderItem().get(0).getProductId()</td> <td>anOrder.orderItem[0].productId</td> </tr> <tr> <td>anObject.getId()</td> <td>anObject.id</td> </tr> <tr> <td>anObject.getxCoordinate()</td> <td>anObject.xCoordinate</td> </tr> </tbody> </table> <br /> 上表应该从右往左边看,点记法中的属性名q行时要被解析成相应的存取方法调用。比如像 Struts1 标签Q?br /> <strong><font color="#0000ff"><br /> <</font><font color="#7f0055">html:text</font></strong> <font color="#ff0000">property</font>=<font color="#0000ff">"stocks[1].code"<strong>/></strong><strong><br /> </strong><font color="#000000"><br /> 会显C出 FormBean ?stocks 列表的第二个元素?code 属性,提交填充到相应的位|上厅R?/font></font><br /> <img src ="http://www.aygfsteel.com/tomjamescn/aggbug/289505.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/tomjamescn/" target="_blank">tomjamescn</a> 2009-08-02 22:09 <a href="http://www.aygfsteel.com/tomjamescn/archive/2009/08/02/289505.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank">ľ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ֹ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͤ</a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">ó</a>| <a href="http://" target="_blank">³</a>| <a href="http://" target="_blank">Զ</a>| <a href="http://" target="_blank">˶</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ֱ</a>| <a href="http://" target="_blank">Ͻ</a>| <a href="http://" target="_blank">״</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ո</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʡ</a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʯ̨</a>| <a href="http://" target="_blank">ͤ</a>| <a href="http://" target="_blank">IJ</a>| <a href="http://" target="_blank">ګ</a>| <a href="http://" target="_blank">ƽ</a>| <a href="http://" target="_blank">ɶ</a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">ױ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ϻ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">½</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ָ</a>| <a href="http://" target="_blank">ũ</a>| <a href="http://" target="_blank">˹</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></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>