Eclipseweb开发Word下载.docx
《Eclipseweb开发Word下载.docx》由会员分享,可在线阅读,更多相关《Eclipseweb开发Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
在下载页面选择EclipseIDEforJavaEEDevelopers,注意根据自己的操作系统下载对应的32或64位版本,如下图:
目前是2010.6发行的最新版本3.6版(EclipseHelios太阳神),功能增强的同时也伴随启动更慢。
。
也可点击olderVersions下载旧版本。
3、安装并配置Tomcat服务器
可到http:
//tomcat.apache.org下载Tomcat的最新版本,目前是6.0.28
要安装ApacheTomcat,只需将所下载的文件解压缩到某目录中,可以通过后面说明的办法由Eclipse来启动Tomcat。
为Tomcat配置环境变量
在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:
假设你的jdk安装在c:
\jdk并已经配置了jdk的环境变量
变量名:
JAVA_HOME值:
c:
\jdk
Classpath.;
%JAVA_HOME%\lib\dt.jar;
%JAVA_HOME%\lib\tools.jar
Path%JAVA_HOME%\bin
注:
上述“%JAVA_HOME%”也可以直接写原始路径“c:
\jdk”
安装Tomcat后,需要添加以下环境变量(假定你的tomcat安装在c:
\tomcat):
CATALINA_HOMEc:
\tomcat
CATALINA_BASEc:
\tomcat
然后修改环境变量中的classpath,把tomcat安装目录下的common\lib下的(可以根据实际追加)servlet.jar追加到classpath中去,修改后的classpath如下:
%JAVA_HOME%\lib\tools.jar;
%CATALINA_HOME%\common\lib\servlet.jar;
启动tomcat,双击执行tomcat目录下的bin\startup.bat,如果启动成功,可以在dos窗口看到结果:
保留该dos窗口不要关闭,否则会关闭服务器。
注意:
tomcat服务器默认使用8080端口,如果该端口被占用,则服务器将无法启动。
检查端口占用情况:
可以在dos窗口执行命令:
netstat–ano,则会列出所有使用的端口及占用端口的进程ID:
根据此ID,可以在任务管理器中找到相应进程并将其关闭。
成功启动tomcat后,可在IE中访问http:
//localhost:
8080,如果看到tomcat的欢迎页面的话说明安装成功了。
二、开始一个JSP项目
现在我们不使用任何集成的开发工具,纯手工建立一个开发项目并进行测试。
1、建立自己的jsp项目测试一下
到Tomcat的安装目录的webapps目录,可以看到ROOT,examples,tomcat-docs之类Tomcat自带的的目录;
在webapps目录下新建一个目录,起名叫myapp,这个目录其实就是我们网站的根目录。
myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;
最简单的办法是从root目录中将WEB-INF目录连同其中的web.xml文件一起复制过来。
WEB-INF目录很重要,其实java的Web项目有其固定的目录结构,WEB-INF就是其中重要的一个。
在WEB-INF下新建一个文件web.xml,或将复制来的文件个别内容改一下即可:
<
web-app>
display-name>
MyWebApplication<
/display-name>
description>
Aapplicationfortest.<
/description>
/web-app>
在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:
html>
body>
center>
Nowtimeis:
<
%=newjava.util.Date()%>
/center>
/body>
/html>
重启Tomcat,打开浏览器,输入http:
8080/myapp/index.jsp看到当前时间的话说明就成功了。
如果出错,可能是环境变量配置问题、web.xml文件配置错误、jsp文件书写错误等,特别注意中文字符造成的错误。
2、建立自己的Servlet
1.用你最熟悉的编辑器新建一个servlet程序,文件名为Test.java,文件内容如下:
packagetest;
importjava.io.IOException;
importjava.io.PrintWriter;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
publicclassTestextendsHttpServlet{
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
PrintWriterout=response.getWriter();
out.println("
h1>
Thisisaservlettest.<
/h1>
"
);
out.flush();
}
}
2.编译
将Test.java放在c:
\test下,使用如下命令编译:
C:
\Test>javacTest.java
然后在c:
\Test下会产生一个编译后的servlet文件:
Test.class
3.将结构test\Test.class剪切到
%CATALINA_HOME%\webapps\myapp\WEB-INF\classes下,也就是剪切那个test目录到classes目录下,如果classes目录不存在,就新建一个。
现在webapps\myapp\WEB-INF\classes下有test\Test.class的文件目录结构。
4.修改webapps\myapp\WEB-INF\web.xml,添加servlet和servlet-mapping
编辑后的web.xml如下所示,红色为添加的内容:
?
xmlversion="
1.0"
encoding="
ISO-8859-1"
>
web-appxmlns="
xmlns:
xsi="
http:
//www.w3.org/2001/XMLSchema-instance"
xsi:
schemaLocation="
version="
2.5"
Aapplicationfortest<
servlet>
<
servlet-name>
Test<
/servlet-name>
!
--display-name>
/display-name-->
--description>
AtestServlet<
/description-->
servlet-class>
test.Test<
/servlet-class>
/servlet>
servlet-mapping>
url-pattern>
/Test<
/url-pattern>
/servlet-mapping>
这段话中的servlet这一段声明了你要调用的Servlet,而servlet-mapping则是将声明的servlet"
映射"
到地址/Test上
5.好了,重启动Tomcat,启动浏览器,输入http:
8080/myapp/Test如果看到输出Thisisaservlettest.就说明编写的servlet成功了。
修改了web.xml以及新加了class,都要重启Tomcat
3、关于Java的动态网页技术
我们刚才分别运行了JSP文件和servlet文件,都可以显示一个页面,那么它们有什么区别及联系?
由servlet文件看,其实本质上就是一个java的类,只不过继承了HttpServlet:
publicclassTestextendsHttpServlet
由于是类文件,因此需要编译后才可以执行。
还可以看到我们最后看到的页面,实际是用PrintWriter类的println方法写到页面上去的:
PrintWriterout=response.getWriter();
好像这样有点笨哦。
:
(
后来,java又推出了jsp技术,我们可以看到,实际上jsp就是在html文档的基础上,用<
%.....%>
的方式插入了java代码:
这些代码是在服务器端运行的,最后在浏览器中显示的还是纯html标记。
这样的好处是开发变得简单了,所以jsp是java极力推广的技术,即采用JSP+JavaBen的开发模式。
缺点:
JSP的代码混在一起,太乱!
关于JavaBen:
按正规的解释是封装好便于重用的java组件,其实没那么神秘,你现在就将它们理解成普通的java类好了。
目前的主流模式:
大家并没有因此抛弃servlet,反而为它找到的新的应用,目前一般采用JSP+servlet+JavaBen的开发模式,让它们各负其责。
JSP:
负责表现层,极端的公司甚至不许在页面中插入java代码。
servlet:
作为控制器,负责页面之间的跳转。
如果你们有学习了struts的同学,可以更好地理解这点。
JavaBen:
负责具体功能的处理与实现,例如我们业务逻辑层,数据访问层的代码。
4、关于Web.xml文件
是我们网站的配置文件,其中包含很多配置标记,我们这里不过多讲解,目前能掌握servlet的映射配置即可。
另外这个文件是必需的,也不要移动位置。
三、用Eclipse+tomcat开发JSP项目
我们在Eclipse中将刚才的项目进行重复一遍。
1、新建项目:
从EclipseIDE,选择File>
New>
Project查看项目向导。
在Wizards框,输入Web,而NewProject窗口会过滤向导以只显示匹配的那些项。
利用这种方法可以很容易找到向导,而无需遍历每一项。
从列表中选择DynamicWebProject(当然也可用StandardWebProjectWizard来建立静态HTMLWeb项目,专为静态页面而设计的Web服务器开销更少,且专为此目的作了优化)。
在TargetRuntime下,可以看到<
None>
,如图4所示,由于您尚未为ApacheTomcat创建运行库,所以需要单击New打开NewTargetRuntimeWizard。
从Apache文件夹中选择ApacheTomcatVX.X,选一个本地安装的合适版本。
如图5所示,然后单击Next。
图4.创建一个新的动态Web项目
图5.创建一个新的服务器运行库
Next后,单击Browse来定位ApacheTomcat的安装目录,找到有效目录之后,单击Finish创建运行库配置。
图6.定义服务器位置
然后会让您选择是否想要转换到J2EEPerspective(J2EE视图)。
一般总是选择是,因为这个透视图包含了一些便于web开发的窗口,比如Servers视图,可以在eclipse中直接启动和停止Tomcat服务器。
单击Next。
系统提问您是否想要向服务器添加项目。
一般项目会自动添加上,直接单击Next直到结束即可完成对项目的建立。
图8.向服务器添加项目
现在,Servers视图包含了Tomcat,且其下还包含项目。
图9.Servers视图中的Tomcat服务器
你现在可以展开左侧的项目管理器,看看项目的目录结构及导入的文件。
2、在项目中创建jsp示例页面
通过选择File>
Other创建新的JSP文件,或者右键单击项目名称,并选择New>
JSP。
确保父目录是WebContent,并将此文件命名为index.jsp。
单击Finish使用默认模板创建页面。
然后将刚才的jsp文件的内容复制过来,当然你也可以直接将文件复制到项目的WebContent目录中。
启动eclipse中内置的tomcat服务器,然后在index.jsp文件右键菜单选“runonserver”,如果成功运行,说明配置正确。
问题:
页面的中文出现乱码
如果是jsp文件,在最上面第一行加上下列语句:
%@pagecontentType="
text/html;
charset=utf-8"
%>
如果是html页面,字符集设置在<
head>
/head>
标签之中插入:
metahttp-equiv="
Content-Type"
content="
charset=utf-8"
如果是servlet文件,则比较麻烦。
servlet在tomcat下对中文的处理很不好,不同版本的tomcat也有差异,一般在doPost方法的第一句加上:
request.setCharacterEncoding("
utf-8"
但是有时仍然有问题,特别涉及到数据库访问时,和数据库中文编码之间有差异时,更为头疼。
因时间关系这里不对中文问题深入讨论。
3、建立servlet文件
可以在项目中建立Javaservlet。
要为测试的目的而快速创建一个servlet,可以使用ServletWizard,方法是右键单击ProjectExplorer视图中的动态Web项目并选择New>
Other。
在Web文件夹下,选择Servlet,然后按步骤进行。
注意,不要直接把刚才的Test.java文件复制到项目中,这样路径会不一致,我们可以先建立文件,在把内容复制过来。
另外,我们这样建立Servlet时,eclipse会自动为我们更新web.xml文件,当然你也许要根据自己的情况再做修改。
由于Servlet需要编译后执行,另外也更新了web.xml,因此需要重新启动tomcat服务器。
练习:
建立一个项目,将你们的登录页面(可以就用html文件)添加进来并能正确运行。
再写一个Servlet,登录页面提交到这个Servlet后,对密码进行验证(先不连数据库,模拟验证一下即可),并显示验证结果。