??xml version="1.0" encoding="utf-8" standalone="yes"?>国产成人免费视频,欧美成人综合在线,日本一卡二卡四卡精品http://www.aygfsteel.com/iLxyfOeVEr/World Of JavaCraftzh-cnTue, 15 Jul 2025 08:47:36 GMTTue, 15 Jul 2025 08:47:36 GMT60 史上最单的Hibernate入门?/title><link>http://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35951.html</link><dc:creator>iLxyfOreVEr</dc:creator><author>iLxyfOreVEr</author><pubDate>Sat, 18 Mar 2006 08:27:00 GMT</pubDate><guid>http://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35951.html</guid><wfw:comment>http://www.aygfsteel.com/iLxyfOeVEr/comments/35951.html</wfw:comment><comments>http://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35951.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/iLxyfOeVEr/comments/commentRss/35951.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/iLxyfOeVEr/services/trackbacks/35951.html</trackback:ping><description><![CDATA[其实Hibernate本n是个独立的框Ӟ它不需要Q何web server或application server的支持。然而,大多数的Hibernate入门介绍都加入了很多非Hibernate的东西,比如: Tomcat, Eclipse, Log4J,Struts, XDoclet, 甚至JBoss。这Ҏ让h产生Hibernate复杂难懂的误解,特别是打M初学者的U极性?br /><br />在这文章将不涉及Eclipse, log4j, Struts, Tomcat, XDocletQ和JBoss。本文的目的是演CZ下Hibernate的安装过E以及最基本的功能,从而给初学者一个低得不能再低的入门门槛?br /><br /><br /><b>下蝲文g</b><br /><br />你需要Java SDK?Hibernate包、Ant包、和JDBC Driver?br /><br />1、Hibernate包下载地址:<br /><a ><font color="#223355">http://prdownloads.sourceforge.net/hibernate/?sort_by=date&sort=desc</font></a><br /><br />2、Ant包下载地址:<br /><a ><font color="#223355">http://apache.130th.net/ant/binaries/apache-ant-1.6.1-bin.zip</font></a><br /><br />3、JDBC Driver要根据你用的database来定Q一般database官方|站上都会有。Hibernate支持常用的databaseQ比?MySQL, Oracle, PostgreSQL, 和MS-SQL Server。这些数据库都有JDBC Driver: <br /><br />Oracle JDBC Driver下蝲地址(下蝲前必d意Oracle协议?<br /><a ><font color="#223355">http://otn.oracle.com/software/htdocs/distlic.html?/software/tech/java/sqlj_jdbc/htdocs/jdbc9201.html</font></a><br /><br />MySQL JDBC Driver下蝲地址<br /><a ><font color="#223355">http://dev.mysql.com/downloads/connector/j/3.0.html</font></a><br /><br />PostgreSQL JDBC Driver下蝲地址<br /><a ><font color="#223355">http://jdbc.postgresql.org/download.html</font></a><br /><br />MS-SQL Server JDBC Driver下蝲地址<br /><a ><font color="#223355">http://www.microsoft.com/downloads/details.aspx?FamilyID=9f1874b6-f8e1-4bd6-947c-0fc5bf05bf71&displaylang=en</font></a><br /><br />4、将Hibernate包和Ant包分别解压至c:\dev\?此目录不重要Q你可以换其它Q何目??br /><br /><br /><b>配置环境</b><br /><br />1、你需要添加一个新的环境变? ANT_HOMEQ让它指向c:\dev\<你的ANT包所在目?gt;。ƈ在PATH环境变量里添?ANT_HOME%\bin?br /><br />2、你需要添加一个新的环境变? JAVA_HOMEQ让它指向你的j2sdk根目录。ƈ在PATH环境变量里添?JAVA_HOME%\bin?br /><br />3、创Z个项目目录,比如c:\workspace\My1stHibernate?br /><br />在项目目录下Q另外创Z个目? src, classes, lib?br /><br />在lib目录下,创徏两个目录: hibernate和db?br /><br />q样你有了如下的文gl构:<br /><br />c:\workspace\My1stHibernate\<br />c:\workspace\My1stHibernate\src<br />c:\workspace\My1stHibernate\classes<br />c:\workspace\My1stHibernate\lib<br />c:\workspace\My1stHibernate\lib\hibernate<br />c:\workspace\My1stHibernate\lib\db<br /><br />4、将c:\dev\<你的Hibernate包所在目?gt;\hibernate2.jar文gcopy到c:\workspace\My1stHibernate\lib\hibernate下?br /><br />c:\dev\<你的Hibernate包所在目?gt;\lib\下的所有文件同样copy到c:\workspace\My1stHibernate\lib\hibernate下?br /><br />你的JDBC Driver文g(一般是一个jar文g)copy到c:\workspace\My1stHibernate\lib\db下?br /><br /><br /><b>创徏数据?/b><br /><br />1、用你最喜爱的database软gQ创Z个hibernate_test的数据库?br /><br />2、在此数据库下,新徏一个table名ؓCUSTOMER<br /><br />CREATE TABLE CUSTOMER<br />(<br />    CID INTEGER NOT NULL PRIMARY KEY, <br />    USERNAME VARCHAR(12) NOT NULL, <br />    PASSWORD VARCHAR(12) <br />);<br /><br /><br /><b>~写Java文g</b><br /><br />public class Customer {<br />    <br />    private int id;<br />    private String username;<br />    private String password;<br /><br /><br />    public int getId() {<br />        return id;<br />    }<br /><br />    public String getPassword() {<br />        return password;<br />    }<br /><br />    public String getUsername() {<br />        return username;<br />    }<br /><br />    public void setId(int id) {<br />        this.id = id;<br />    }<br /><br />    public void setPassword(String password) {<br />        this.password = password;<br />    }<br /><br />    public void setUsername(String username) {<br />        this.username = username;<br />    }<br /><br />}<br /><br />此cd为c:\workspace\My1stHibernate\src\Customer.java文g?br /><br />~写Testc?br /><br />import net.sf.hibernate.*;<br />import net.sf.hibernate.cfg.*;<br /><br />public class Test {<br /><br />    public static void main(String[] args) {<br /><br />        try {<br />            SessionFactory sf =<br />                new Configuration().configure().buildSessionFactory();<br />            Session session = sf.openSession();<br />            Transaction tx = session.beginTransaction();<br /><br />            for (int i = 0; i < 200; i++) {<br />                Customer customer = new Customer();<br />                customer.setUsername("customer" + i);<br />                customer.setPassword("customer");<br />                session.save(customer);<br />            }<br /><br />            tx.commit();<br />            session.close();<br /><br />        } catch (HibernateException e) {<br />            e.printStackTrace();<br />        }<br />    }<br />}<br /><br />此cd为c:\workspace\My1stHibernate\src\Test.java文g?br /><br /><br /><b>创徏Hibernate映射文g</b><br /><br />因ؓq里只有一个Class --- Customer 和一个Table --- CUSTOMERQ你只需要徏立一个映文?-- Customer.hbm.xmlQ来对应CustomercdCUSTOMER表之间的关系?br /><br /><?xml version="1.0"?><br /><!DOCTYPE hibernate-mapping PUBLIC<br />    "-//Hibernate/Hibernate Mapping DTD//EN"<br />    "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd"><br /><br /><hibernate-mapping><br />    <class name="Customer" table="CUSTOMER"><br />        <id name="id" column="CID"><br />            <generator class="increment" /><br />        </id><br />        <property name="username" column="USERNAME" /><br />        <property name="password" column="PASSWORD" /><br />    </class><br /></hibernate-mapping><br /><br />把此文g存ؓc:\workspace\My1stHibernate\src\Customer.hbm.xmlQ和Customer.java攑֜同一目录下?br /><br /><b><br />~写Ant build.xml文g</b><br /><br />你不一定要知道q个build.xml的细节,其实Ant也不是Hibernate所必须的。这里用Ant是ؓ了简化一些Q务,比如: ~译、copy、运行,{?br /><br /><?xml version="1.0" ?><br /><br /><project name="My1stHibernate" default="build" basedir="."><br /><br />    <property name="base.dir" value="." /><br />    <property name="src.dir" value="src" /><br />    <property name="lib.dir" value="lib" /><br />    <property name="build.dir" value="classes" /><br /><br />    <path id="myclasspath"><br />        <fileset dir="${lib.dir}"><br />            <include name="**/*.jar" /><br />        </fileset><br />        <pathelement location="${build.dir}" /><br />    </path><br /><br />    <target name="init"><br />        <mkdir dir="${build.dir}" /><br />    </target><br />    <br />    <target name="build" depends="init" description="compile the source files"><br />        <javac classpathref="myclasspath" srcdir="${src.dir}" destdir="${build.dir}" /><br />        <copy todir="${build.dir}" ><br />            <fileset dir="${src.dir}" ><br />                <exclude name="**/*.java"/><br />            </fileset><br />        </copy><br />    </target><br /><br />    <target name="run" depends="build"><br />        <java classpathref="myclasspath" classname="Test" fork="true" /><br />    </target><br /><br />    <target name="clean"><br />        <delete includeEmptyDirs="true"><br />            <fileset dir="${build.dir}" /><br />        </delete><br />    </target><br /><br /></project><br /><br /><br /><b>配置Hibernate描述文g</b><br /><br />Hibernate描述文g可以是一个properties或xml 文gQ其中最重要的是定义数据库的q接。我q里列出的是一个XML格式的hibernate.cfg.xml描述文g?br /><br /><?xml version="1.0" encoding="utf-8" ?><br /><!DOCTYPE hibernate-configuration<br />    PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"<br />    "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd"><br /><br /><hibernate-configuration><br />    <br />    <session-factory name="java:/hibernate/HibernateFactory"><br />        <br />        <property name="show_sql">true</property><br />        <property name="connection.driver_class"><br />            oracle.jdbc.driver.OracleDriver <!-- q里是Oracle 9i的JDBC driver class?--><br />        </property><br />        <property name="connection.url"><br />            jdbc:oracle:oci8:@hibernate_test <!-- q里是Oracle的hibernate_test数据库URL --> <br />        </property><br />        <property name="connection.username"><br />            你的数据库用户名<br />        </property><br />        <property name="connection.password"><br />            你的数据库密?br />        </property><br />        <property name="dialect"><br />            net.sf.hibernate.dialect.Oracle9Dialect <!-- q里是Oracle 9i的Dialect --><br />        </property><br />        <br />        <mapping resource="Customer.hbm.xml" /> <!-- 指定Customer的映文?--><br />        <br />    </session-factory><br />    <br /></hibernate-configuration><br /><br />如果你用的不是Oracle 9iQ可到C:\dev\<你的Hibernate包所在目?gt;\src\hibernate.properties文g里找C的数据库Q然后替换以上相对应的倹{?br /><br /><br /><b>开始运?/b><br /><br />到c:\workspace\My1stHibernate下,q行ant run。如果你严格依照以上步骤Q应该看?br /><br />run:<br />        [java] log4j:WARN No appenders could be found for logger (net.sf.hibernate.cfg.Environment).<br />        [java] log4j:WARN Please initialize the log4j system properly.<br />        [java] Hibernate: insert into CUSTOMER (USERNAME, PASSWORD, CID) values (?, ?, ?)<br />BUILD SUCCESSFUL<br /><br />C的hibernate_test数据库看一下,在CUSTMOR表里新添?00条记录,但你没有写Q何JDBC code?br />以后如果你要更换数据库,只需要改变hibernate.cfg.xml描述文g里相应的值即可?br /><br /><br /><b>l论</b><br /><br />此文是一门槛极低的入门介绍。我l一个完全不懂Hibernate的朋友看Q他用了不到30分钟p行了他的W一个HibernateE序Q从此引起了 他对Hibernate的兴。但读者必认识到q只是一个开始,此文实乃HHibernate冰山一角上的一颗小冰晶。千里之行始于下,你可以把此文 当作q向Hibernate大道的一个v炏V?br /><img src ="http://www.aygfsteel.com/iLxyfOeVEr/aggbug/35951.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/iLxyfOeVEr/" target="_blank">iLxyfOreVEr</a> 2006-03-18 16:27 <a href="http://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35951.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>利用Eclipse开发Hibernate应用E序 http://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35948.htmliLxyfOreVEriLxyfOreVErSat, 18 Mar 2006 07:54:00 GMThttp://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35948.htmlhttp://www.aygfsteel.com/iLxyfOeVEr/comments/35948.htmlhttp://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35948.html#Feedback0http://www.aygfsteel.com/iLxyfOeVEr/comments/commentRss/35948.htmlhttp://www.aygfsteel.com/iLxyfOeVEr/services/trackbacks/35948.htmlEclipse是目前非常流行的开发^収ͼ开放扩展的架构让很多程序员扑ֈ了自׃性化的工作环境,Hibernate也是目前牛叉得不得了的框Ӟ臛_在EJB 3大行光之前Q它是我们在考虑OR映射旉常好的选择。本文主要介l如何利用Hibernate Syn插g在Eclipse 3.0.1中快速的开发Hibernate应用E序Q提高我们的工作效率?br />  下面演示一个最单的单表操作Q可以让我们很快熟悉开发过E。我们选择Mysql数据库来做这个应用,首先建立一个数据表Q名为user_infoQ包含id、name、password三个字段Q徏表语句如下:
# Host: localhost
# Database: test
# Table: 'user_info'
#
CREATE TABLE `user_info` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(100) NOT NULL default '',
`password` varchar(100) NOT NULL default '',
PRIMARY KEY  (`id`)
);
  然后新徏一个普通的Java目Q?b>新徏—项目—Java目”,注意加入Hibernate的所有lib文gQ以及mysql的jdbc驱动文g。下面我们需要在目中加入一个Hibernate的配|文Ӟ在src目录下选择?b>新徏—其他—hibernate—hibernate configuration file”,如下图:



  在弹出的界面中,你需要指定要使用的数据库Q以及连接数据库所需要的信息Q我们对应的选择了数据库为mysqlQƈ配置了数据库的URL和管理员帐号Q如下:



  在上图中Q我们还可以指定从JNDI数据源中获得q接Q可以点几Z?b>Datasource“标{进行配|?br />
  ?b>完成”之后系l会自己生成一个名为“hibernate.cfg.xml”的文gQ里面包含了基本的配|信息,如果需要高U配|,可以手动d?br />
  下面我们要生成映文Ӟ首先新徏一个包“org.bromon.zizz.pojo”,在这个包下选择?b>新徏—其他—hibernate—hibernate mapping file”,在弹出的界面中点几Z刷新”,讲会列出库中所有的数据表,选中我们要用的“user_info”表Q以及我们要生成的pojo文g所在的包:org.bromon.zizz.pojo。如下图Q?br />


  在上q界面的“Properties”标{中可以配置hbm的其他选项Q包括文件扩展名Q聚合列名,ID生成规则{。完成后Q系l会自动生成一个名为“UserInfo.hbm”的文gQ我们可以通过q个文g生成相关的存根类。在UserInfo.hbm文g上选择?b>Hibernate Synchronizer—Synchronize files”:



  该操作将生成三个包八个类文gQ里面封装了Hibernate的操作细节,让我们可以专心面对业务逻辑的开发,仔细阅读q些文g可以提高你对Hibernate的认识,增长应用技巧?br />
  然后我们需要在Hibernate的配|文件中d对UserInfo的相关信息,在UserInfo.hbm上选择?b>Synchronizer—Add Mapping Reference”。现在我们可以开始编写自qE序逻辑了,代码可以写在org.bromon.zizz.pojo.dao. UserInfoDAO中,q个cȝ代码不会被插件修攏V我们首先创Z条新的记录,在该cM加入一个mainҎQ?br />
public static void main(String args[])
{
       
try
       
{
           _RootDAO.initialize();
           UserInfoDAO uid
=new UserInfoDAO();
           
           org.bromon.zizz.pojo.UserInfo ui
=new org.bromon.zizz.pojo.UserInfo();
           ui.setName(
"bromon");
           ui.setPassword(
"123");
           
           uid.save(ui);
           
       }
catch(Exception e)
       
{
           e.printStackTrace();
       }

}

  可以看出Q插件已l把session操作和事务操作都装h了,我们的代码工作得C极大的简化。而且我们可以利用插g自带的Hibernate editor来编辑hbm文gQ非常方便,我们需要把ID的生成方式改为“identity”:



  要让q个E序正常q行Q还需要对配置文ghibernate.cfg.xml作一些修攏V值得注意的是Q请不要在该插g以外的环境中修改配置文gQ比如用DreamWeaver之类的工L辑文ӞQ否则会造成pȝ与资源不同步的错误,q可能是插g的一个bug。用Eclipse的?b>文本~辑?/b>”打开该文Ӟ其中有如下的内容Q?/div>
<property name="hibernate.transaction.factory_class">
net.sf.hibernate.transaction.JTATransactionFactory
</property>
<property name="jta.UserTransaction">
java:comp/UserTransaction
</property>
  ׃在我们的例子中,q没有用JTA来控制事务,所以需要将上面的内Ҏ释掉Q程序才能正常运行?br />
  OKQRun一下,可以看到数据已经被保存到数据库?br />
  如果在实际开发工作中Q需要重新设计数据表l构Q那么只需要在.hbm文g中做相应的修改,然后执行?b>Synchronize and Overwrite”的操作Q插件会重新生成存根文gQ我们只需要修改程序逻辑可以了Q非常方ѝ有了这L功能插gQ我们可以极大的从配|文件的~写、查错中解脱出来Q从而提高我们的工作效率


iLxyfOreVEr 2006-03-18 15:54 发表评论
]]> 图解利用Eclipse3+Lomboz3+Tomcat开发JSP http://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35944.htmliLxyfOreVEriLxyfOreVErSat, 18 Mar 2006 07:21:00 GMThttp://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35944.htmlhttp://www.aygfsteel.com/iLxyfOeVEr/comments/35944.htmlhttp://www.aygfsteel.com/iLxyfOeVEr/archive/2006/03/18/35944.html#Feedback0http://www.aygfsteel.com/iLxyfOeVEr/comments/commentRss/35944.htmlhttp://www.aygfsteel.com/iLxyfOeVEr/services/trackbacks/35944.html 图解利用Eclipse3+Lomboz3+Tomcat开发JSP Q-1.环境 我最q看了不有关Lomboz的资料,发现有不网友都对这个eclipse插g感兴,但苦于入门。感觉有必要把自己学习Lomboz的心得写下来Q以便后来h不至于走太多的弯路?
 

一.环境需求:

1. Lomboz的相兌?/strong>
   ׃q篇文章重点是放在Lomboz上,所以有必要一下。lomboz是Eclipse的一个J2EE的插Ӟ它将很多Java应用服务器、J2EElg和Web应用开发集成到Eclipse中,可以帮助Java开发者用Eclipse建立、测试、部|J2EE应用?/div>
   
下蝲Q?a >http://forge.objectweb.org/project/showfiles.php?group_id=97
 
论坛Q?a >http://forge.objectweb.org/forum/forum.php?forum_id=360
 
教程Q?a >http://www.objectlearn.com/support/docs/index.jsp
  
  注意 下蝲的时候需要下载两个文Ӟ一个是Lomboz3.0.1 一个是emf-sdo-runtime-2.0.0.zipQ这个程序也可以从eclipe官方|站上下载最新版?/font>http://www.eclipse.org/emf/Q?/font>
 
   教程和论坛都是属于Lomboz官方|站的,虽然都是英文资料Q但是对于学习Lomboz有很大的帮助。对于想真正了解Lomboz的话Q当然最好是直接看源码了Q,英文又过得去Q还是应该看看教E和论坛上的资料?/div>
 
 
2. 我的配置
   Winxp SP1Q?/div>
   JDK 1.4.2-04  可以从SUN官方|站下蝲
   Eclipse 3.0.1 和语a?
   Tomcat 5.0.28
   Lomboz 3.0.1
 
3. 目录l构
   F:\j2sdk                    JDK目录 
   D:\eclipse                  Eclipse 目录
   F:\java\jakarta-tomcat      Tomcat 5.0.28 目录
   D:\plug-in\lomboz.301       Lomboz目录Q我q里是采用links方式安装的,
    参考  ?a id="_e1302d344fa3d857_HomePageDays_DaysList__ctl3_DayItem_DayList__ctl0_TitleUrl" >Eclipse基础Q-使用links方式安装Eclipse插gQ?/div>
  
讄环境变量  参考?Eclipse基础Q-java环境变量讄
 
安装elcipse及语a包?  参考?Eclipse基础Q-安装eclipse及语a?/font>
 
 

 ? 配置开发环?/h4>
  打开EclipseQ点击菜单“窗口?>首选项Q以下都在“首选项”中配置Q?/div>
  1. Java->构徏路径
   
 
   2. Lomboz
     
 
   3.Lomboz->Server Definitions->Properties
  
 
   
4. 切换C界面Q点几Z窗口”菜?>定制透视?/div>
  
 
  切换到“命令”菜?/div>
 
 
 5. 配置后的效果
 
 
注意Q?/div>
    ׃Tomcat 5.0.27?.0.28版本在Lomboz中无法启动,故需要一些修攏V?/div>
    扑ֈ“D:\plug-in\lomboz.301\eclipse\plugins\com.objectlearn.jdt.j2ee_3.0.1\servers”目录(我采用的是links安装方式Q;如果采用的是直接把Lomboz解压到Eclipse来安装的Q那么要扑ֈ“eclipse的安装目录\plugins\com.objectlearn.jdt.j2ee_3.0.1\servers”目录?/div>
    q个目录里面都是相关服务器的配置文gQ如果有些配|文件用不到Q尽删除,避免造成视觉疲劳?/div>
如,我只留下了几个文件?/div>
   
 
 
  先把“tomcat50x.server”文件改名ؓ“tomcat5028.server”(我用的是5.0.28版本Q,看v来方ѝ?/div>
打开q个文gQ做如下修改Q?/div>
 
 
  
   最后保存即可?br />

图解利用Eclipse3+Lomboz3+Tomcat开发JSP Q-2.~辑一个JSP实例

? ~辑一个JSP实例 

上一节内容(环境讄Q:图解利用Eclipse3+Lomboz3+Tomcat开发JSP Q-1.环境

 1.新徏一个“Lomboz J2EE Project”。 在“项目名U”中填入“JspSample”,点击“下一步”,再点几Z下一步”?/div>
 
 
  
  2.填写Web模块
 
 
  3.增加一个服务器Q可以增加多个服务器Q其中有一个是默认的)
  
 
  4. 效果如下Q?/div>
   
  
  5.双击打开index.jspQ点几ZLomboz View”按钮,如下图:
  
  
  先点几Z启动服务器”按钮(或在“Apache Tomcat v5.0.28”右击,选择“Run Server”)Q如果一切正常,在“控制台H口”会输出“信息:Server startup in ... ms”?/div>
 
  然后切换到“Lomboz J2EE View”栏Q选中“demoWeb”,点击“部|模块”按钮,可以看到输出信息Q?/div>
大致内容是生成了一个“demoWeb.war”文Ӟq且部v到“F:\java\jakarta-tomcat\webapps”(q是我的电脑上的Tomcat目录Q的目录中,接着QTomcat服务器自动解压ƈ初始化“demoWeb.war”?/div>
 
   打开览器,在地址栏中输入“http://127.0.0.1:8080/demoWeb/index.jsp?/div>
   OKQ?你应该可以看C下界面:
  
 
 也可以右几Z包资源理器”中的“demoWeb”文件夹Q然后采用以下步骤,如图Q?/div>
 
 
 
   6.在“index.jsp”中增加一条语句?lt;%   out.println("Use JSP!");  %>?然后保存Q点几Z部|模块”,h览器,应该可以看到以下界面Q?/div>
 
   
 
   
 
  7. 再增加以下语句,保存Q部|模块,h览器?/div>
  
   
  
q篇文章主要介绍如何利用Lomboz开发JSTL和ELQ最好先参考我的上一文?a >《图解利用Eclipse3.0.1 + Lomboz3.0.1 + Tomcat5.0.28开发JSP?/font>Q环境配|与它类|q里从略?
 
1. 需要的软g
   JSTL 1.1.1
 
 
   XML Buddy  
   主页        http://xmlbuddy.com          下蝲
  
   q是一个eclipse插gQ可以帮助编辑xml文gQ可选安装)?/div>
   安装插gQ参?a id="_e1302d344fa3d857_HomePageDays_DaysList__ctl3_DayItem_DayList__ctl0_TitleUrl" >Eclipse基础Q-使用links方式安装Eclipse插g
 
 
2.环境配置
 
新徏一个Lomboz J2EE ProjectQ?/div>
  工程名称Q“JSTL Sample”;
  填写Web ModulesQ“demoWeb2”;
  d的ServersQ“Tomcat 5.0.28”,
 ׃我的上篇文章对eclipse新徏工程介绍的比较详l,q里从简?/div>
 
 
目录l构
   F:\j2sdk                    JDK目录 
   D:\eclipse                  Eclipse 目录
   F:\java\jakarta-tomcat      Tomcat 5.0.28 目录
   D:\plug-in\lomboz.301       Lomboz目录Q我q里是采用links方式安装的,
   D:\java\jstl                jakarta-taglibs-standard-1.1.1.zip的解压目?/div>
   D:\eclipse\workspace\JSTL Sample     刚徏立的JSTL Sample工程目录
    Ҏ安装的YӞ自己作个合适的配置?/strong>
 
 
3. 加入库文?/font>
 
   扑ֈjslt\lib目录Q复制其中的jstl.jar、standard.jar文g到刚建立的“JSTL Sample”工E目录中的lib目录Q这里ؓ“D:\eclipse\workspace\JSTL Sample\demoWeb2\WEB-INF\lib”)?/div>
 
   扑ֈjstl\tld目录Q复制其中的c.tld文g到“JSTL Sample”目录中的“\demoWeb2\WEB-INF”目录?/div>
 
  hdemoWeb2目录Q展开如图Q可以看到加入的三个文g已经昄出来了:
 
 
 
4.修改E序
 

注意

׃Lomboz只支持JSTL1.1以上版本QEL 是在JSP 2.0 中正式纳入规范的Q所以web.xml 应该使用2.4的SchemaQ?而不?.3的DTD?font size="2">   
 
  
打开WEB-INF目录下的web.xml文gQ修改如下: 

WEB-INF/web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
    version="2.4">
 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
 <error-page>
  <error-code>404</error-code>
  <location>/error.jsp</location>
 </error-page>
</web-app>
 

注意

如果你安装了XMLBuddy插gQƈ且是用它来打开“web.xml”文Ӟ有可能会出现以下的错误“Cannot find the declaration of the element 'web-app'”,关闭“web.xml”文Ӟ错误消失。它不妨程序的q行。?/font>  
 
 
下面修改index.jsp文g

demoWeb2/index.jsp

<%@page contentType="text/html;charset=gbk" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
 
<html>
  <head>
    <title>Count to 10 Example (using JSTL and scriptlet)</title>
  </head>
  <body>
 
    <%-- q是利用JSTL 打印1?0 --%>
      利用JSTL 打印1?0 <p>
    <c:forEach var="i" begin="1" end="10" step="1">
      <c:out value="${i}" />
      <br/>
    </c:forEach>
   
    <%-- q是利用JSP的scriptlet 打印1?0 --%>
    <p>    利用JSP的scriptlet 打印1?0   <p>
    <%  for(int i=1;i<=10;i++)  {%>
      <%=i%><br/>
    <%  } %>
  
 </body>
</html>
 
 
注意
在Lomboz中,只支持JSTL 1.1版本Q所以其核心标签库的uri默认为http://java.sun.com/jsp/jstl/core?
因ؓJSTL 1.1同时支持JSTL 1.0?.1Q所以假若核心标{ֺ的uri为http://java.sun.com/jstl/coreQ则会使用到JSTL 1.0的核心标{ֺQ此时Lomboz出现错误?/div>
 
 
5.q行E序
   保存文g后,部vdemoWeb2模块Q运行服务器Q然后在览器窗口输入地址Q?/font>
 
 OK! 应该可以看到如下界面Q?/font>
q篇文章主要介绍如何利用Lomboz开发JSTL和ELQ最好先参考我的以前的文章《图解利用Eclipse3.0.1 + Lomboz3.0.1 + Tomcat5.0.28开发JSP?/font>Q环境配|与它类|q里从略?
一. 需要的软g
   XML Buddy  
   主页        http://xmlbuddy.com        下蝲
   q是一个eclipse插gQ可以帮助编辑xml文g?/div>
 
 
? 环境配置
 
1.新徏一个Lomboz J2EE ProjectQ?/div>
  工程名称Q“Servlet Sample”;
  填写Web ModulesQ“servletWeb”;
  d的ServersQ“Tomcat 5.0.28”,
 ׃我的上篇文章对eclipse新徏工程介绍的比较详l,q里从简?/div>
 
 
2.目录l构
   F:\j2sdk                    JDK目录 
   D:\eclipse                  Eclipse 目录
   F:\java\jakarta-tomcat      Tomcat 5.0.28 目录
   D:\plug-in\lomboz.301       Lomboz目录Q我q里是采用links方式安装的,
   D:\eclipse\workspace\Servlet Sample     刚徏立的JSTL Sample工程目录
    Ҏ安装的YӞ自己作个合适的配置?/strong>
 
 
 3.对xml文gq行自动格式?/div>
   Eclipseȝ?>H口->首选项->XMLBuddy->FormattingQ勾选右栏中的两个单选框?/div>

   

 

4.Z使Lomboz自动向配|文件web.xml中添加参敎ͼ需要修改web.xml的名U空_由原先的“web-app_2_3.dtd”换成“web-app_2_4.xsd”?/p>

 打开web.xml文gQ修改后如下Q?

Servlet Sample\servletWeb\WEB-INF\web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
    version="2.4">
   
 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
 <error-page>
  <error-code>404</error-code>
  <location>/error.jsp</location>
 </error-page>
</web-app>  

 

 ? ~写实例

  一定要把前面的准备工作做好Q才能得到好的效果?/p>

  1. 叛_servletWebQ新Z个Servlet

  

 

 2. 如下填写

  

   下一步:

  

 

3.再次打开web.xml文gQ发现参数已l自动添加?

Servlet Sample\servletWeb\WEB-INF\web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
    version="2.4">
   
   
    <servlet>
        <servlet-name>HelloServlet</servlet-name>
        <servlet-class>javamxj.servlet.HelloServlet</servlet-class>
        <init-param>
            <param-name>greeting</param-name>
            <param-value>Hello</param-value>
        </init-param>
        <init-param>
            <param-name>name</param-name>
            <param-value>javamxj blog</param-value>
        </init-param>
    </servlet>
   
    <servlet-mapping>
        <servlet-name>HelloServlet</servlet-name>
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>
   
   
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <error-page>
        <error-code>404</error-code>
        <location>/error.jsp</location>
    </error-page>
   
</web-app>
 
4.修改HelloServlet.javaQ修改如下:

Servlet Sample\src\javamxj\servlet\HelloServlet.java

package javamxj.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * @author javamxj
 *
 * 使用初始化参数在输出H口昄两个字符?br /> * Q”Hello javamxj blog“)Q?br /> * 如果初始化参数没定义Q用缺省字W串
 * Q“Welcome ServletQ”)?br /> * 初始化参数定义在web.xml文g中?br /> *
 */
public class HelloServlet extends HttpServlet {
 private String defaultGreeting;
 private String defaultName;
 public void init(ServletConfig config) throws ServletException {
  //从web.xml中获得初始化参数
  super.init(config);
  
  //获取初始化参敎ͼ如无Q用缺省字W串
  if ((defaultGreeting = getInitParameter("greeting")) == null)
   defaultGreeting = "Welcome";
  if ((defaultName = getInitParameter("name")) == null)
   defaultName = "Servlet!";  
 }
 protected void doGet(HttpServletRequest request,
   HttpServletResponse response) throws ServletException, IOException {
       
  // 首先讄文档cd
        response.setContentType("text/html; charset=GBK");
        // 获取输出?br />        PrintWriter out = response.getWriter();
       
        out.println("<html><head><title>Welcome javamxj Blog!</title></head>");
        out.println("<body><h1>");
        out.println(defaultGreeting +  "    " + defaultName);
        out.println("</h1></body></html>");
 }
}
 
5.保存Q启动服务器Q部|servletWeb模块Q打开览器窗口,输入地址Q?/div>
  如图Q?/div>
 
 
 
6.下面不用初始化参数?/div>
    打开web.xml文gQ如下修改,保存?/div>
   
 
7.  重新部vservletWeb模块Q刷新浏览器H口?/div>
   
   OKQ成功调用默认字W串?/div>


iLxyfOreVEr 2006-03-18 15:21 发表评论
]]> վ֩ģ壺 ǭ| ɽ| | | | | | | ˶| Ρɽ| | | ¹| Ʊ| | | | | | | ӱʡ| ֶ| | п| | | ɽ| ض| | | | ²| ǭ| | Խ| | ֿ| | | ϴ| |