Servlet3.0的创建 &tomcat63342的问题

IDEA的Servlet创建 &tomcat63342的问题

今天下午创建了一个简单的Servlet用于接受客户端表单数据的抓取,但是一开始始终抓不到Servlet,Servlet的路径配置也有问题。
后来看了一下Servlet3.1的特性,才了解不用去web.xml中配置了,以前:`

<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/servlet/HelloWorld</url-pattern>
</servlet-mapping>`

现在直接在创建的servlet.java文件中开头写:

@WebServlet(name = "Servlet1",urlPatterns = {"/weiwei"})

是不是很方便,一句话的事。
我写的html:

<!DOCTYPE html>
<html>
<head>
    <title>TODO supply a title</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form name="form1" action="/weiwei" method="POST">
    1<input type="text" name="id" value="123" size="10" /><br>
    2<input type="text" name="name" value="weiwei" size="10"/><br>
    <input type="submit" value="提交" name="bt1" />
</form>
</body>
</html>

点击提交会传到weiwei的servlet1,然后显示id和name:

package packsvt;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

/**
 * Created by Administrator on 2017/3/1 0001.
 */
@WebServlet(name = "Servlet1",urlPatterns = {"/weiwei"})
public class Servlet1 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
        out.println("<HTML>");
        out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
        out.println("  <BODY>");
        Integer id=Integer.parseInt(request.getParameter("id"));
        String name=request.getParameter("name");
        out.println(id+"<br>");
        out.println(name);
        out.println("  </BODY>");
        out.println("</HTML>");
        out.flush();
        out.close();
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    }
}

h1
s1

下午还遇到一个问题,我的tomcat端口明明是8888,总是会出现localhost:63342,最后发现html或者jsp部署在了web项目下,而没有部署在web项目的web目录下。应该是这样:
这里写图片描述

还有发现在修改servlet路径配置后必须重新启动tomcat,不然光在浏览器中刷新是没用的,他还会是原来的路径名字,这点和NetBeans不一样。

关于创建javaweb项目教程网上有很多,可以自行百度。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
package com.org.servlet3; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Part; /** * @project servlet3.0 * servlet3.0的文件上传 * @date:2012-5-21 *在创建项目的时候首先添加Tomcat7.x的支持,然后把apache-tomcat-7.0.27\conf\web.xml拷贝到项目WEB-INF目录下 *把之前的web.xml覆盖.. 配置留下 <?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app> */ @SuppressWarnings("all") @WebServlet(name="fileUploadServlet",urlPatterns="/fileUploadServlet") @MultipartConfig(maxRequestSize=222222)//设置文件上传大小 public class FileUploadServlet extends HttpServlet { /** *访问 *http://localhost:8080/servlet3.0/ */ protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setCharacterEncoding("utf-8"); Part part=req.getPart("file"); //获取页面的name //System.out.println(part.getName()); System.out.println(System.getProperty("user.dir"));//输出当前的项目存放的路径 String uploadPath=req.getSession().getServletContext().getRealPath("/upload"); System.out.println(uploadPath);//输出上传的文件路径 String value=part.getHeader("content-disposition");//设置头信息 System.out.println(value); String sub=value.substring(value.lastIndexOf("=")+2,value.length()-1);//截取文件 System.out.println("file size: \t"+part.getSize());//文件的大小 part.write(uploadPath+sub);//写入文件 } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值