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

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

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

    2017年6月19日

    jsp傳遞中文亂碼解決方法

    request.setCharacterEncoding("UTF-8")頁面也需要設(shè)置轉(zhuǎn)碼的:
    頁面:(.jsp)
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    response.setContentType("text/html;charset=UTF-8");

    處理文件:(.java)
    轉(zhuǎn)碼的三種方法:
    A 接受參數(shù)時進(jìn)行編碼轉(zhuǎn)換

    String str = new String(request.getParameter("something").getBytes("ISO-8859-1"),"utf-8"); 這樣的話,每一個參數(shù)都必須這樣進(jìn)行轉(zhuǎn)碼。很麻煩。但確實(shí)可以拿到漢字。

    B 在請求頁面上開始處,執(zhí)行請求的編碼代碼, request.setCharacterEncoding("UTF-8"),把提交內(nèi)容的字符集設(shè)為UTF-8。這樣的話,接受此參數(shù)的頁面就不必在轉(zhuǎn)碼了。直接使用
    String str = request.getParameter("something");即可得到漢字參數(shù)。但每頁都需要執(zhí)行這句話。

    這個方法也就對post提交的有效果,對于get提交和上傳文件時的enctype="multipart/form-data"是無效的。稍后下面單獨(dú)對這個兩個的亂碼情況再進(jìn)行說明。

    C 為了避免每頁都要寫request.setCharacterEncoding("UTF-8"),建議使用過濾器對所有jsp進(jìn)行編碼處理。

    新手可以暫時不考慮過濾器的方法,過濾器一般都會涉及到配置開發(fā),要修改web.xml,還算是比較麻煩的,建議接觸java一段時間后再考慮使用過濾器的方法。或者如果應(yīng)用了struts框架,可以查看struts的轉(zhuǎn)碼過濾器配置。
    實(shí)際例子:
    <%request.setCharacterEncoding("UTF-8")%>放在jsp<head></head>之間
    jspforward.jsp
    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <% request.setCharacterEncoding("UTF-8");%> </head> <body> <jsp:forward page="/forwardresult.jsp"> <jsp:param name="name" value="李海"></jsp:param> <jsp:param name="age" value="29"></jsp:param> </jsp:forward> </body> </html>
    jspresult.jsp
    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <%=request.getParameter("name")%> <%=request.getParameter("age")%> </body> </html>


    posted @ 2017-06-19 14:46 藍(lán)胖 閱讀(324) | 評論 (0)編輯 收藏

    jsp訪問mysql數(shù)據(jù)庫 class not found

    遇到問題:com.mysql.jdbc.Driver class not found 我在項目中的WEB-INF/lib中添加mysql-connector-java-5.6-bin jar包后在eclipse中選中項目刷新,在lib中選中mysql-connector-java-5.6-bin jar右鍵點(diǎn)擊addbulidPath成功解決問題 完整的代碼如下:

    <%@page import="java.sql.DriverManager" import="java.sql.Connection" import="java.sql.Statement" 
    import="java.sql.ResultSet" %>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <%
    Class.forName("com.mysql.jdbc.Driver");
    Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456");
    Statement stmt=conn.createStatement();
    String sql="select * from person ";
    ResultSet rs=stmt.executeQuery(sql);
    %>
    <table bgcolor="green" border="1">
    <tr>
    <td>id</td>
    <td>name</td>
    <td>sex</td>
    <td>age</td>
    </tr>
    <%
    while(rs.next()){
    %>
    <tr>
    <td><%=rs.getString("id") %></td>
    <td><%=rs.getString("name") %></td>
    <td><%=rs.getString("sex") %></td>
    <td><%=rs.getString("age")%></td>
    </tr>
    <% }%>
    </table>
    </body>
    </html>

    posted @ 2017-06-19 14:46 藍(lán)胖 閱讀(217) | 評論 (0)編輯 收藏

    Eclipse 一直提示 loading descriptor for 解決

    第一次沒有找到所以截圖下來
    你Eclipse左側(cè)的Project Explorer 最右上角有一個小鈕,鼠標(biāo)移上去時提示"View Menu".




    你點(diǎn)一下,在彈出的上下文菜單中選擇"Customize View..." 彈出一個對話框.



    你選擇: Content 選項卡,在里面把沒用的去掉就行了 J2EE WEB loading descriptor .

    posted @ 2017-06-19 14:45 藍(lán)胖 閱讀(496) | 評論 (0)編輯 收藏

    解決MyEclipse吃內(nèi)存,讓MyEclipse速度飛起來

    前言:MyEclipse5.5 大小 139M;MyEclipse6.5 大小 451M;MyEclipse7.0 大小 649M!下載服務(wù)器又是國外的。。。下載速度累人也就罷了,只要你工作性能一流。不幸的是,MyEclipse 屬于狂吃內(nèi)存的主,特別是 MyEclipse7.0 運(yùn)行起來,基本上不用干其他工作了,它是一會Quick update,一會 updating indexes ,你耐著性子等它 update 完,它老人家又開始自動 validation 了!

    實(shí)在忍無可忍,作者收集了一些關(guān)于解決 MyEclipse 的耗內(nèi)存的辦法,經(jīng)本人測試非常有效,共享出來,希望可以方便更多的朋友。

    1 老是彈出Quick update error 、關(guān)閉myeclipse的Quick Update自動更新功能


    這個問題的解決辦法是關(guān)閉自動更新

    Windows > Preferences > MyEclipse Enterprise Workbench > Community Essentials, 
    把選項 "Search for new features on startup"的前勾去掉即可。

    2 關(guān)閉updating indexes

    Window > Preferences > Myeclipse Enterprise Workbench > Maven4Myeclipse > Maven>禁用Download repository index updates on startup 。

    3 關(guān)閉MyEclipse的自動validation

    validation有一堆,什么xml、jsp、jsf、js等等,我們沒有必要全部都去自動校驗(yàn)一下,只是需要的時候才會手工校驗(yàn)一下,速度立馬提升好幾個檔次

    windows > perferences > myeclipse > validation 
    將Build下全部勾取消

    如果你需要驗(yàn)證某個文件的時候,我們可以單獨(dú)去驗(yàn)證它。方法是,在需要驗(yàn)證的文件上( 右鍵 -> MyEclipse -> Run Validation 。

    4 啟動優(yōu)化,關(guān)閉不需要使用的模塊

    一個系統(tǒng)20%的功能往往能夠滿足80%的需求,MyEclipse也不例外,我們在大多數(shù)時候只需要20%的系統(tǒng)功能,所以可以將一些不使用的模塊禁止 加載啟動。

    Window > Preferences > General > Startup andy Shutdown 在這里列出的是MyEclipse啟動時加載的模塊 我這里只讓它加載tomcat5 勾選 MyEclipse EASIE Tomcat 5 。

    怎樣才能知道哪些啟動項有用呢?我現(xiàn)在把我知道的啟動項用處說一下,還有很多不懂的,希望大家懂的回復(fù)在下面啊: 
    WTP :一個跟myeclipse差不多的東西,主要差別是 WTP 是免費(fèi)的,如果使用myeclipse,這個可以取消 
    Mylyn:組隊任務(wù)管理工具,類似于 CVS ,以任務(wù)為單位管理項目進(jìn)度,沒用到的可以取消 
    Derby:一種保存成 jar 形式的數(shù)據(jù)庫,我沒用到,取消 
    一大排以 MyEclipse EASIE 打頭的啟動項:myeclipse 支持的服務(wù)器,只選自己用的,其他取消,比如我只選了tomcat 。

    5 去掉MyEclipse的拼寫檢查(如果你覺的有用可以不去)

    拼寫檢查會給我們帶來不少的麻煩,我們的方法命名都會是單詞的縮寫,他也會提示有錯,所以最好去掉,沒有多大的用處

     Window > perferences > General >  Editors > Text Editors > Spelling > 將Enable spell checking復(fù)選框的勾選去掉。

    6 去掉MyEclipse繁雜的自帶插件自動加載項


     Window > perferences > General > Startup and Shutdown > 將Plug-ins activated on startup 中的復(fù)選框有選擇性的勾選去掉。

    7 修改MyEclipse編輯JSP頁面時的編輯工具  


     Window > perferences > General > Editors > File Associations > 
      在File types 中選擇 *.jsp > 在Associated editors 中將"MyEclipse JSP Editor"設(shè)置為默認(rèn)。

    8 修改MyEclipse安裝目錄的eclipse.ini文件,加大JVM的非堆內(nèi)存

    具體內(nèi)容如下:
     -clean
     -showsplash
     com.genuitec.myeclipse.product.ide
     --launcher.XXMaxPermSize
     256m
     -vmargs
     -Xms128m
     -Xmx512m
     -Duser.language=en 
     -XX:PermSize=128M 
     -XX:MaxPermSize=256M

    把下面的那個 -XX:MaxPermSize 調(diào)大,比如 -XX:MaxPermSize=512M,再把 -XX:PermSize 調(diào)成跟 -XX:MaxPermSize一樣大

    posted @ 2017-06-19 14:43 藍(lán)胖 閱讀(1165) | 評論 (0)編輯 收藏

    an internal error occurred during building workspace錯誤

    Eclipse導(dǎo)入了一個比較大的項目,出現(xiàn)了an internal error occurred during building workspace錯誤。

    網(wǎng)上搜了一下,據(jù)說是內(nèi)存溢出問題。可以通過修改eclipse.ini文件解決,

     

    優(yōu)化之后的ini文件內(nèi)容:

    -startup
    plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
    -product
    org.eclipse.epp.package.java.product
    --launcher.defaultAction
    openFile
    --launcher.XXMaxPermSize
    256M

    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    256m

    --launcher.defaultAction
    openFile

    -vm
    C:\java\1.6\bin

    -vmargs
    -Dosgi.requiredJavaVersion=1.5
    -Xms40m
    -Xmx512m


    以下為查找得的一些資料,解釋我們在修改的參數(shù)是什么意思。


            1.堆(Heap)和非堆(Non-heap)內(nèi)存
    按照官方的說法:“Java 虛擬機(jī)具有一個堆,堆是運(yùn)行時數(shù)據(jù)區(qū)域,所有類實(shí)例和數(shù)組的內(nèi)存均從此處分配。堆是在 Java 虛擬機(jī)啟動時創(chuàng)建的。”“在JVM中堆之外的內(nèi)存稱為非堆內(nèi)存(Non-heap memory)”。可以看出JVM主要管理兩種類型的內(nèi)存:堆和非堆。簡單來說堆就是Java代碼可及的內(nèi)存,是留給開發(fā)人員使用的;非堆就是JVM留給自己用的,所以方法區(qū)、JVM內(nèi)部處理或優(yōu)化所需的內(nèi)存(如JIT編譯后的代碼緩存)、每個類結(jié)構(gòu)(如運(yùn)行時常數(shù)池、字段和方法數(shù)據(jù))以及方法和構(gòu)造方法的代碼都在非堆內(nèi)存中。

            2.堆內(nèi)存分配
           JVM初始分配的內(nèi)存-Xms指定,默認(rèn)是物理內(nèi)存的1/64;JVM最大分配的內(nèi)存-Xmx指定,默認(rèn)是物理內(nèi)存的1/4。默認(rèn)空余堆內(nèi)存小于40%時,JVM就會增大堆直到-Xmx的最大限制;空余堆內(nèi)存大于70%時,JVM會減少堆直到-Xms的最小限制。因此服務(wù)器一般設(shè)置-Xms、-Xmx相等以避免在每次GC 后調(diào)整堆的大小。

            3.非堆內(nèi)存分配
    JVM使用-XX:PermSize設(shè)置非堆內(nèi)存初始值,默認(rèn)是物理內(nèi)存的1/64;由XX:MaxPermSize設(shè)置最大非堆內(nèi)存的大小,默認(rèn)是物理內(nèi)存的1/4。

            4.JVM內(nèi)存限制(最大值)
    首先JVM內(nèi)存限制于實(shí)際的最大物理內(nèi)存,假設(shè)物理內(nèi)存無限大的話,JVM內(nèi)存的最大值跟操作系統(tǒng)有很大的關(guān)系。簡單的說就32位處理器雖然可控內(nèi)存空間有4GB,但是具體的操作系統(tǒng)會給一個限制,這個限制一般是2GB-3GB(一般來說Windows系統(tǒng)下為1.5G-2G,Linux系統(tǒng)下為2G-3G),而64bit以上的處理器就不會有限制了。

            舉例說明含義:
            -Xms128m 表示JVM Heap(堆內(nèi)存)最小尺寸128MB,初始分配
            -Xmx512m 表示JVM Heap(堆內(nèi)存)最大允許的尺寸256MB,按需分配。

        說明:如果-Xmx不指定或者指定偏小,應(yīng)用可能會導(dǎo)致java.lang.OutOfMemory錯誤,此錯誤來自JVM不是Throwable的,無法用try...catch捕捉。

            PermSize和MaxPermSize指明虛擬機(jī)為java永久生成對象(Permanate generation)如,class對象、方法對象這些可反射(reflective)對象分配內(nèi)存限制,這些內(nèi)存不包括在Heap(堆內(nèi)存)區(qū)之中。
            -XX:PermSize=64MB 最小尺寸,初始分配 
             -XX:MaxPermSize=256MB 最大允許分配尺寸,按需分配
             過小會導(dǎo)致:java.lang.OutOfMemoryError: PermGen space
              MaxPermSize缺省值和-server -client選項相關(guān)。-server選項下默認(rèn)MaxPermSize為64m
              -client選項下默認(rèn)MaxPermSize為32m

            PS:不同廠家的jdk垃圾回收算法不一樣。在sun的jdk下,Xms和Xmx設(shè)置一樣,可以減輕伸縮堆大小帶來的壓力,但在ibm的jdk下面,設(shè)置為一樣會增大堆碎片產(chǎn)生的幾率。

            下面再簡單的整理一下優(yōu)化MyEclipse速度的主要方法:
            1.修改myeclipse.ini。
            2.取消自動validation
            3.勾掉無用插件。
            4.修改啟動加載模塊
     下面附上詳細(xì)的優(yōu)化MyEclipse速度方法:(轉(zhuǎn)載
            http://yufenfei.javaeye.com/blog/376464
            http://blog.csdn.net/defonds/archive/2009/07/10/4338782.aspx
            http://zhangpengshou.javaeye.com/blog/198476

    posted @ 2017-06-19 14:38 藍(lán)胖 閱讀(284) | 評論 (0)編輯 收藏

    jsp鏈接mysql數(shù)據(jù)庫

    遇到問題:com.mysql.jdbc.Driver class not found 我在項目中的WEB-INF/lib中添加mysql-connector-java-5.6-bin jar包后在eclipse中選中項目刷新,在lib中選中mysql-connector-java-5.6-bin jar右鍵點(diǎn)擊addbulidPath成功解決問題 完整的代碼如下:

    <%@page import="java.sql.DriverManager" import="java.sql.Connection" import="java.sql.Statement" 
    import="java.sql.ResultSet" %>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <%
    Class.forName("com.mysql.jdbc.Driver");
    Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","123456");
    Statement stmt=conn.createStatement();
    String sql="select * from person ";
    ResultSet rs=stmt.executeQuery(sql);
    %>
    <table bgcolor="green" border="1">
    <tr>
    <td>id</td>
    <td>name</td>
    <td>sex</td>
    <td>age</td>
    </tr>
    <%
    while(rs.next()){
    %>
    <tr>
    <td><%=rs.getString("id") %></td>
    <td><%=rs.getString("name") %></td>
    <td><%=rs.getString("sex") %></td>
    <td><%=rs.getString("age")%></td>
    </tr>
    <% }%>
    </table>
    </body>
    </html>

    posted @ 2017-06-19 14:33 藍(lán)胖 閱讀(156) | 評論 (0)編輯 收藏

    <2017年6月>
    28293031123
    45678910
    11121314151617
    18192021222324
    2526272829301
    2345678

    導(dǎo)航

    統(tǒng)計

    常用鏈接

    留言簿

    隨筆檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲真人无码永久在线观看| 羞羞视频免费网站入口| 在线视频免费国产成人| 97国免费在线视频| 亚洲免费视频观看| 亚洲成AV人片在WWW| 亚洲自偷自偷在线制服| 无限动漫网在线观看免费| caoporm超免费公开视频| 亚洲伊人久久大香线蕉啊| 香蕉免费一区二区三区| 亚洲精品乱码久久久久久V| 亚洲色爱图小说专区| 日韩免费福利视频| 99久久免费看国产精品| 人人爽人人爽人人片A免费 | 日韩精品免费电影| 日韩精品内射视频免费观看| 黄网站在线播放视频免费观看 | 一个人免费观看视频在线中文| 亚洲婷婷综合色高清在线| 日韩亚洲国产高清免费视频| 一级特级aaaa毛片免费观看 | 波多野结衣在线免费视频| 国产成人无码免费看片软件| 亚洲综合精品第一页| 亚洲国产成人久久综合一| 亚洲男人的天堂一区二区| 午夜影视在线免费观看| 99re热精品视频国产免费| 久久九九免费高清视频| 日日摸日日碰夜夜爽亚洲| 久久亚洲精品专区蓝色区| 亚洲影院在线观看| 永久免费无码网站在线观看| 亚洲一区二区三区免费在线观看| 久久99免费视频| 久久久久久av无码免费看大片| 国产成人亚洲综合在线| 亚洲色大成网站WWW国产| 亚洲精品国产精品国自产网站 |