<%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>
實在忍無可忍,作者收集了一些關于解決 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 。
怎樣才能知道哪些啟動項有用呢?我現在把我知道的啟動項用處說一下,還有很多不懂的,希望大家懂的回復在下面啊:
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一樣大
網上搜了一下,據說是內存溢出問題。可以通過修改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
以下為查找得的一些資料,解釋我們在修改的參數是什么意思。
按照官方的說法:“Java 虛擬機具有一個堆,堆是運行時數據區域,所有類實例和數組的內存均從此處分配。堆是在 Java 虛擬機啟動時創建的。”“在JVM中堆之外的內存稱為非堆內存(Non-heap memory)”。可以看出JVM主要管理兩種類型的內存:堆和非堆。簡單來說堆就是Java代碼可及的內存,是留給開發人員使用的;非堆就是JVM留給自己用的,所以方法區、JVM內部處理或優化所需的內存(如JIT編譯后的代碼緩存)、每個類結構(如運行時常數池、字段和方法數據)以及方法和構造方法的代碼都在非堆內存中。
JVM使用-XX:PermSize設置非堆內存初始值,默認是物理內存的1/64;由XX:MaxPermSize設置最大非堆內存的大小,默認是物理內存的1/4。