<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")頁面也需要設置轉碼的:
    頁面:(.jsp)
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    response.setContentType("text/html;charset=UTF-8");

    處理文件:(.java)
    轉碼的三種方法:
    A 接受參數時進行編碼轉換

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

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

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

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

    新手可以暫時不考慮過濾器的方法,過濾器一般都會涉及到配置開發,要修改web.xml,還算是比較麻煩的,建議接觸java一段時間后再考慮使用過濾器的方法?;蛘呷绻麘昧藄truts框架,可以查看struts的轉碼過濾器配置。
    實際例子:
    <%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 藍胖 閱讀(324) | 評論 (0)編輯 收藏

    jsp訪問mysql數據庫 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右鍵點擊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 藍胖 閱讀(217) | 評論 (0)編輯 收藏

    Eclipse 一直提示 loading descriptor for 解決

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




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



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

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

    解決MyEclipse吃內存,讓MyEclipse速度飛起來

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

    實在忍無可忍,作者收集了一些關于解決 MyEclipse 的耗內存的辦法,經本人測試非常有效,共享出來,希望可以方便更多的朋友。

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


    這個問題的解決辦法是關閉自動更新

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

    2 關閉updating indexes

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

    3 關閉MyEclipse的自動validation

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

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

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

    4 啟動優化,關閉不需要使用的模塊

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

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

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

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

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

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

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


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

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


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

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

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

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

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

    an internal error occurred during building workspace錯誤

    Eclipse導入了一個比較大的項目,出現了an internal error occurred during building workspace錯誤。

    網上搜了一下,據說是內存溢出問題??梢酝ㄟ^修改eclipse.ini文件解決,

     

    優化之后的ini文件內容:

    -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


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


            1.堆(Heap)和非堆(Non-heap)內存
    按照官方的說法:“Java 虛擬機具有一個堆,堆是運行時數據區域,所有類實例和數組的內存均從此處分配。堆是在 Java 虛擬機啟動時創建的。”“在JVM中堆之外的內存稱為非堆內存(Non-heap memory)”??梢钥闯鯦VM主要管理兩種類型的內存:堆和非堆。簡單來說堆就是Java代碼可及的內存,是留給開發人員使用的;非堆就是JVM留給自己用的,所以方法區、JVM內部處理或優化所需的內存(如JIT編譯后的代碼緩存)、每個類結構(如運行時常數池、字段和方法數據)以及方法和構造方法的代碼都在非堆內存中。

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

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

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

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

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

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

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

            下面再簡單的整理一下優化MyEclipse速度的主要方法:
            1.修改myeclipse.ini。
            2.取消自動validation
            3.勾掉無用插件。
            4.修改啟動加載模塊
     下面附上詳細的優化MyEclipse速度方法:(轉載
            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 藍胖 閱讀(284) | 評論 (0)編輯 收藏

    jsp鏈接mysql數據庫

    遇到問題: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右鍵點擊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 藍胖 閱讀(156) | 評論 (0)編輯 收藏

    僅列出標題  
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    常用鏈接

    留言簿

    隨筆檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 午夜免费国产体验区免费的| 青青青国产手机频在线免费观看| 亚洲毛片av日韩av无码| 女人隐私秘视频黄www免费| 亚洲国产人成在线观看| 四虎永久成人免费| 久久成人免费电影| 国产AV无码专区亚洲AV蜜芽| 久久久亚洲欧洲日产国码农村| 青青青青青青久久久免费观看| 在线观看免费无码视频| 中文有码亚洲制服av片| 精品亚洲综合在线第一区| 日本一区二区三区免费高清| a级毛片毛片免费观看永久| 国产成人精品日本亚洲网址| 亚洲日韩激情无码一区| 毛片基地免费视频a| 国产日韩AV免费无码一区二区| 亚洲一区二区三区成人网站 | 五月天国产成人AV免费观看| 亚洲午夜电影在线观看| 中文字幕精品亚洲无线码二区 | 亚洲中文字幕第一页在线 | 亚洲Av无码乱码在线观看性色| 四虎最新永久免费视频| 三年片在线观看免费西瓜视频| 亚洲av无码专区在线观看下载| 亚洲黄色高清视频| 一本色道久久综合亚洲精品| 国产免费黄色大片| 一级女人18毛片免费| 免费福利电影在线观看| 一级毛片完整版免费播放一区| 亚洲国产精品无码第一区二区三区| 久久精品蜜芽亚洲国产AV| 在线亚洲97se亚洲综合在线| 全部免费国产潢色一级| 最近2019中文字幕免费看最新 | 黄a大片av永久免费| 免费观看黄网站在线播放|