精华内容
下载资源
问答
  • 编写一个servlet

    2018-03-22 22:29:06
    servlet: 动态的web开发技术,本质就是一个类,运行在服务器端的一个java...编写一个servlet步骤: 1.编写一个类 a.继承HttpServlet b.重写doGet或者doPost方法 2.编写配置文件(web-inf/web.xml) a.注册ser...

    servlet:

        动态的web开发技术,本质就是一个类,运行在服务器端的一个java小程序
        处理业务逻辑,生成动态web内容
    编写一个servlet步骤:

        1.编写一个类

            a.继承HttpServlet
            b.重写doGet或者doPost方法

        2.编写配置文件(web-inf/web.xml)

            a.注册servlet
            b.绑定路径

        3.访问

            http://主机:端口号/项目名/路径

    类代码:

    package com.feizhuweb;

    import java.io.IOException;

    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    //继承HttpServlet类
    public class HelloServlet  extends HttpServlet{

        //重写doGet方法
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            System.out.println("请求已收到......");
        }
    }
     

    web.xml代码:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
     <!-- 1、注册servlet   使用servlet标签
             servlet-name: 给servlet七个名字 全局唯一
             servlet-class: 存servlet的全限定名 赋值过来
         -->
         <servlet>
             <servlet-name>HelloServlet</servlet-name>
             <servlet-class>com.feizhuweb.HelloServlet</servlet-class>
         </servlet>
         <!-- 2、绑定路径 使用servlet-mapping标签
                          servlet-name:使用上面已经起好的名字
                          url-pattern:访问路径 要求:目前必须以"/"开头唯一
          -->
          <servlet-mapping>
               <servlet-name>HelloServlet</servlet-name>
               <url-pattern>/hello</url-pattern>
          </servlet-mapping>
         
    </web-app>

     

     

    备注:由于个人原因,本博客暂停更新。如有问题可联系本人,本人提供技术指导、学习方向、学习路线。本人微信wlp1156107728(添加注明来意)   QQ1156107728(添加注明来意)

    展开全文
  • 手动编写一个Servlet 使用MyEclipse编写一个Servlet Servlet生命周期 路径编写规范 初始化参数 MVC设计模式 企者不立;跨者不行。 自见者不明; 自是者不彰; 自伐者无功; 自矜者不...

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    手动编写一个Servlet

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    使用MyEclipse编写一个Servlet

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    Servlet生命周期

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    路径编写规范

    在这里插入图片描述

    初始化参数

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    MVC设计模式

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    企者不立;跨者不行。
    自见者不明;
    自是者不彰;
    自伐者无功;
    自矜者不长。
    其在道也,曰余食赘行。
    物或恶之,故有道者不处。
    ————《道德经》第二十四章

    展开全文
  • 如何编写一个Servlet

    千次阅读 2019-10-07 21:54:54
    2.怎么按照JavaEE的规范编写一个servlet 关键字 作用 说明 Servlet 接口 有五个抽象方法 GenericServlet 抽象类 有一个抽象方法 HttpServlet 抽象类 没有抽象方法 ...

    Servlet day2

    1.什么是servlet

    servlet本身就是一种java类,这种java类可以提供web形式的访问(Java EE 规范)

    2.怎么按照JavaEE的规范编写一个servlet

    关键字 作用 说明
    Servlet 接口 有五个抽象方法
    GenericServlet 抽象类 有一个抽象方法
    HttpServlet 抽象类 没有抽象方法

    HttpServlet-继承->GenericServlet-实现->Servlet接口

    所以编写一个servlet,有三种方式

    第一种方式:
    写一个类去实现接口servlet
    最重要的是实现接口中的service方法
    这个方法就是我们在访问servlet的时候被tomcat服务器调用的


    第二种方式:
    写一个类去继承父类GenericServlet
    抽象类GenericServlet里面有一个抽象方法service,这个方法是servlet接口中的方法,所以GenericServlet只实现了Servlet接口中的四个抽象方法,还剩下这个service没有实现。同时,GenericServlet类中不但实现了Servlet接口中的init方法,而且还重载了一个无参的init()方法

    源代码中两个init方法的实现:

    			//tomcat服务器默认调用的是这个init方法
    		    @Override
    			public void init(ServletConfig config) throws ServletException {
    				this.config = config;
    				this.init();
    			}
    			//用户需要重写的是这个init()方法
    			public void init() throws ServletException{
    				// NOOP by default
    			}
    

    第三种方式:
    写一个类去继承父类HttpServlet
    HttpServlet是一个抽象类,但是没有任何抽象方法
    HttpServlet类中自定义了很多doXxxx方法,每一种方法都对应了浏览器发送请求的方法,一般常用的浏览器发请求方式为get和post,这两种方式分别对应了这个类中的doGet方法和doPost方法。
    HttpServlet类中,有两个service方法

    		//这个service方法Servlet接口中的
    		void service(ServletRequest req, ServletResponse res){...}
    		
    		//这个service是HttpServlet中重载的方法
    		void service(HttpServletRequest req, HttpServletResponse resp){...}
    		
    
    		源代码中俩个service方法的实现:
    		//实现Servlet接口中的service方法
    		@Override
    		public void service(ServletRequest req, ServletResponse res)
    			throws ServletException, IOException {
    
    			HttpServletRequest  request;
    			HttpServletResponse response;
    
    			try {
    				request = (HttpServletRequest) req;
    				response = (HttpServletResponse) res;
    			} catch (ClassCastException e) {
    				throw new ServletException("non-HTTP request or response");
    			}
    			//调用重载之后的service方法
    			service(request, response);
    		}
    
    		
    		//HttpServlet类中重载的service方法
    		protected void service(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
    
    			String method = req.getMethod();
    
    			if (method.equals(METHOD_GET)) {
    				long lastModified = getLastModified(req);
    				if (lastModified == -1) {
    					// servlet doesn't support if-modified-since, no reason
    					// to go through further expensive logic
    					doGet(req, resp);
    				} else {
    					long ifModifiedSince;
    					try {
    						ifModifiedSince = req.getDateHeader(HEADER_IFMODSINCE);
    					} catch (IllegalArgumentException iae) {
    						// Invalid date header - proceed as if none was set
    						ifModifiedSince = -1;
    					}
    					if (ifModifiedSince < (lastModified / 1000 * 1000)) {
    						// If the servlet mod time is later, call doGet()
    						// Round down to the nearest second for a proper compare
    						// A ifModifiedSince of -1 will always be less
    						maybeSetLastModified(resp, lastModified);
    						doGet(req, resp);
    					} else {
    						resp.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
    					}
    				}
    
    			} else if (method.equals(METHOD_HEAD)) {
    				long lastModified = getLastModified(req);
    				maybeSetLastModified(resp, lastModified);
    				doHead(req, resp);
    
    			} else if (method.equals(METHOD_POST)) {
    				doPost(req, resp);
    
    			} else if (method.equals(METHOD_PUT)) {
    				doPut(req, resp);
    
    			} else if (method.equals(METHOD_DELETE)) {
    				doDelete(req, resp);
    
    			} else if (method.equals(METHOD_OPTIONS)) {
    				doOptions(req,resp);
    
    			} else if (method.equals(METHOD_TRACE)) {
    				doTrace(req,resp);
    
    			} else {
    				//
    				// Note that this means NO servlet supports whatever
    				// method was requested, anywhere on this server.
    				//
    
    				String errMsg = lStrings.getString("http.method_not_implemented");
    				Object[] errArgs = new Object[1];
    				errArgs[0] = method;
    				errMsg = MessageFormat.format(errMsg, errArgs);
    
    				resp.sendError(HttpServletResponse.SC_NOT_IMPLEMENTED, errMsg);
    			}
    		}
    

    3.servlet的生命周期

    3.1 servlet是单例,在web项目运行期间,一个servlet只会创建一个对象

    web项目本身就需要在多线程的环境中运行,tomcat服务器会提供这样的多线程环境,当浏览器发送一个请求,tomcat接收到这个请求之后会开启一个线程去处理这个请求

    在这种环境下,由于servlet是单例,所以在servlet中声明的成员变量,就会有线程安全的问题。

    所以我们应该尽量少的在servlet中定义成员变量

    3.2 默认情况下

    servlet对象是在用户第一次访问它的时候,由tomcat服务器来创建的(可以通过配置进行改变)。

    3.3 servlet对象创建成功之后

    tomcat服务器还会调用servlet里面的init(ServletConfig config),这个有参的init方法会调用无参的init()方法,程序员就可以重写这个无参的init()方法,对创建好的servlet对象进行初始化操作。

    3.4 如果用户要访问这个servlet对象

    那么tomcat服务器会调用这个servlet对象中的service方法,只不过service方法中又进行了方法的层层调用,最后调用到了我们重写的doGet或者是doPost方法

    3.5 当servlet对象被销毁的时候

    tomcat服务器会调用servlet里面的destory方法,程序员就可以重写这个方法,表示当对象销毁的时候需要做哪些额外的处理
    servlet对象被销毁的情况
    1.服务器【正常】关闭的时候
    2.服务器重新加载web项目的时候(reloading)

    3.6 可以通过修改web.xml文件中的配置,去改变servlet对象创建的时间

    只要在<servlet>标签中,添加一个子标签<load-on-startup>就可以了
    <load-on-startup>标签表示当前这个servlet需要在启动tomcat服务器期间就被创建出来

    <load-on-startup>标签里面需要放一个正整数,数值的大小可以决定servlet对象被创建的先后顺序,数值越小就越先被创建。(如果有多个servlet对象需要在tomcat启动期间被创建的话)

    4.Servlet接口中的方法(共有五个方法)

    	//初始化servlet对象的时候被调用
    	void 	init(ServletConfig config)
    
    	//销毁servlet对象的时候被调用
    	void 	destroy()
    
    	//访问servlet对象的时候被调用
    	void 	service(ServletRequest req, ServletResponse res)
    	
    	//返回servlet相关信息,比如作者、版本、版权等
    	//父类中(GenericServlet)默认返回一个空字符串 ""
    	//如果需要的话,程序员可以自己重写这个方法
    	String 	getServletInfo()
    
    	//返回ServletConfig对象
    	ServletConfig 	getServletConfig()
    

    5.ServletConfig接口中的方法(共有四个方法)

    ServletConfig接口的实现类对象,表示一个servlet在web.xml文件中的配置信息

    	//返回servlet在web.xml文件中所配置的名字
    	//也就是<servlet-name>这个标签中的值
    	String 	getServletName()
    
    	//获得在web.xml中所配置的指定名字的参数值
    	//在web.xml可以通过<init-param>标签给servlet传参
    	String 	getInitParameter(String name)
    
    	//获得给当前servlet传的所有参数的名字
    	Enumeration 	getInitParameterNames()
    
    	//获得ServletContext类型对象
    	//ServletContext是web项目中非常重要的一个类型对象
    	ServletContext 	getServletContext()
    

    6.servlet的访问

    使用web.xml文件里面的这个<url-pattern>标签映射的路径,来访问servlet

    6.1 在浏览器的地址栏中,直接输入servlet映射的路径来访问

    这时候是get方式的访问,servlet中的doGet方法最终会被调用

    6.2 在页面中,可以使用超链接来访问servlet

    这时候是get方式的访问,servlet中的doGet方法最终会被调用

    6.3 在页面中,可以使用表单发送请求去访问servlet

    这时候默认情况下是get方式访问,但是可以通过表单里的属性值进行设置为get或者post方式

    6.4 将来还可以使用javascript或者在ajax中发请求访问servlet

    这个时候也可以进行设置使用get方式还是post方式进行访问servlet

    6.5 其他的情况:

    还可以使用标签语言来访问servlet

    7.get方式的访问和post方式的访问

    get方式访问
    浏览器地址栏直接输入地址访问
    超链接访问
    <image src="">访问图片
    外部js文件的引入
    外部css文件的引入
    表单提交数据method=“get”
    在javascript代码中访问
    在ajax中访问
    使用jsp相关标签访问


    post方式访问
    表单提交数据method=“post”
    ajax中设置本次请求为post方式


    在http协议规范中,定义了四种访问方式(常见的)
    get(查) post(改) put(增) delete(删)


    http协议规范下的请求格式(分为四部分)
    1部分: 请求行
    2部分: 请求头部/消息报头
    3部分: \r\n
    4部分: 请求正文


    get方式传参数 参数在uri后面(uri和url的区别)
    GET /hello.html?name=tom HTTP1.1
    key: value
    key: value
    key: value

    \r\n


    post方式传参 参数在请求正文中
    POST /hello.html HTTP1.1
    key: value
    key: value
    key: value

    \r\n
    name=tom


    • get和post的【传参】的安全性
      get方式的参数由于是在地址栏中显示的,所以安全性低一些,post传参的时候参数在请求正文中,相对会安全一些。但是真正重要的数据在传的过程中还会更换协议http–>https,比如在网上支付的过程中

    • get和post在传参过程中参数长度的限制
      get方式传参,参数长度是要看浏览器对地址栏中字符长度的限制,也就是要看浏览器对url地址的长度限制,我们只是把参数放到url后面了。url?参数=值
      post方式参数,参数长度是要看服务器一次性最多能够接受并且处理多少数据

    8.在servlet中,接受客户端传的参数

    不管客户端是post方式还是get方式传参,只是参数存放的位置在传输过程有所变化,但是对于servlet接收参数来讲,俩种情况都是一样的接收

    下面的测试是在这样的传参中进行的
    http://127.0.0.1:8989/web_servlet/ParamServlet?name=tom&age=20&like=0&like=1

    8.1 接收单一的值(一个参数名对应一个值)

    		String name = request.getParameter("name");
    		String age = request.getParameter("age");
    		System.out.println(name);
    		System.out.println(age);
    

    8.2 一个参数名对应多个值(比如多选框)

    		String[] like = request.getParameterValues("like");
    		System.out.println(Arrays.toString(like));
    

    8.3 获得本次传参中的所有参数名

    		Enumeration<String> names = request.getParameterNames();
    		while(names.hasMoreElements()){
    			String str = names.nextElement();
    			System.out.println(str);
    		}
    
    	打印结果:
    	name
    	age
    	like
    

    8.4 获得本次传参中的所有参数及对应的值

    		Map<String, String[]> map = request.getParameterMap();
    		for(String key:map.keySet()){
    			System.out.println(key+" : "+Arrays.toString(map.get(key)));
    		}
    
    	打印结果:
    	name : [tom]
    	age  : [20]
    	like : [0, 1]
    

    9.客户端传参过程中,出现中文乱码

    9.1 get方式传参,中文乱码

    需要在tomcat服务器中server.xml文件中进行配置

    	在<Connector>中加入新的属性URIEncoding="XXX"
    	<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8989" protocol="HTTP/1.1" redirectPort="8443"/>
    

    9.2 post方式传参,中文乱码

    在使用request获取参数【之前】,先把request中的编码进行设置

    		request.setCharacterEncoding("UTF-8");
    		String name = request.getParameter("name");
    		System.out.println(name);
    

    9.3 servlet中使用io流写数据到浏览器,浏览器里面显示中文乱码

    http协议规范中响应的格式为:
    1部分 响应状态行
    2部分 响应头部/消息报头
    3部分 \r\n
    4部分 响应正文


    如果响应头部信息中没有设置编码,那么浏览器会默认使用简体中文(GBK)来解析响应中的内容


    所以在使用io流之前,需要设置一下response中的编码,同时还要告诉浏览器本次响应内容的编码是什么
    //设置response中的编码为UTF-8
    response.setCharacterEncoding(“UTF-8”);
    //设置响应头部,告诉浏览器响应内容编码为utf-8
    response.setContentType(“text/html;charset=utf-8”);

    9.4 Unicode(字符集)和UTF-8(编码规则)

    Unicode符号范围 | UTF-8编码方式
    十六进制 二进制
    0000 0000-0000 007F | 0xxxxxxx
    0000 0080-0000 07FF | 110xxxxx 10xxxxxx
    0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
    0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

    展开全文
  • 文章目录JavaWeb——编写一个Servlet程序1.Servlet简介2.HelloServlrt1.建一个普通的Maven项目2.建一个子项目3.Maven环境优化4.编写一个Servlrt程序编写Servlet映射配置Tomcat启动Tomcat服务器测试 JavaWeb——编写...

    JavaWeb——编写一个Servlet程序

    1.Servlet简介

    • Servlet是Sun公司开发的用于交互式地浏览和生成数据,生成动态Web的技术。

    • 狭义的Servlet是指Java语言实现的一个接口

    • 但一般情况下,我们把实现了Servlet接口的Java程序叫做Servlet

    • 开发Servlet程序的两个步骤:

    • 编写一个类,实现Servlet接口

    • 把开发好的Java类部署到web服务器中

    • Servlet 通常情况下与使用 CGI(Common Gateway Interface,公共网关接口)实现的程序可以达到异曲同工的效果。但是相比于 CGI,Servlet 有以下几点优势:

      • 性能明显更好。
      • Servlet 在 Web 服务器的地址空间内执行。这样它就没有必要再创建一个单独的进程来处理每个客户端请求。
      • Servlet 是独立于平台的,因为它们是用 Java 编写的。
      • 服务器上的 Java 安全管理器执行了一系列限制,以保护服务器计算机上的资源。因此,Servlet 是可信的。
      • Java 类库的全部功能对 Servlet 来说都是可用的。它可以通过 sockets 和 RMI 机制与 applets、数据库或其他软件进行交互。

    2.HelloServlrt

    1.建一个普通的Maven项目

    建一个普通的Maven项目,作为父项目,并删掉里面的src目录

    点我查看建立方法

    在主项目里面添加maven依赖:

     <dependencies>
           <dependency>
               <groupId>javax.servlet</groupId>
               <artifactId>javax.servlet-api</artifactId>
               <version>4.0.1</version>
           </dependency>     
    
           <dependency>
               <groupId>javax.servlet.jsp</groupId>
               <artifactId>javax.servlet.jsp-api</artifactId>
               <version>2.3.3</version>
           </dependency>
       </dependencies>
    

    2.建一个子项目

    在主项目里面建一个子项目(MavenWeb项目)

    右键主项目–>new–>module

    点我查看建立方法

    在这里插入图片描述

    关于Maven中父子项目的理解:

    父项目的核心配置文件中会有

     <modules>
            <module>servlet-01</module>
        </modules>
    

    子项目的核心配置文件中会有

    <parent>
        <artifactId>javaweb-01-servlet</artifactId>
        <groupId>com.cheng</groupId>
        <version>1.0-SNAPSHOT</version>
      </parent>
    

    父项目中的jar包子项目可以直接使用,但子项目中的jar包父项目不能使用

    3.Maven环境优化

    1.替换子项目中web.xml配置文件的内容为最新的

    方法:把web.xml原有的内容都删掉,然后加入下面代码,就替换成功了。

    <?xml version="1.0" encoding="UTF-8"?>
    
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                          http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0"
             metadata-complete="true">
    </web-app>
    

    2.补全maven子项目的结构

    在子项目–>src–>main下建立java文件和resources文件,并做好功能标记

    java文件:放置java源代码

    resources文件:放置一些配置文件
    在这里插入图片描述

    点我查看功能标记方法

    4.编写一个Servlrt程序

    1.编写一个普通类
    2.实现servlet接口

    package com.cheng.servlet;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.io.PrintWriter;
    
    /**
     * @User len
     * @Classname HelloServlet
     * @Project javaweb-01-servlet
     * @Description TODO
     * @Author wpcheng
     * @Create 2021-02-03-11:28
     * @Version 1.0
     */
    public class HelloServlet extends HttpServlet {
    
        //由于get或者post方法只是请求实现的不同方式,可以相互调用,因为业务逻辑都一样
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    
            PrintWriter writer = resp.getWriter();
            writer.println("第一个servlet程序");
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            doGet(req, resp);
        }
    
    }
    
    

    编写Servlet映射

    为什么需要映射:

    我们写的是Java程序,但是要通过浏览器访问,而浏览器需要连接web服务器,所以我们需要在web服务器中注册我们写的Servlet,还需要给它一个路径,以便浏览器访问。

    在web.xml配置文件的web-app标签内添加下面代码

     <!--注册servlet-->
        <servlet>
            <servlet-name>hello</servlet-name>
            <servlet-class>com.cheng.servlet.HelloServlet</servlet-class>
        </servlet>
    <!--Servlet映射的请求路径-->
        <servlet-mapping>
            <servlet-name>hello</servlet-name>
            <url-pattern>/hello</url-pattern>
        </servlet-mapping>
    
    

    配置Tomcat

    配置时要注意项目的发布路径

    在这里插入图片描述

    点我查看Tomcat配置方法

    启动Tomcat服务器测试

    这个是webapp文件下的index.jsp文件的页面

    在这里插入图片描述

    在路径后面加上我们的servlect映射路径后,浏览器就可以访问到Helloservlect的页面了

    在这里插入图片描述

    展开全文
  • Web Project,Java EE版本选2.5,Java版本选1.7在src里新建package,取名com.helloworld.servlet在com.helloworld.servlet里新建class,取名HelloWorldHelloWorld.java代码如下:package com.helloworld.servlet;...
  • 1.首先在src—main—java中创建一个文件夹,在里面定义一个普通类 2.然后实现Servlet接口,Servlet接口默认有两个实现类:HttpServlet,GenericServlet 这里只需要继承HttpServlet就可以了,因为HttpServlet是继承...
  • 手工编写一个servlet

    2018-04-18 23:43:12
    1.继承HttpServlet 2.重写doGet()或者doPost()方法 3.在web.xml中注册Servlet ...在src中,创建servlet页面时, SuperclassSelection为选择父类, 选择HttpServlet-javax.servlet.http 再右
  • Idea编写一个Servlet

    2016-11-08 20:10:51
    首先用idea创建一个project,步骤如下:1.在idea中点击file-new-project,出现如下图所示: 注意勾选上web application,然后点击next2.给project命名为MyFirstServlet,点击finish:3.此时project创建成功,在src...
  • 1.2 使用IDEA编写一个Servlet项目
  • 手动编写一个Servlet类需要以下几步: (1)在D:\apache-tomcat-7.0.77\webapps\目录下新建一个WEB工程FirstProject,目录结构如下: (2)在classes目录下放置Java源文件FirstProject: package it.cn; ...
  • 3.编写servlet的java文件 在main文件夹下创建java文件夹并右键 Mark directory as 选择将java文件夹变为如图所示蓝色文件夹 4.编写HelloServlet public class HelloServlet extends HttpServlet { private static...
  • 首先创建一个ManualServlet.java文件,然后编写程序如下: 然后带包编译,之后会形成一个com文件夹; 接着在tomcat--workapps--创建一个test文件夹--创建一个WEB-INF--创建一个classes文件夹,创建一个lib文件夹...
  • 在src文件夹下创建了一个servlet类,具体代码如图所示 输出结果为: 请大神指点,怎么让它整齐排列啊!
  • 新建一个文件夹FirstServlet,然后在FirstServlet目录下面再建两个文件夹,分别为:WEB-INF和src。最后在WEB-INF下面建一个classes文件夹 第二步:编写Sevlet 在src下面,添加一个文件HelloServlet.java。代码如下...
  • Servlet | 编写一个Servletservlet基本概念:使用IDEA创建第一个Servlet::BLOG 欢迎访问博客http://www.hooc.top/ servlet基本概念: Servlet是使用java语言编写的运行在服务器端的程序。 狭义的Servlet是指java...
  • 手动编写一个servlet部署在tomcat上

    千次阅读 2017-04-14 23:04:46
    编写一个简单的HelloWorld.javapackage com.amarsoft.exercise;import java.io.IOException; import java.io.PrintWriter;import javax.servlet.ServletException; import javax.servlet.ServletRequest; import ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,877
精华内容 3,150
关键字:

编写一个servlet