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

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

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

    隨筆 - 7  文章 - 3  trackbacks - 0
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿

    隨筆檔案

    文章分類

    文章檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    /**
     * 數字轉換為大寫人民幣計數
     * @author 王代軍
     * @since Dec 16,2011
     */

    public class Num2Rmb
    {
        private String[] hanArr = {"零" , "壹" , "貳" , "叁" , "肆" ,
            "伍" , "陸" , "柒" , "捌" , "玖"};
        private String[] unitArr = {"拾","百","千","萬"};

        /**
         * 把一個四位的數字字符串變成漢字字符串
         * @param numStr 需要被轉換的四位的數字字符串
         * @return 四位的數字字符串被轉換成的漢字字符串。
         */
        private String toHanStr(String numStr)
        {
            String result = "";
            int numLen = numStr.length();
            //依次遍歷數字字符串的每一位數字
            for (int i = 0 ; i < numLen ; i++ )
            {
                //把char型數字轉換成的int型數字,因為它們的ASCII碼值恰好相差48
                //因此把char型數字減去48得到int型數字,例如'4'被轉換成4。
                int num = numStr.charAt(i) - 48;
                //如果不是最后一位數字,而且數字不是零,則需要添加單位(千、百、十)
                if ( i != numLen - 1 && num != 0)
                {
                    result += hanArr[num] + unitArr[numLen - 2 - i];
                }
                //否則不要添加單位
                else
                {
                    
                    //上一個數是否為“零”,不為“零”時就添加
                    if(result.length()>0 && hanArr[num].equals("零") && result.charAt(result.length()-1)=='零')
                        continue;
                    result += hanArr[num];
                }
            }
            //只有個位數,直接返回
            if(result.length()==1)
                return result;
            
            int index=result.length()-1;
            while(result.charAt(index)=='零'){
                index--;
            }
            if(index!=result.length()-1)
                return result.substring(0,index+1);
            else {
                return result;
            }
        }
        /**
         * 把一個輸入的數字字符串變成漢字字符串
         * @param numStr 需要被轉換得到數字字符串
         * @return 數字字符串被轉換成的漢字RMB字符串。
         */
        private String toRmbStr(String numStr){
            //獲取字符串長度
            int numLen = numStr.length();
            //判斷長度小于4(一萬以內~0-9999) 調用toHanStr();
            if(numLen<=4){
                return toHanStr(numStr);
            }
            //4<長度<=8 (一億以內 1000-99999999)
            else if(numLen>4&&numLen<=8){
                String[] subArr={numStr.substring(0, numLen-4),numStr.substring(numLen-4, numLen)};
                return toHanStr(subArr[0])+"萬"+toHanStr(subArr[1]);
            }
            //8<長度<=10 (百億以內 一億-9999999999)
            else if(numLen>8&&numLen<=10){
                String[] subArr={numStr.substring(0,numLen-8),numStr.substring(numLen-8,numLen-4),numStr.substring(numLen-4,numLen)};
                return toHanStr(subArr[0])+"億"+toHanStr(subArr[1])+"萬"+toHanStr(subArr[2]);
            }
            else return "輸入有誤!";    
        }          
        public static void main(String[] args)
        {        
            Num2Rmb nr = new Num2Rmb();
            System.out.println("只支持整數(0~99億)");
            //測試把一個四位的數字字符串變成漢字字符串
            System.out.println(nr.toRmbStr("1"));
            System.out.println(nr.toRmbStr("10"));
            System.out.println(nr.toRmbStr("15"));
            System.out.println(nr.toRmbStr("110"));
            System.out.println(nr.toRmbStr("123"));
            System.out.println(nr.toRmbStr("105"));
            System.out.println(nr.toRmbStr("1000"));
            System.out.println(nr.toRmbStr("1101"));
            System.out.println(nr.toRmbStr("1110"));
            System.out.println(nr.toRmbStr("1005"));
            System.out.println(nr.toRmbStr("101105"));
            System.out.println(nr.toRmbStr("1011109"));
            System.out.println(nr.toRmbStr("9999999999"));
        }
    }

    posted @ 2011-12-26 13:26 Tomas 閱讀(564) | 評論 (0)編輯 收藏
    通用的增刪該查工具類  可在dao層 new一個
    CommonCrudUtil(本類)實例  實現對數據的增刪改查




    package com.XXXXX.util;

    import java.io.Serializable;
    import java.util.ArrayList;
    import java.util.List;
    import org.hibernate.*;
    /**
     * 通用增刪改查工具類
     * @author 王代軍
     * @since Dec 19,2011
     * @version 1.0
     */
    @SuppressWarnings("unchecked")
    public class CommonCrudUtil<T> {
        /**
         * 添加功能
         * @param obj 要保存的對象
         */
        public boolean create(Object obj){
            Session session=HibernateSessionFactory.getSession();
            Transaction tx=null;
            boolean flag=false;
            try{
                tx=session.beginTransaction();
                session.persist(obj);
                tx.commit();
                flag=true;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){        
                    tx.rollback();
                }
            }finally{
                session.close();
            }    
            return flag;
        }
        /**
         * 查詢功能
         * @param clazz 要查詢對象的類型  obj 要查詢的對象的 可序列化的字段 (本設計指主鍵 id)
         */
        public Object retrieve(Class clazz,Object obj){
            Session session=HibernateSessionFactory.getSession();
            Transaction tx=null;
            try{
                tx=session.beginTransaction();
                Object object=session.get(clazz,(Serializable) obj);
                tx.commit();
                return object;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){        
                    tx.rollback();
                }
                return null;
            }finally{
                session.close();
            }        
        }    
        /**
         * 查詢全部功能
         * @param clazz 要查詢的對象的類型
         */
        public List<T> retrieve(Class clazz){
            Session session=HibernateSessionFactory.getSession();
            List<T> list=new ArrayList<T>();
            Transaction tx=null;
            try{
                tx=session.beginTransaction();
                Criteria cr=session.createCriteria(clazz);
                list=cr.list();
                tx.commit();
                return list;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){            
                    tx.rollback();
                }
                return null;
            }finally{
                session.close();
            }
        }
        /**
         * 更新功能
         * @param obj 要更新的對象
         */
        public boolean update(Object obj){
            Session session=HibernateSessionFactory.getSession();
            boolean flag=false;
            Transaction tx=null;
            try{
                tx=session.beginTransaction();
                session.update(obj);
                tx.commit();
                flag=true;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){            
                    tx.rollback();
                }
            }finally{
                session.close();
            }
            return flag;
        }
        /**
         * 刪除功能
         * @param clazz 要刪除的對象的類型 obj 要刪除的對象的 唯一標識(可序列化)字段 (指主鍵 id)
         */
        public boolean delete(Class clazz,Object obj){
            Session session=HibernateSessionFactory.getSession();
            Transaction tx=null;
            boolean flag=false;
            try{
                tx=session.beginTransaction();
                Object object=session.get(clazz,(Serializable) obj);
                session.delete(object);
                tx.commit();
                flag=true;
            }catch(Exception e){
                e.printStackTrace();
                if(tx!=null){        
                    tx.rollback();
                }
            }finally{
                session.close();
            }    
            return flag;
        }
        
    }



    調用實現   dao層的實現類調用 
       CommonCrudUtil  的方法實現增刪改查

    import java.util.Date;
    import java.util.List;

    import org.hibernate.Query;
    import com.zhongyou.bean.IDCard;
    import com.zhongyou.util.CommonCrudUtil;

    public class IDCardDaoImpl implements IDCardDaoIf {

        
         CommonCrudUtil crud=new CommonCrudUtil<IDCard>();
       
         public int addInformation(IDCard card) {

         IDCard card=new IDCard();
         card.setId(16);
         card.setName("xiaoxiao");
         card.setAddress("xiaoxiao");
         card.setBirthday(new Date());
         card.setNumber("29472398734");
         card.setSex("男");


         crud.create(card);//增加.......

    }
     
         。。。。。。查詢。。。。。
         crud.retrieve(IDCard.class,3);
        。。。。。。查詢全部。。。。。
         crud.retrieve(IDCard.class);

        。。。。。。修改。。。。
         crud.update(card);
        。。。。。。刪除。。。。
         crud.delete(IDCard.class,3);
    。。。。。。。。。



    寫的簡陋些  只是些想法可借鑒而已 同志們 可以自己完善。。。。




    posted @ 2011-12-26 13:22 Tomas 閱讀(2006) | 評論 (1)編輯 收藏
    僅列出標題  
    主站蜘蛛池模板: 中文字幕精品亚洲无线码一区| 亚洲综合伊人制服丝袜美腿| 亚洲成av人影院| 亚洲女女女同性video| 久久性生大片免费观看性| 91精品免费在线观看| 中文字幕第一页亚洲| 亚洲第一综合天堂另类专| 久久国产乱子伦免费精品| 亚洲一区视频在线播放 | 思思re热免费精品视频66 | 国产AV无码专区亚洲AV蜜芽| 日本一卡精品视频免费| 免费一级一片一毛片| 亚洲 欧洲 视频 伦小说| 最近免费中文字幕大全高清大全1| 亚洲综合国产精品| 国产精品99爱免费视频| 免费a级毛片在线观看| j8又粗又长又硬又爽免费视频| 国产亚洲情侣一区二区无| 国产成人一区二区三区视频免费| 亚洲第一区精品日韩在线播放| 亚洲人成网站免费播放| 精品久久洲久久久久护士免费| 亚洲乱人伦精品图片| 久久aⅴ免费观看| 国产亚洲婷婷香蕉久久精品| 国产精品hd免费观看| 亚洲视频网站在线观看| 91老湿机福利免费体验| 一本色道久久88亚洲精品综合 | 女人体1963午夜免费视频| va天堂va亚洲va影视中文字幕 | v片免费在线观看| 四虎影在线永久免费观看| 精品国产亚洲一区二区三区在线观看| 亚洲第一福利网站在线观看| 久久成人免费电影| 国产精品久久亚洲一区二区| 国产免费直播在线观看视频|