手工开发Servlet的方式
1、在Tomcat主目录的webapps文件夹下建立一个web应用web1
2、在web1下建立文件夹WEB-INF,在该文件夹中建立web.xml [web.xml可以从 ROOT/WEB-INF/web.xml拷贝]
3、在WEB-INF目录下建立classes目录(Servlet在该目录下开发),建立lib目录
4、在classes目录下开发Servlet
5、在web.xml中配置web.xml
6、编译Servlet文件(编译时需要将servlet-api.jar包加入环境变量classpath中,该jar包在Tomcat主目录的lib文件夹下)
7、运行Tomcat
8、访问Servlet
开发Servlet方法
1、实现Servlet接口
- /**
- 使用实现Servlet接口的方式开发一个Servlet
- 要求:显示当前时间
- */
- package com.pc;
- import javax.servlet.*;
- import javax.servlet.http.*;
- import java.io.*;
- public class Servlet2 implements Servlet{
- // 该方法用于初始化Servlet,就是把该Servlet装载入内存,该方法只会被调用一次
- public void init(ServletConfig config){
- }
- // 得到ServletConfig对象
- public ServletConfig getServletConfig(){
- return ;
- }
- // 该方法是服务方法,业务逻辑代码写在这
- // 该方法每次都会被调用
- public void service(ServletRequest req, ServletResponse res) throws ServletException, java.io.IOException{
- // 在控制台输出
- System.out.println("hello world:" + new java.util.Date().toString());
- // 在浏览器返回
- res.getWriter().println("hello world:" + new java.util.Date().toLocaleString());
- }
- // 该方法得到Servlet配置信息
- public java.lang.String getServletInfo(){
- return ;
- }
- // 销毁该Servlet,从内存中清除,该方法只会被调用一次
- public void destroy(){
- }
- }
PS:不仅要写Servlet文件,还要在web.xml中添加配置信息,配置信息格式如下:
- <!-- servlet部署到web.xml文件,该部署配置可以从examples下拷贝 -->
- <servlet>
- <!--servlet-name 该名字可以自定义,但是默认就使用servlet的名字 -->
- <servlet-name>Servlet2</servlet-name>
- <!--servlet-class要指明该servlet放在那个包下的 -->
- <servlet-class>com.pc.Servlet2</servlet-class>
- </servlet>
- <!-- servlet的映射 -->
- <servlet-mapping>
- <!-- 这个servlet-name要和上面的servlet-name名字一样,这样才能匹配的上 -->
- <servlet-name>Servlet2</servlet-name>
- <!-- url-pattern 这是访问该servlet的资源部分 默认命名规范:就是该servlet的名字-->
- <url-pattern>/Servlet2</url-pattern>
- </servlet-mapping>
PS:
1、在classes文件夹下编译(当然Servlet文件也应该在这里)
javac -encoding UTF-8 -d . Servlet文件名.java
2、不重启更新web应用
首先,在Tomcat主目录的conf文件夹中找到tomcat-users.xml文件,打开它,并在<tomcat-user></tomcat-user>标签中添加如下语句
- <tomcat-users>
- <role rolename="manager-gui"/>
- <user username="tomcat" password="s3cret" roles="manager-gui"/>
- </tomcat-users>
然后,在localhost:8080主界面点击,进入manager界面,找到该应用,点击reload按钮即可。
Servlet与JSP区别
1、JSP在本质上就是SERVLET,但是两者的创建方式不一样.
2、Servlet完全是JAVA程序代码构成,擅长于流程控制和事务处理,通过Servlet来生成动态网页很不直观.
3、SP由HTML代码和JSP标签构成,可以方便地编写动态网页.
因此在实际应用中采用Servlet来控制业务流程,而采用JSP来生成动态网页.在struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层.
1、JSP是Servlet技术的扩展,本质上就是Servlet的简易方式。
2、JSP编译后是“类servlet”。
3、Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。而JSP是Java和HTML组合成一个扩展名为.jsp的文件。
4、JSP侧重于视图,Servlet主要用于控制逻辑。