2010年12月6日

          文件下載在windows跟linux及不同瀏覽器下的處理(中文名亂碼)

          在進行文件下載時liunx下出現中文文件名亂碼,windows下卻沒有.可能是不同操作系統的編碼方式不同?(含糊不清的說法),用
          Properties initProp = new Properties(System.getProperties());
          System.out.println(prop.getProperty("file.encoding"));能得到編碼方式都是UTF-8
          后來發現用
          fileName  = new String(fileName.getBytes("UTF-8"), "iso-8859-1");不管linux還是windows 下用火狐都是顯示正常的,IE下卻顯示亂碼,所以問題出在瀏覽器,得在程序中加入判斷(分別處理firefox跟Ie):
          //判斷是否是使用IE的方法
          String userAgent = request.getHeader("User-Agent");
          boolean isIE = false;
          //userAgent.toLowerCase().indexOf("msie")
          if(userAgent.indexOf("MSIE") > 0){
          isIE = true;
          }
          if(isIE){
          fileName  = new String(fileName.getBytes("gb2312"), "iso-8859-1");
          }else{
          fileName  = new String(fileName.getBytes("UTF-8"), "iso-8859-1");
          }

          posted @ 2011-08-16 15:43 smallfa 閱讀(1123) | 評論 (1)編輯 收藏

          mysql 常用命令

           mysql -u root -p

          posted @ 2011-08-12 04:36 smallfa 閱讀(288) | 評論 (0)編輯 收藏

          tomcat bad version number in class file 的解決方法

          一個同學前幾天遇到一個問題,今天我試著看了一下。

          項目沒有錯誤,在項目部署到tomcat后,tomcat啟動時報錯:

          java.lang.UnsupportedClassVersionError: Bad version number in .class file 。。。

          這個問題我原來遇到過,原因應該是編譯java時生成的class文件,在運行時用到的JRE和class文件版本不一致造成的。

          1 如果是一般的java程序:

          可以在MyEclipse中修改JRE的路徑和版本。在Window->Preferences中,打開如下位置,就可修改JRE:


          修改完之后,最好重新編譯一下,選Project->Clean... 選項,然后選擇是所有的項目都要重新編譯,還是只重新編譯指定的項目,然后就應該沒問題了。

          今天一開始我也是這么做的,但是還是報錯,在網上搜了一下之后,因為這是Web項目,程序當然是在Tomcat上運行的,所以我們這么改當然不行。

          2 如果是Web 程序

          就要修改Tomcat運行時的JDK環境了,如下圖:

          把JDK的路徑和之前Installed JRE的設置成一樣的,這個問題就解決了?。m然這里面設置的是JDK的路徑,但是我覺得其實就是在設置JRE的路徑,因為java程序運行的時候需要的 是JRE,而不是JDK。我們裝JDK的時候,一般都裝了2個JRE,一個是JDK里面的JRE,還有一個和JDK平級的JRE,剛才我上網查了一下,這 兩個JRE的區別不大,大家也可以去查一下,每次都可以選擇任何一個JRE,但是之后配置的吆喝前面的一致。)

          如果不清楚JDK和JRE的關系的,可以上網查一下。

          一般情況下,我們運行別人的程序可能會遇到這個問題。

          再做個小小的延伸。。

          這個項目編譯并沒有報錯,如果我們導入別人的項目之后,出現了很多錯誤,那就是JDK版本的問題了,可以在這里修改:



          可以選擇1.3,1.4,5.0,6.0.

          轉 http://apps.hi.baidu.com/share/detail/1776104

          posted @ 2011-07-17 13:22 smallfa 閱讀(382) | 評論 (0)編輯 收藏

          LINUX基本操作命令

          http://mayuqi827.javaeye.com/blog/804409
          LINUX基本操作命令

          基本操作命令
          ----------------------------------------------------------------------
          ----------------------------------------------------------------------
          ls #以默認方式顯示當前目錄文件列表
          ls –a #顯示所有文件包括隱藏文件
          ls –l #顯示文件屬性,包括大小,日期,符號連接,是否可讀寫及是否可執行
          ls --color=never *.so > obj #不顯示文字顏色,將所有so文件記錄到obj文件中

          ----------------------------------------------------------------------
          cd dir #切換到當前目錄下的dir目錄
          cd / #切換到根目錄
          cd .. #切換到到上一級目錄
          cd ../.. #切換到上二級目錄
          cd ~ #切換到用戶目錄,比如是root用戶,則切換到/root下

          ----------------------------------------------------------------------
          rm file #刪除某一個文件
          rm -fr dir #刪除當前目錄下叫dir的整個目錄

          ----------------------------------------------------------------------
          cp source target #將文件source 復制為 target
          cp /root/source . #將/root下的文件source復制到當前目錄
          cp –av soure_dir target_dir #將整個目錄復制,兩目錄完全一樣
          cp –fr source_dir target_dir #將整個目錄復制,并且是以非鏈接方式復制,當source目錄帶有符號鏈接時,兩個目錄不相同

          ----------------------------------------------------------------------
          mv source target #將文件source更名為target

          ----------------------------------------------------------------------
          diff dir1 dir2 #比較目錄1與目錄2的文件列表是否相同,但不比較文件的實際內容,不同則列出
          diff file1 file2 #比較文件1與文件2的內容是否相同,如果是文本格式的文件,則將不相同的內容顯示,如果是二進制代碼則只表示兩個文件是不同的
          comm file1 file2 #比較文件,顯示兩個文件不相同的內容

          ----------------------------------------------------------------------
          echo message #顯示一串字符
          echo "message message2" #顯示不連續的字符串
          cat:
          cat file #顯示文件的內容,和DOS的type相同
          cat file | more #顯示文件的內容并傳輸到more程序實現分頁顯示,使用命令less file可實現相同的功能
          more #分頁命令,一般通過管道將內容傳給它,如ls | more

          ----------------------------------------------------------------------
          export LC_ALL=zh_CN.GB2312 #將環境變量LC_ALL的值設為zh_CN.GB2312
          export DISPLAY=0:0 #通過該設置,當前字符終端下運行的圖形程序可直接運行于Xserver
          date #顯示當前日期時間
          date -s 20:30:30 #設置系統時間為20:30:30
          date -s 2002-3-5 #設置系統時期為2003-3-5
          clock –r #對系統Bios中讀取時間參數
          clock –w #將系統時間(如由date設置的時間)寫入Bios

          ----------------------------------------------------------------------
          eject #umout掉CDROM并將光碟彈出,但cdrom不能處于busy的狀態,否則無效

          ----------------------------------------------------------------------
          du #計算當前目錄的容量
          du -sm /root #計算/root目錄的容量并以M為單位
          find -name /path file #在/path目錄下查找看是否有文件file
          grep -ir “chars” #在當前目錄的所有文件查找字串chars,并忽略大小寫,-i為大小寫,-r為下一級目錄

          ----------------------------------------------------------------------
          vi file #編輯文件file
          vi 原基本使用及命令:
          輸入命令的方式為先按ctrl+c, 然后輸入:x(退出),:x!(退出并保存) :w(寫入文件),:w!(不詢問方式寫入文件), :r file(讀文件file) ,:%s/oldchars/newchars/g(將所有字串oldchars換成newchars) 這一類的命令進行操作

          ----------------------------------------------------------------------
          man ls #讀取關于ls命令的幫助
          man ls | grep color #讀取關于ls命令的幫助并通過grep程序在其中查找color字串

          ----------------------------------------------------------------------
          startx #運行Linux圖形有環境
          Xfree86 #只運行X圖形server

          ----------------------------------------------------------------------
          reboot #重新啟動計算機
          halt #關閉計算機
          init 0 #關閉所有應用程序和服務,進入純凈的操作環境
          init 1 #重新啟動應用及服務
          init 6 #重新啟動計算機

          ----------------------------------------------------------------------
          擴展命令
          ----------------------------------------------------------------------
          ----------------------------------------------------------------------
          tar xfzv file.tgz #將文件file.tgz解壓
          tar xfzv file.tgz -C target_path #將文件file.tgz解壓到target_path目錄下
          tar cfzv file.tgz source_path #將文件source_path壓縮為file.tgz
          tar c directory > directory.tar #將目錄directory打包成不壓縮的directory.tar
          gzip directory.tar #將覆蓋原文件生成壓縮的 directory.tar.gz
          gunzip directory.tar.gz #覆蓋原文件解壓生成不壓縮的 directory.tar。
          tar xf directory.tar #可將不壓縮的文件解包

          ----------------------------------------------------------------------
          dmesg #顯示kernle啟動及驅動裝載信息
          uname #顯示操作系統的類型
          uname -R #顯示操作系統內核的version

          ----------------------------------------------------------------------
          strings file 顯示file文件中的ASCII字符內容

          ----------------------------------------------------------------------
          rpm -ihv program.rpm #安裝程序program并顯示安裝進程
          rpm2targz program.rpm program.tgz #將rpm格式的文件轉換成tarball格式

          ----------------------------------------------------------------------
          su root #切換到超級用戶
          sulogin /dev/tty4 #在tty4即alt+F4終端等待用戶登陸或直接登陸開啟一個shell
          chmod a+x file #將file文件設置為可執行,腳本類文件一定要這樣設置一個,否則得用bash file才能執行
          chmod 666 file #將文件file設置為可讀寫
          chown user /dir #將/dir目錄設置為user所有

          ----------------------------------------------------------------------
          mknod /dev/hda1 b 3 1 #創建塊設備hda1,主設備號為3,從設備號為1,即master硬盤的的第一個分區
          mknod /dev/tty1 c 4 1 #創建字符設備tty1,主設備號為4,眾設備號為1,即第一個tty終端

          ----------------------------------------------------------------------
          touch /tmp/running #在/tmp下創建一個臨時文件running,重新啟動后消失

          ----------------------------------------------------------------------
          sleep 9 #系統掛起9秒鐘的時間

          ----------------------------------------------------------------------
          lpd stop 或 cups stop #停止打印服務程序
          lpd start 或 cups start #啟動打印服務程序
          lpd restart 或 cups restart #重新啟動打印服務程序
          lpr file.txt #打印文件file.txt

          ----------------------------------------------------------------------
          fdisk /dev/hda #就像執行了dos的fdisk一樣
          cfdisk /dev/hda #比fdisk界面稍為友好些
          mount -t ext2 /dev/hda1 /mnt #把/dev/hda1裝載到 /mnt目錄
          df #顯示文件系統裝載的相關信息
          mount -t iso9660 /dev/cdrom /mnt/cdrom #將光驅加載到/mnt/cdrom目錄
          mount-t smb //192.168.1.5/sharedir /mnt -o username=tomlinux,password=tomlinux #將windows的的共享目錄加載到/mnt/smb目錄,用戶名及密碼均為tomlinux
          mount -t nfs 192.168.1.1:/sharedir /mnt #將nfs服務的共享目錄sharedir加載到/mnt/nfs目錄
          umount /mnt #將/mnt目錄卸載,/mnt目錄必須處于空閑狀態
          umount /dev/hda1 #將/dev/hda1設備卸載,設備必須處于空親狀態
          sync #將cache中的內容與磁盤同步,在Linux中復制文件,一般要系統空閑才去寫文件
          e2fsck /dev/hda1 #檢查/dev/hda1是否有文件系統錯誤,提示修復方式
          e2fsck -p /dev/hda1#檢查/dev/hda1是否有錯誤,如果有則自動修復
          e2fsck -y /dev/hda1#檢查錯誤,所有提問均于yes方式執行
          e2fsck -c /dev/hda1#檢查磁盤是否有壞區
          mkfs /dev/hda1 #格式化/dev/hda1為ext2格式
          mkfs.minix /dev/hda1 #格式化/dev/hda1為minix格式文件系統
          mfks /dev/hda9 #格工化/dev/hda9為Linux swap格式
          swapon /dev/hda9 #將swap分區裝載當作內存來用
          swapoff /dev/hda9 #將swap分區卸載

          ----------------------------------------------------------------------
          lilo #運行lilo程序,程序自動查找/etc/lilo.conf并按該配置生效
          lilo -C /root/lilo.conf #lilo程序按/root/lilo.conf配置生效
          grub #在Linux shell狀態下運行boot loader設置程序
          grub-install #安裝grub磁盤引導程序,成功后升級內核無須像lilo一樣要重新啟動系統,只需修改/etc/grub.conf即可實現新引導配置
          rdev bzImage #顯示kernel的根分區信息
          rdev bzImage /dev/hda1 #將kernel的根分區設置為/dev/hda1,這在沒有lilo等引導程序的系統中非常重要.

          ----------------------------------------------------------------------
          dd if=/dev/fd0 of=floppy.fd #將軟盤的內容復制成一個鏡像,功能與舊石器時代常用的hd-copy相同
          dd if=/dev/zero of=root.ram bs=1024,count=1024 #生成一個大小為1M的塊設備,可以把它當作硬盤的一個分區來用
          mkfs root.ram #將塊設備格式化為ext2格式
          dd if=root.ram of=/dev/ram0 #將init.rd格式的root.ram的內容導入內存
          mount /dev/ram0 /mnt #ramdisk /dev/ram0裝載到/mnt 目錄

          ----------------------------------------------------------------------
          gcc hello.c #將hello.c編譯成名為a.out二進制執行文件
          gcc hello.c -o hello #將hello.c編譯成名為hello的二進制執行文件
          gcc -static -o hello hello.c #將hello.c編譯成名為hello的二進制靜態執行文件
          ldd program #顯示程序所使用了哪些庫
          objcopy -S program #將程序中的符號表及無用的調試信息去掉,可以小很多

          ----------------------------------------------------------------------
          strace netscape #跟蹤程序netscape的執行,看調用的庫,環境變量設置,配置文件,使用的設備,調用的其它應用程序等,在strace下,程序干了什么東東一目了 然。
          ps #顯示當前系統進程信息
          ps –ef #顯示系統所有進程信息
          kill -9 500 #將進程編號為500的程序干掉
          killall -9 netscape #將所有名字為netscape的程序殺死,kill不是萬能的,對僵死的程序則無效。
          top #顯示系統進程的活動情況,按占CPU資源百分比來分
          free #顯示系統內存及swap使用情況
          time program #在program程序結束后,將計算出program運行所使用的時間

          ----------------------------------------------------------------------
          chroot . #將根目錄切換至當前目錄,調試新系統時使用
          chroot /tomlinux #將根目錄切換至/tomlinux目錄
          chroot /tomlinux sbin/init #將根目錄切換至/tomlinux并執行sbin/init
          adduser id #增加一個叫id的用戶
          userdel id #增除叫id的用戶
          userlist #顯示已登陸的用戶列表
          passwd id #修改用戶id的密碼
          passwd -d root #將root用戶的密碼刪除
          chown id /work #指定/work目錄為id用戶所擁有

          ----------------------------------------------------------------------
          ifconfig eth0 192.168.1.1 netmask 255.255.255.0 #設置網卡1的地址192.168.1.1,掩碼為255.255.255.0,不寫netmask參數則默認為255.255.255.0
          ifconfig eth0:1 192.168.1.2 #捆綁網卡1的第二個地址為192.168.1.2
          ifconfig eth0:x 192.168.1.x #捆綁網卡1的第二個地址為192.168.1.x
          ifconfig down eth1 #關閉第二塊網卡,使其停止工作
          hostname -F tomlinux.com #將主機名設置為tomlinux.com
          route #顯示當前路由設置情況
          route add default gw 192.168.1.1 metric 1 #設置192.168.1.1為默認的路由
          route del default #將默認的路由刪除
          dhcp #啟動dhcp服務
          dhclient #啟動dhcp終端并自動獲取IP地址
          ping 163.com #測試與163.com的連接
          ping 202.96.128.68 #測試與IP 202。96.128.68的連接

          ----------------------------------------------------------------------
          probe rtl8139 #檢查驅動程序rtl8139.o是否正常工作
          lsmod #顯示已裝載的驅動程序
          insmod rtl8139.o #裝載驅動程序rtl8139.o
          insmod sb.o io=0x280 irq=7 dma=3 dma16=7 mpu_io=330 #裝載驅動程序并設置相關的irq,dma參數
          rmmod rtl8139 #刪除名為rtl8139的驅動模塊
          gpm -k #停止字符狀態下的mouse服務
          gpm -t ps2 #在字符狀態下以ps2類型啟動mouse的服務

          ----------------------------------------------------------------------
          telnet 192.168.1.1 #登陸IP為192.168.1.1的telnet服務器
          telnet iserver.com #登陸域名為iserver.com的telnet服務器
          ftp 192.168.1.1 或 ftp iserver.com #登陸到ftp服務

          posted @ 2010-12-06 00:31 smallfa 閱讀(351) | 評論 (0)編輯 收藏

          <2010年12月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導航

          統計

          公告

          smallfa
          博客園
          C++博客
          博客生活
          Blogjava
          足球博客
          微博
          Redsaga

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          Ajax

          Blogs

          DB

          java

          Open source

          ORM

          Tools/Help

          vedio Tech

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 忻州市| 东平县| 浏阳市| 蓬莱市| 平和县| 临颍县| 敦煌市| 九龙县| 土默特右旗| 瓦房店市| 炎陵县| 重庆市| 朝阳县| 嫩江县| 澄迈县| 正安县| 彝良县| 阳高县| 霍林郭勒市| 东阳市| 木里| 城市| 崇左市| 肇东市| 会东县| 海安县| 山阳县| 梧州市| 普陀区| 隆回县| 河曲县| 尉氏县| 沭阳县| 凤山县| 阜城县| 岢岚县| 玉环县| 苍山县| 永顺县| 枝江市| 宜君县|