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

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

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

    posts - 25,comments - 0,trackbacks - 0
    再看看<effective java> ,對前半年寫的代碼進行一下反思
    慢慢看《Hadoop實戰中文版》,了解分布式系統
    認真閱讀《設計模式之禪》,加深對自己已經在實際項目中運用的模式的理解。
    閱讀《java解惑》的后半部分(2年前讀過前幾十條建議),了解編碼中的陷阱。
    posted @ 2012-06-29 15:07 周磊 閱讀(290) | 評論 (0)編輯 收藏

    State of the Lambda

    http://cr.openjdk.java.net/~briangoetz/lambda/lambda-state-4.html 

    jdk快點出吧lambdba把,一直用op4j和lambdbaj這些jar包很蛋疼。。
    posted @ 2012-06-27 11:47 周磊 閱讀(312) | 評論 (0)編輯 收藏
    spring配置該方法只讀了。

    <bean id="txProxyTemplate" abstract="true"
           class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
           <property name="transactionManager" ref="transactionManager"/>
           <property name="transactionAttributes">
               <props>
                  <prop key="affirm*">PROPAGATION_REQUIRED</prop>
                  <prop key="gen*">PROPAGATION_REQUIRED</prop>
                   <prop key="save*">PROPAGATION_REQUIRED</prop>
                   <prop key="update*">PROPAGATION_REQUIRED</prop>
                   <prop key="create*">PROPAGATION_REQUIRED</prop>
                   <prop key="process*">PROPAGATION_REQUIRED</prop>                               
                   <prop key="delete*">PROPAGATION_REQUIRED</prop>               
                   <prop key="remove*">PROPAGATION_REQUIRED</prop>
                   <prop key="send*">PROPAGATION_REQUIRED</prop>
      <prop key="upload*">PROPAGATION_REQUIRED</prop>               
                   <prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
               </props>
           </property></bean>

    posted @ 2012-05-24 09:59 周磊 閱讀(3359) | 評論 (0)編輯 收藏
    十進制轉成十六進制: 
    Integer.toHexString(int i) 
    十進制轉成八進制 
    Integer.toOctalString(int i) 
    十進制轉成二進制 
    Integer.toBinaryString(int i) 
    十六進制轉成十進制 
    Integer.valueOf("FFFF",16).toString() 
    八進制轉成十進制 
    Integer.valueOf("876",8).toString() 
    二進制轉十進制 
    Integer.valueOf("0101",2).toString() 

    有什么方法可以直接將2,8,16進制直接轉換為10進制的嗎? 
    java.lang.Integer類 
    parseInt(String s, int radix) 
    使用第二個參數指定的基數,將字符串參數解析為有符號的整數。 
    examples from jdk: 
    parseInt("0", 10) returns 0 
    parseInt("473", 10) returns 473 
    parseInt("-0", 10) returns 0 
    parseInt("-FF", 16) returns -255 
    parseInt("1100110", 2) returns 102 
    parseInt("2147483647", 10) returns 2147483647 
    parseInt("-2147483648", 10) returns -2147483648 
    parseInt("2147483648", 10) throws a NumberFormatException 
    parseInt("99", throws a NumberFormatException 
    parseInt("Kona", 10) throws a NumberFormatException 
    parseInt("Kona", 27) returns 411787 

    進制轉換如何寫(二,八,十六)不用算法 
    Integer.toBinaryString 
    Integer.toOctalString 
    Integer.toHexString 


    例二 

    public class Test{ 
       public static void main(String args[]){ 

        int i=100; 
        String binStr=Integer.toBinaryString(i); 
        String otcStr=Integer.toOctalString(i); 
        String hexStr=Integer.toHexString(i); 
        System.out.println(binStr); 





    例二 
    public class TestStringFormat { 
       public static void main(String[] args) { 
        if (args.length == 0) { 
           System.out.println("usage: java TestStringFormat <a number>"); 
           System.exit(0); 
        } 

        Integer factor = Integer.valueOf(args[0]); 

        String s; 

        s = String.format("%d", factor); 
        System.out.println(s); 
        s = String.format("%x", factor); 
        System.out.println(s); 
        s = String.format("%o", factor); 
        System.out.println(s); 
       } 




    其他方法: 

    Integer.toHexString(你的10進制數); 
    例如 
    String temp = Integer.toHexString(75); 
    輸出temp就為 4b 



    //輸入一個10進制數字并把它轉換成16進制 
    import java.io.*; 
    public class toHex{ 

    public static void main(String[]args){ 

    int input;//存放輸入數據 
    //創建輸入字符串的實例 
    BufferedReader strin=new BufferedReader(new InputStreamReader(System.in)); 
    System.out.println("請輸入一個的整數:"); 
    String x=null; 
    try{ 
    x=strin.readLine(); 
    }catch(IOException ex){ 
    ex.printStackTrace(); 

    input=Integer.parseInt(x); 
    System.out.println ("你輸入的數字是:"+input);//輸出從鍵盤接收到的數字 

    System.out.println ("它的16進制是:"+Integer.toHexString(input));//用toHexString把10進制轉換成16進制 
    posted @ 2012-04-29 12:10 周磊 閱讀(3168) | 評論 (0)編輯 收藏

    Class search path

    The default ClassPool returned by a static method ClassPool.getDefault() searches the same path that the underlying JVM (Java virtual machine) has. If a program is running on a web application server such as JBoss and Tomcat, the ClassPool object may not be able to find user classes since such a web application server uses multiple class loaders as well as the system class loader. In that case, an additional class path must be registered to the ClassPool. Suppose that pool refers to aClassPool object:

      pool.insertClassPath(new ClassClassPath(this.getClass())); 

    This statement registers the class path that was used for loading the class of the object that this refers to. You can use any Class object as an argument instead ofthis.getClass(). The class path used for loading the class represented by that Class object is registered.

    You can register a directory name as the class search path. For example, the following code adds a directory /usr/local/javalib to the search path:

      ClassPool pool = ClassPool.getDefault(); pool.insertClassPath("/usr/local/javalib"); 

    The search path that the users can add is not only a directory but also a URL:

      ClassPool pool = ClassPool.getDefault(); ClassPath cp = new URLClassPath("www.javassist.org", 80, "/java/", "org.javassist."); pool.insertClassPath(cp); 

    This program adds "http://www.javassist.org:80/java/" to the class search path. This URL is used only for searching classes belonging to a package org.javassist. For example, to load a class org.javassist.test.Main, its class file will be obtained from:

      http://www.javassist.org:80/java/org/javassist/test/Main.class 

    Furthermore, you can directly give a byte array to a ClassPool object and construct a CtClass object from that array. To do this, use ByteArrayClassPath. For example,

      ClassPool cp = ClassPool.getDefault(); byte[] b = a byte array; String name = class name; cp.insertClassPath(new ByteArrayClassPath(name, b)); CtClass cc = cp.get(name); 

    The obtained CtClass object represents a class defined by the class file specified by b. The ClassPool reads a class file from the given ByteArrayClassPath if get() is called and the class name given to get() is equal to one specified by name.

    If you do not know the fully-qualified name of the class, then you can use makeClass() in ClassPool:

      ClassPool cp = ClassPool.getDefault(); InputStream ins = an input stream for reading a class file; CtClass cc = cp.makeClass(ins); 

    makeClass() returns the CtClass object constructed from the given input stream. You can use makeClass() for eagerly feeding class files to the ClassPool object. This might improve performance if the search path includes a large jar file. Since a ClassPool object reads a class file on demand, it might repeatedly search the whole jar file for every class file. makeClass() can be used for optimizing this search. The CtClass constructed by makeClass() is kept in the ClassPool object and the class file is never read again.

    The users can extend the class search path. They can define a new class implementing ClassPath interface and give an instance of that class to insertClassPath() inClassPool. This allows a non-standard resource to be included in the search path.





    package com.cloud.dm.util;

    import java.io.File;
    import java.lang.reflect.Field;
    import java.net.URL;
    import java.util.ArrayList;
    import java.util.List;

    import javassist.ClassClassPath;
    import javassist.ClassPool;
    import javassist.CtClass;
    import javassist.CtMethod;
    import javassist.CtNewMethod;
    import javassist.bytecode.DuplicateMemberException;

    import org.apache.commons.lang3.StringUtils;

    public class Struts2GetterSetterGen {
        private static ClassPool pool = ClassPool.getDefault();

        public static void init() throws Exception {
            URL url = Struts2GetterSetterGen.class.getResource("/");
            List<File> resultList = new ArrayList<File>();
            FileSearcher.findFiles(url.getFile(), "*Action.class", resultList);
            for (File object : resultList) {
                String className = StringUtils.substringBetween(object.toString(),
                        "classes\\", ".class").replaceAll("\\\\", ".");
                CtClass ct = null;
                pool.insertClassPath(new ClassClassPath(Class.forName(className))); //在servlet容器中啟動
                ct = pool.get(className);
                Field[] fs = Class.forName(className).getDeclaredFields();
                for (Field f : fs) {
                    genGetter(ct, f);
                    genSetter(ct, f);
                }
                ct.writeFile(url.getPath()); // 覆蓋之前的class文件
            }
        }

        private static void genGetter(CtClass ct, Field field) throws Exception {
            String string = "public " + field.getType().getName() + " get"
                    + StringUtils.capitalize(field.getName()) + "() {return "
                    + field.getName() + "; }";
            CtMethod m = CtNewMethod.make(string, ct);
            try {
                ct.addMethod(m);
            } catch (DuplicateMemberException e) {
            }
        }

        private static void genSetter(CtClass ct, Field field) throws Exception {
            String string = "public void set"
                    + StringUtils.capitalize(field.getName()) + "("
                    + field.getType().getName() + " " + field.getName() + "){this."
                    + field.getName() + " = " + field.getName() + "; }";
            CtMethod m = CtNewMethod.make(string, ct);
            try {
                ct.addMethod(m);
            } catch (DuplicateMemberException e) {
            }
        }
    }


    posted @ 2012-03-22 15:22 周磊 閱讀(4139) | 評論 (0)編輯 收藏


    org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/xxx


    META-INF下需要有這兩個文件:spring-handlers及spring-schemas

    posted @ 2012-03-15 15:21 周磊 閱讀(5867) | 評論 (0)編輯 收藏
     1 package com.cloud.dm;
     2 
     3 import java.util.Collections;
     4 import java.util.Comparator;
     5 import java.util.List;
     6 import java.util.Map;
     7 
     8 import com.google.common.collect.Lists;
     9 import com.google.common.collect.Maps;
    10 
    11 public class TreeListTest {
    12     public static void main(String[] args) {
    13         List<Map<String, Object>> list = Lists.newArrayList();
    14         Map<String, Object> map = Maps.newHashMap();
    15         map.put("key", 201101);
    16         Map<String, Object> map2 = Maps.newHashMap();
    17         map2.put("key", 200010);
    18         Map<String, Object> map3 = Maps.newHashMap();
    19         map3.put("key", 201103);
    20         list.add(map);
    21         list.add(map2);
    22         list.add(map3);
    23         System.out.println(list);
    24         Collections.sort(list, new Comparator<Map<String, Object>>() {
    25             @Override
    26             public int compare(Map<String, Object> o1, Map<String, Object> o2) {
    27                 System.out.println(o1.get("key").toString().compareTo(o2.get("key").toString()));
    28                 return o1.get("key").toString().compareTo(o2.get("key").toString());
    29             }
    30         });
    31         System.out.println(list);
    32     }
    33 }
    34 
    posted @ 2012-03-13 18:13 周磊 閱讀(1445) | 評論 (0)編輯 收藏
    僅列出標題  下一頁
    主站蜘蛛池模板: 67194国产精品免费观看| 亚洲男人天堂av| 亚洲精品美女久久久久| 狠狠色伊人亚洲综合网站色| 国产精品亚洲一区二区三区在线观看 | 亚洲一区二区三区国产精华液| 337P日本欧洲亚洲大胆艺术图 | 亚洲精品自在线拍| 高潮毛片无遮挡高清免费| 成人爽a毛片免费| 日韩毛片无码永久免费看| 亚洲日韩一页精品发布| 亚洲国产精品成人AV在线| 久久国产精品成人片免费| 亚洲人成电影在线播放| 亚洲一卡2卡3卡4卡国产网站| 亚洲黄片手机免费观看| 免费看片A级毛片免费看| 亚洲成a人片在线观| a级成人免费毛片完整版| 国产亚洲精品线观看动态图| 亚洲一卡二卡三卡四卡无卡麻豆| 国产成年无码久久久免费| 亚洲精品无码专区久久同性男| 亚洲av无码专区在线电影| 国产精品成人免费视频网站京东| 久久精品国产亚洲AV果冻传媒| a高清免费毛片久久| 亚洲一区精品伊人久久伊人| 无人视频在线观看免费播放影院| 岛国大片免费在线观看| 亚洲 暴爽 AV人人爽日日碰| 三年片在线观看免费观看高清电影 | 希望影院高清免费观看视频| 蜜芽亚洲av无码精品色午夜| 久久久久免费精品国产小说| 亚洲AV无码日韩AV无码导航| 日韩精品无码免费一区二区三区 | 丝袜捆绑调教视频免费区| 亚洲国产精彩中文乱码AV| 久久久久久毛片免费播放|