??? End Sub
??? Public Function GetINI(ByVal Section As String, ByVal AppName As String, ByVal lpDefault As String, ByVal FileName As String) As String
??????? Dim Str As String = LSet(Str, 256)
??????? GetPrivateProfileString(Section, AppName, lpDefault, Str, Len(Str), FileName)
??????? Return Microsoft.VisualBasic.Left(Str, InStr(Str, Chr(0)) - 1)
??? End Function
??? Public Function WriteINI(ByVal Section As String, ByVal AppName As String, ByVal lpDefault As String, ByVal FileName As String) As Long
??????? WriteINI = WritePrivateProfileString(Section, AppName, lpDefault, FileName)
??? End Function
??? Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Int32, ByVal lpFileName As String) As Int32
??? Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lpFileName As String) As Int32
?
??? Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
??????? Try
??????????? Dim path As String
??????????? path = Application.StartupPath + "\Send.ini"
??????????? WriteINI("Send", "Send1", TextBox1.Text, path)
??????????? WriteINI("Send", "Send2", TextBox2.Text, path)
??????????? If (Me.RadioButton1.Checked = True) Then
??????????????? WriteINI("Send", "IsSms", 1, path)
??????????? ElseIf (Me.RadioButton2.Checked = True) Then
??????????????? WriteINI("Send", "IsSms", 0, path)
??????????? End If
??????????? MsgBox("配置設(shè)置已經(jīng)成功!!!!")
??????? Catch ex As Exception
??????????? MsgBox("錯誤!!!!")
??????? End Try
??? End Sub
看了大峽搞的級聯(lián)菜單,我也班門弄斧一把,嘿嘿,花了一點(diǎn)時間搞了個級聯(lián)菜單貼上來看看。本例中只要你選擇成員分類名稱就會自動顯示成員名稱: 首先在eclipse中建一個項(xiàng)目,名稱你自己做主了,這里為Easyjf-menu,對應(yīng)的瀏覽器頁面代碼為: Easyjf-menu.jsp
C#?
注意:對于SQL Server 數(shù)據(jù)庫,參數(shù)名字不加@。另外注意:不同數(shù)據(jù)庫類型和不同的數(shù)據(jù)源,UpdateCommand="Update [Student] Set Title = @Title,Gender = @Gender,ClassName=@ClassName Where id=@id"寫法和SqlDataSource1.UpdateParameters.Add(new Parameter("@Title", TypeCode.String, ((TextBox)gvr.FindControl("txtTitle")).Text)); 的寫法會有所區(qū)別。
第二種是將struts的Action作為spring的一個JavaBean進(jìn)行配置,在Action里面只需要定義一個Manager變量和相應(yīng)的setter/getter方法,就可以通過spring為其注入一個Manager對象。這種方式太復(fù)雜,很牽強(qiáng),個人覺得沒有什么實(shí)際意義,建議大家不必花費(fèi)時間去學(xué)習(xí)。
spring與hibernate整合的原理:
class MyController extend simpleformcontroller
{
?public MyController()
?{
??setCommandClass(Studnet.class);
?}
}
首先回憶使用hibernate的步驟:
1.創(chuàng)建和配置Configuration對象,配置Congiuration對象可以通過hibernate.properties或hiberate.cfg.xml文件,也可以完全采用如下的編程方式:
????? configuration = new Configuration()
????? configuration.addClass(Student.class)
???????????? //.addFile("Student.hbm.xml")
???????????? //.addResource("/Student.hbm.xml")
???????????? .setProperty("show_sql","true");
2.由configuration創(chuàng)建出SessionFactory對象:????????????
??? SessionFactory sf = configuration.buildSessionFactory();
3.通過SessionFactory獲得session對象,然后進(jìn)行CRUD操作:
??? Session session = sf.openSession();
??? session.save()\delete\update\load\
??? session.close();
使用spring集成hibernate的第一步就是借助spring的配置創(chuàng)建出SessionFactory對象
<bean id="sessionFactory" class="org.springframework.orm.hibernate.LocalSessionFactoryBean">
?<property name="mappingResource?>
??<list>
???<value>xx.hbm.xml</value>
???<value>yyy.hbm.xml</value>
??<list>
?</Property>
?<property name="hibernateProperties">
??<props>
???<prop key="show_sql">true</prop>
??<props>
?</property>
?<property name="datasource"><ref locale=""/></property>
</bean>
在LocalSessionFactoryBean內(nèi)部完全采用編程方式來配置configuration對象,而不再通過hibernate.properties或hiberate.cfg.xml配置文件,帶著大家查看了LocalSessionFactoryBean的源代碼。
有了SessionFactory,我們接著就可以通過spring將這個SessionFactory注入到DAO類中,配置如下:
<bean id="studentDAO" class="cn.itcast.StudentDAO">
?<property name="sessionFactory">
??<ref bean="sessionFactory" />
?</property>
</bean>
相應(yīng)的調(diào)用程序代碼示意如下:
class StudentDAO
{
?sessionFactroy;
?void setSessionFactory(sessionFactory)
?{
??this.sessionFactory = sessionFactory;
?}
?insert(User user)
?{
??sessionFactory.openSession();//累
??session.save(user);
??session.close();//累
?}
}
我們還有自己openSession和getSession,這是不是很累呢?為此,spring又提供了一個配置類hibernateTemplate,它可以幫助我們?nèi)penSession和closeSession,這個配置類能夠openSession,顯然它一定要有SessionFactory的引用。
<bean id="hibernateTemplate" class="HibernateTemplate">
?<property name="sessionFactory">
??<ref bean="sessionFactory" />
?</property>
</bean>
遵循spring的IOC思想,我們接著還要將HibernateTemplate注入到DAO類中,配置如下:
<bean id="studentDAO" class="cn.itcast.StudentDAO">
?<property name="hibernateTemplate">
??<ref bean="hibernateTemplate" />
?</property>
</bean>
class StudentDAO
{
?hibernateTemplate;
?void sethibernateTemplate(hibernateTemplate)
?{
??this.hibernateTemplate = hibernateTemplate;
?}
?insert(User user)
?{
??hibernateTemplate.save(user);//我們不再openSession和closeSession,不是很爽嗎?
?}
}
另外,spring還提供了一個HibernateSuport類,它可以通過注入的SessionFactory返回一個HibernateTemplate,我們的DAO類繼承這個HibernateSupport,也可以獲得HibernateTemplate對象進(jìn)行CRUD操作,配置及示意代碼如下:
<bean id="studentDAO" class="cn.itcast.StudentDAO">
?<property name="sessionFactory">
??<ref bean="sessionFactory" />
?</property>
</bean>
class StudentDAO extends HibernateSuport
{
?/*hibernateTemplate;
?void gethibernateTemplate()
?{
??return hibernateTemplate;
?}
?sessionFactroy;
?void setSessionFactory(sessionFactory)
?{
??this.sessionFactory = sessionFactory;
??hibernateTemplate = new HibernateTemplate(sessionFactory);
?}*/
?
?
?insert(User user)
?{
??getHibernateTemplate().save(user);
?}
}
?
最后由王澤佑提問引出spring mvc的注冊綁定的詳細(xì)講解:
在spring幫助文檔中搜索editor,可以看到有關(guān)注冊綁定的信息,CustomDateEditor是沒有被自動注冊的,需要用戶在initBinder方法內(nèi)部調(diào)用,示例代碼如下:
protected void initBinder(
??????? HttpServletRequest request,
??????? ServletRequestDataBinder binder)
??????? throws ServletException {
??????? binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy/MM/dd"),true));
??? }
一種替換的方式及registerCustomEditor底層的實(shí)現(xiàn)內(nèi)幕:
調(diào)用BaseCommandController.setPropertyEditorRegistrars()方法,顯然這可以作為controller的屬性進(jìn)行配置。
class MyPropertyEditorRegistrar
{
?void registerCustomEditors(PropertyEditorRegistry registry)
?{
??reguistry.registerCustomEditor(byte[].class, new ByteArrayMultipartFileEditor());
?}
}
關(guān)于Date數(shù)據(jù)校驗(yàn)的問題:通過在struts幫助文擋的Validator幫助頁面中搜索validate,是可以搜索到DateValidator的配置幫助的。
如果注冊了DateEditor,數(shù)據(jù)成功轉(zhuǎn)換成Date類型的字段,那么隨后的的Validator框架就沒必要對這個Date字段進(jìn)行校驗(yàn)了,因?yàn)閂alidator是對已裝配到Bean中的字符串類型的字段進(jìn)行校驗(yàn),而數(shù)據(jù)都已經(jīng)成功裝配進(jìn)了Date字段中,哪還有校驗(yàn)的必要。框架把數(shù)據(jù)裝配到formbean里面,Validator從Formbean里面拿數(shù)據(jù)進(jìn)行校驗(yàn)。
<bean id="myController class="cn.itcast.MyController">
?<property key="commandClass">
??<value>cn.itcast.Student</value>
?</prperty>
</bean>
上面的配置信息相當(dāng)于下面的一段代碼,這其中就涉及到了屬性綁定的問題,要把字符串"cn.itcast.Student"轉(zhuǎn)換成Class對象。
Class clazz = Class.forName("cn.itcast.Student");
setCommandClass(clazz);
小記:通過spring配置文件中的<import>元素的resource屬性可以導(dǎo)入更多的配置文件,實(shí)現(xiàn)信息分散配置的目的。?
aspx?:
?
C#:
注意:EnableViewState="true" 是必須的。
轉(zhuǎn)自:http://www.cnblogs.com/jplee/archive/2006/11/13/559612.html
?
?
建議:
如果你還不清楚struts和hibernate的一些基本原理,希望能先去了解一下這方面的相關(guān)內(nèi)容。
推薦:
Hibernate中文手冊》作者認(rèn)為要學(xué)Hibernate看這個就足夠了,里面幾乎包括了所有的細(xì)節(jié),不過可能不太適合快速入門。
地址:http://www.hibernate.org/hib_docs/v3/reference/zh- cn/html_single/
關(guān)于struts的資料就很多了,這里推薦一個可以下載一些入門教程的網(wǎng)站。
地址:http://www.wnetw.com/jclub/index.jsp
強(qiáng)烈建議入門的朋友先了解一下基本的原理!否則本文可能對你沒有任何幫助。
相關(guān)工具下載:(注意版本)
mysql5.0 http://www.mysql.org
eclipse 3.1.1 http://www.eclipse.org
myeclipse4.0.3 http://www.myeclipseide.com
tomcat5.5
安裝:
關(guān)于tomcat和mysql的安裝就不多說了,需要注意的是最好保證你的 jdk是1.5的版本,并配置好你的環(huán)境變量,不然可能會遇到一些問題。
把eclipse解開,再去安裝剛下載的myeclipse,在安裝的時候需要把路徑指定到剛才解開的eclipse上,由于myeclipse是個收費(fèi)軟件,所以需要注冊。不過一般按照Chinese的習(xí)慣,去google一個注冊碼就可以了:}
開發(fā)環(huán)境部署:
好了,現(xiàn)在保證你的mysql和tomcat服務(wù)能夠正常啟動,myeclipse能夠正常打開(如果不能,可以去找一下相關(guān)的說明或者給作者留言)。下面我們就要開始真正的開始部署一個傳說中的tomcat+struts+hibernate+mysql結(jié)構(gòu)的工程了!(faint!前言就寫的我好累)
首先,在myeclipse里新建一個工程。在左邊的Package Exporler面版里點(diǎn)右鍵選擇new->project…
在跳出菜單里選擇MyEclipse->J2EE Projects->Web Project。
點(diǎn)擊next后進(jìn)入如下畫面:
工程名為:test
結(jié)束后點(diǎn)擊Finish。
好了,如果成功的話你就會在 Package Exporler里看到一個新的test工程!現(xiàn)在我們先配置一下數(shù)據(jù)庫方面的東西。首先在你的mysql 里建立一個數(shù)據(jù)庫webases,再在里面新建一個表admin,里面三個字段分別為id,name,password其中id為自動取值的主鍵(mysql具體的操作可以自己找資料,不是本文涉及范圍)。
再回到myeclipse ,選中window->Open Perspective->Other…
可以看到現(xiàn)在跳出一個名為Select Perspective的菜單,在里面選中MyEclipse Databases Exporler,可以看到現(xiàn)在到了下面的頁面。
按以上圖示輸入相關(guān)字段后點(diǎn)擊Finish便建立了一個數(shù)據(jù)庫連接,在新出現(xiàn)的JDBC for Mysql上點(diǎn)右鍵,選擇Open connection…,確認(rèn)用戶名和密碼正確后點(diǎn)OK,如果一切順利的話你會看到下面的畫面:
這說明你已經(jīng)和數(shù)據(jù)庫建立了正確的連接。現(xiàn)在我們再回到window->Open Perspective- >Other…里的MyEclipse,也就是我們剛進(jìn)來的時候看到的畫面。
右鍵點(diǎn)擊你剛建立的工程 test并選擇MyEclipse->Add struts Capabilities…在跳出的菜單里按照如下輸入并確定:
好了,現(xiàn)在你已經(jīng)為你的工程增加了struts,接下來和上面一樣在右鍵工程后選擇MyEclipse- >Add Hibernate Capabilities…一路確定下來為你的工程添加Hibernate。(為方便起見我們在選擇路徑時把HibernateSessionFactory.java放在了src/com下面,其實(shí)最好建立個單獨(dú)的目錄如 src/com/hibernate)
為了更好的演示我們不建立通常的登陸頁面而是建立個注冊頁面。選擇 src目錄下的hibernate.cfg.xml文件。照如下填寫并保存。這樣hibernate就為你建立了數(shù)據(jù)庫的連接池。
下面我們再選擇WebRoot/WEB-INF/struts-config.xml文件,在畫面中點(diǎn)擊右鍵選擇new- >Form, Action and JSP。如下填寫
再選擇JSP選項(xiàng),如下
最后選擇Finish。
再新建一個一個success.jsp的頁面,
在剛才struts- config.xml文件里右鍵選擇addAdmin選擇Properties,在菜單里選擇Forwords,再點(diǎn)add,如下圖填寫
最后你的struts-config.xml就是下面這個樣子:
下面我們轉(zhuǎn)到hibernate。換到剛才我們建立數(shù)據(jù)庫的頁面,選擇你的admin的表點(diǎn)右鍵選擇Create Hibernate Mapping。選擇好打包路徑后選擇Finish。如圖:
在你剛才選擇的路徑下(我為方便是src/com/yourcompanyname/)下新建立的文件 AdminDAOFactory.java文件并輸入以下內(nèi)容:
package com.yourcompanyname;
import java.util.Iterator;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.hibernate.SessionFactory;
public class AdminDAOFactory {
?Session session;
?Transaction tx;
?public void add(Admin admin) throws HibernateException {
??/**
?? * Creation Date: 11-17-2005
?? * TODO Add a new admin user.
?? * @param An object of Admin
?? * @return void
?? * @author Coder Guo
?? */
??try {
???session = SessionFactory.currentSession();
???tx = session.beginTransaction();
???//Add a new admin
???session.save(admin);
???tx.commit ();
??}catch(HibernateException e){
???throw e;
??}finally{
???if (tx!=null) {
????tx.rollback();
???}
???SessionFactory.closeSession();
??}
?}
}
?再打開com.yourcompany.struts.action下的AddAdminAction.java添加(其中如果有錯誤選中好按ctrl+shift+o自動添加包)
public class AddAdminAction extends Action {
?// --------------------------------------------------------- Instance Variables
?// --------------------------------------------------------- Methods
?/**
? * Method execute
? * @param mapping
? * @param form
? * @param request
? * @param response
? * @return ActionForward
? * @author Coder Guo
? */
?public ActionForward execute(
??ActionMapping mapping,
??ActionForm form,
??HttpServletRequest request,
??HttpServletResponse response) {
??AddAdminForm addAdminForm = (AddAdminForm) form;
??
??// TODO Add a new admin
??Admin admin = new Admin();
??admin.setName(addAdminForm.getName ());
??admin.setPassword(addAdminForm.getPassword ());
??AdminDAOFactory adminDAO = new AdminDAOFactory ();
??adminDAO.add(admin);
??
??return mapping.findForward("success");
?}
}
?再打開com.yourcompanyname.struts.form下的AddAdminForm.java,修改(如果有錯誤按照上面說的方法導(dǎo)入包)
?public ActionErrors validate(
??ActionMapping mapping,
??HttpServletRequest request) {
??// TODO Auto-generated method stub
??ActionErrors errors = new ActionErrors();
??
??Session session = SessionFactory.currentSession();
??Transaction tx = session.beginTransaction ();
??Query query = session.createQuery("select admin from Admin as admin where admin.name = '" + this.name + "'");
??Iterator it = query.iterate ();
??if (it.hasNext()){
???errors.add ("addAdmin.err.name",new ActionMessage("form.addAdmin.err.name"));
??}
??tx.commit();
??SessionFactory.closeSession ();
??return errors;
?}
?public void reset(ActionMapping mapping, HttpServletRequest request) {
??// TODO Auto-generated method stub
??this.name=null;
??this.password=null;
?}
再打開com\yourcompanyname\struts下的ApplicationResource.properties在這里面添加錯誤信息:
Form.addAdmin.err.name=err
最后,(汗,好累啊-_-!)打開addAdmin.jsp修改成如下: <script language = "javascript"> ? <body> </html:html> 在項(xiàng)目文件點(diǎn)右鍵->“myeclipse”->“Add and remove project deployment”,如下圖: 好了,我們的配置工作基本結(jié)束了,在myeclipse上開啟tomcat服務(wù) 現(xiàn)在打開瀏覽器,輸入
<%@ page contentType="text/html; charset=utf-8"%>
<%@ page language="java"%>
<%@ taglib uri="<%@ taglib uri="
<!--
function check(){
?if (loginForm.userName.value == "" || loginForm.password.value == ""){
??alert("請輸入完整的信息!");
??loginForm.userName.focus();
??return false;
?}
}
//-->
</script>
?
?<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html>
? <head>
??? <html:base />
???
??? <title>login.jsp</title>
??? <link href="css/webcss.css" rel="stylesheet" type="text/css">
???
??? <meta http-equiv="pragma" content="no- cache">
??? <meta http-equiv="cache-control" content="no- cache">
??? <meta http-equiv="expires" content="0">???
??? <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
??? <meta http- equiv="description" content="This is my page">
? </head>
?
? <center>
? ?<p> </p>
? ?<p> </p>
? ?<table width="300" border="0" cellpadding="0" cellspacing="0">
? ?<html:form action="/addAdmin" focus="name" method="GET">
??? ?<tr align="center" valign="middle">
????? ?<td colspan="2" class="typt_normal">新增管理員</td>
??? ?</tr>
??? ?<tr>
????? ?<td width="100" align="center" valign="middle" class="typt_normal">名稱: </td>
????? ?<td width="200" align="left"><html:text property="name" styleClass="text_s"/><html:errors property="addAdmin.err.name"/></td>
??? ?</tr>
??? ?<tr>
????? ?<td width="100" align="center" valign="middle" class="typt_normal">密碼: </td>
????? ?<td width="200" align="left"><html:password property="password" styleClass="text_s"/></td>
??? ?</tr>
??? ?<tr>?
????? ?<td colspan="2" align="center" valign="middle"><html:submit value="提交" onclick="return check ();"/><html:reset value="重置"></html:reset></td>
????? ?</tr>
?</html:form>
? ?</table>
?</center>
?</body>
其中可以看到如何在struts的標(biāo)簽中使用javascript的方法。
配置好myeclipse于tomcat的連接。在window->Preferences做如下設(shè)定:
http://127.0.0.1:8080/test/addAdmin.jsp就可以看到你的jsp頁面了!
]]>
2? lomboz J2EE插件,開發(fā)JSP,EJB
http://forge.objectweb.org/projects/lomboz
3? MyEclipse J2EE開發(fā)插件,支持SERVLET/JSP/EJB/數(shù)據(jù)庫操縱等
http://www.myeclipseide.com
4? Properties Editor? 編輯java的屬性文件,并可以自動存盤為Unicode格式
http://propedit.sourceforge.jp/index_en.html
5? Colorer Take? 為上百種類型的文件按語法著色
http://colorer.sourceforge.net/
6? XMLBuddy 編輯xml文件
http://www.xmlbuddy.com
7? Code Folding? 加入多種代碼折疊功能(比eclipse自帶的更多)
http://www.coffee-bytes.com/servlet/PlatformSupport
8? Easy Explorer? 從eclipse中訪問選定文件、目錄所在的文件夾
http://easystruts.sourceforge.net/
9? Fat Jar 打包插件,可以方便的完成各種打包任務(wù),可以包含外部的包等
http://fjep.sourceforge.net/
10? RegEx Test 測試正則表達(dá)式
http://brosinski.com/stephan/archives/000028.php
11? JasperAssistant 報(bào)表插件(要錢的哦~)
http://www.jasperassistant.com/
12? Jigloo GUI Builder JAVA的GUI編輯插件
http://cloudgarden.com/jigloo/
13? Profiler 性能跟蹤、測量工具,能跟蹤、測量B/S程序
http://sourceforge.net/projects/eclipsecolorer/
14? AdvanQas 提供對if/else等條件語句的提示和快捷幫助(自動更改結(jié)構(gòu)等)
http://eclipsecolorer.sourceforge.net/advanqas/index.html
15? Log4E Log4j插件,提供各種和Log4j相關(guān)的任務(wù),如為方法、類添加一個logger等
http://log4e.jayefem.de/index.php/Main_Page
16? VSSPlugin VSS插件
http://sourceforge.net/projects/vssplugin
17? Implementors 提供跳轉(zhuǎn)到一個方法的實(shí)現(xiàn)類,而不是接口的功能(實(shí)用!)
http://eclipse-tools.sourceforge.net/implementors/
18? Call Hierarchy 顯示一個方法的調(diào)用層次(被哪些方法調(diào),調(diào)了哪些方法)
http://eclipse-tools.sourceforge.net/call-hierarchy/index.html
19? EclipseTidy 檢查和格式化HTML/XML文件
http://eclipsetidy.sourceforge.net/
20? Checkclipse 檢查代碼的風(fēng)格、寫法是否符合規(guī)范
http://www.mvmsoft.de/content/plugins/checkclipse/checkclipse.htm
21? Hibernate Synchronizer Hibernate插件,自動映射等
http://www.binamics.com/hibernatesync/
22? VeloEclipse? Velocity插件
http://propsorter.sourceforge.net/?
?
23? EditorList 方便的列出所有打開的Editor
http://editorlist.sourceforge.net/?
?
24? MemoryManager 內(nèi)存占用率的監(jiān)視
http://cloudgarden.com/memorymanager/?
?
25? swt-designer java的GUI插件
http://www.swt-designer.com/
?
26? TomcatPlugin 支持Tomcat插件
http://www.sysdeo.com/eclipse/tomcatPlugin.html
?
27? XML Viewer
http://tabaquismo.freehosting.net/ignacio/eclipse/xmlview/index.html
?
28? quantum 數(shù)據(jù)庫插件
http://quantum.sourceforge.net/
?
29? Dbedit 數(shù)據(jù)庫插件
http://sourceforge.net/projects/dbedit
?
30? clay.core 可視化的數(shù)據(jù)庫插件
http://www.azzurri.jp/en/software/index.jsp
http://www.azzurri.jp/eclipse/plugins
?
31? hiberclipse hibernate插件
http://hiberclipse.sourceforge.net
http://www.binamics.com/hibernatesync
?
32? struts-console Struts插件
http://www.jamesholmes.com/struts/console/
?
33? easystruts Struts插件
http://easystruts.sourceforge.net?
?
34? veloedit Velocity插件
http://veloedit.sourceforge.net/
?
35? jalopy 代碼整理插件
http://jalopy.sourceforge.net/
?
36? JDepend 包關(guān)系分析
http://andrei.gmxhome.de/jdepend4eclipse/links.html
?
37? Spring IDE Spring插件
http://springide-eclip.sourceforge.net/updatesite/
?
38? doclipse 可以產(chǎn)生xdoclet 的代碼提示
http://beust.com/doclipse/
39? SQLExplorer,在Eclipse 中連接各種數(shù)據(jù)庫進(jìn)行操作使用
http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=124&threadID=31124
JSEclipse
eclipseME
? http://eclipseme.org/updates/
Eclipse加速插件KeepResident
http://suif.stanford.edu/pub/keepresident/
?
MyEclipse? J2EE開發(fā)插件,支持SERVLET/JSP/EJB/數(shù)據(jù)庫操縱等
www.myeclipseide.com
?
Properties Editor? 編輯java的屬性文件,并可以自動存盤為Unicode格式
http://propedit.sourceforge.jp/index_en.html
http://propedit.sourceforge.jp/eclipse/updates/
?
Colorer Take? 為上百種類型的文件按語法著色
http://colorer.sourceforge.net/
?
XMLBuddy 編輯xml文件
www.xmlbuddy.com
?
Code Folding? 加入多種代碼折疊功能(比eclipse自帶的更多)
http://www.coffee-bytes.com/servlet/PlatformSupport
?
Easy Explorer? 從eclipse中訪問選定文件、目錄所在的文件夾
http://easystruts.sourceforge.net/
?
Fat Jar 打包插件,可以方便的完成各種打包任務(wù),可以包含外部的包等
http://fjep.sourceforge.net/
?
RegEx Test 測試正則表達(dá)式
http://brosinski.com/stephan/archives/000028.php
?
JasperAssistant 報(bào)表插件(強(qiáng),要錢的)
http://www.jasperassistant.com/
?
Jigloo GUI Builder JAVA的GUI編輯插件
http://cloudgarden.com/jigloo/
?
Profiler 性能跟蹤、測量工具,能跟蹤、測量BS程序
http://sourceforge.net/projects/eclipsecolorer/
?
AdvanQas 提供對if/else等條件語句的提示和快捷幫助(自動更改結(jié)構(gòu)等)
http://eclipsecolorer.sourceforge.net/advanqas/index.html
?
Log4E???? Log4j插件,提供各種和Log4j相關(guān)的任務(wù),如為方法、類添加一個logger等
http://log4e.jayefem.de/index.php/Main_Page
?
VSSPlugin VSS插件
http://sourceforge.net/projects/vssplugin
?
Implementors?? 提供跳轉(zhuǎn)到一個方法的實(shí)現(xiàn)類,而不是接中的功能(實(shí)用!)
http://eclipse-tools.sourceforge.net/implementors/
?
Call Hierarchy 顯示一個方法的調(diào)用層次(被哪些方法調(diào),調(diào)了哪些方法)
http://eclipse-tools.sourceforge.net/call-hierarchy/index.html
?
EclipseTidy 檢查和格式化HTML/XML文件
http://eclipsetidy.sourceforge.net/
?
Checkclipse 檢查代碼的風(fēng)格、寫法是否符合規(guī)范
http://www.mvmsoft.de/content/plugins/checkclipse/checkclipse.htm
?
Hibernate Synchronizer Hibernate插件,自動映射等
http://www.binamics.com/hibernatesync/
?
spring updatesite 插件
http://springide.org/updatesite/
VeloEclipse? Velocity插件
http://propsorter.sourceforge.net/
?
EditorList?? 方便的列出所有打開的Editor
http://editorlist.sourceforge.net/
?
MemoryManager 內(nèi)存占用率的監(jiān)視
http://cloudgarden.com/memorymanager/
Eclipse的游戲插件
http://eclipse-games.sourceforge.net/
JBoss-IDE
http://jboss.sourceforge.net/jbosside/updates/
自動反編譯class,安裝后要設(shè)定class文件缺省關(guān)聯(lián)到j(luò)ode
http://www.technoetic.com/eclipse/update
jigloo swing/sw設(shè)計(jì)工具,里面自帶的form/anchor布局很好用!
http://cloudgarden.soft-gems.net/update-site/
jinto的資源文件編輯工具,同時編輯多種語言,而且自動轉(zhuǎn)換成iso8859-1編碼。很好用!
http://www.guh-software.de/eclipse/