servlet总是说找不到类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet总是说找不到类相关的知识,希望对你有一定的参考价值。
这是我写的简单的Servlet类:package com.javaweb.ch10;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ServletDemo extends HttpServlet
/**
*
*/
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
PrintWriter out= response.getWriter();
out.println("This is my first Servlet application!!");
这是我配置的web.xml<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<Servlet>
<servlet-name>ServletDemo</servlet-name>
<servlet-class>com.javaweb.ch10.ServletDemo</servlet-class>
</Servlet>
<Servlet-mapping>
<servlet-name>ServletDemo</servlet-name>
<url-pattern>/ServletDemo</url-pattern>
</Servlet-mapping>
</web-app>
1、你的访问这个Servlet的URL http://localhost:8080/ServletDemo
2、你的项目名,网站目录都要正确,类的位置都要正确,如ServletDemo的位置都要正确。
用IDE,一般是自动完成相关的配置要求。建议用IDE. 参考技术B javabean文件是保存在web-inf文件夹下的classes文件夹下的吗? 参考技术C 确认一下类文件是否在 WEB-INF文件夹下的classes文件夹里
包地址如下 com.javaweb.ch10
我感觉 部署文件结构 存在问题 参考技术D <?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>ServletDemo</servlet-name>
<servlet-class>com.javaweb.ch10.ServletDemo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletDemo</servlet-name>
<url-pattern>/ServletDemo</url-pattern>
</servlet-mapping>
</web-app>
把以上覆盖到web.xml中本回答被提问者和网友采纳
import java.io.*; 怎么没有导入类成功呢?编译的时候报错说找不到输入类。
import java.io.*;
public class demo
public static void main(String []args)
try//输入流 从控制台接受数字
InputStringmReader isr=new InputStringmReader(System.in);
BufferedReader br=new BufferedReader(isr);
//给出提示
System.out.println("请输入第一个数字");
String a1=br.readline();
System.out.println("请输入第一个数字");
String a2=br.readline();
//把string转为float
float num1=Float.parseFloat(a1);
float num2=Float.parseFloat(a2);
if(num1>num2)
System.out.println("第一个大");
if(num1==num2)
System.out.println("相等");
if(num1<num2)
System.out.println("第二个大");
catch(Exception e)
e.printStackTrace();
InputStringmReader
BufferedReader 就是这两个类
难道没有导入成功吗?我的JDK安装成功了啊 环境变量也没有设置错误啊,在dos命令下运行java和javac都正常啊!求高手指点!
改好后 导入包
接着 String a1=br.readLine(); 会报错 把这句话 剪切 粘贴就行了
这是修改后的代码 :
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Testaa
public static void main(String[] args)
try // 输入流 从控制台接受数字
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
// 给出提示
System.out.println("请输入第一个数字");
String a1 = br.readLine();
System.out.println("请输入第二个数字");
String a2 = br.readLine();
// 把string转为float
float num1 = Float.parseFloat(a1);
float num2 = Float.parseFloat(a2);
if (num1 > num2)
System.out.println("第一个大");
if (num1 == num2)
System.out.println("相等");
if (num1 < num2)
System.out.println("第二个大");
catch (Exception e)
e.printStackTrace();
参考技术A 虽然我也是个菜鸟,但你都学到流了,格式在这样写有点。。。。。
别的不说,一眼就看出了 InputStringmReader 这个。 JAVA 有这个类吗?
仔细看看吧! 是 InputStreamReader 不是 InputStringmReader ,而且你这程序最后还少了一个括号。。。。
还有,JAVA有这个方法的 readline(); ? 是readLine() 吧! l 要大写啊!
就这3个地方错了!
总体来说,我觉得你要多看API文档 参考技术B 你的 InputStringmReader 应该为 InputStreamReader ,你的 readline 应该为 readLine
编译通过代码如下
package test1;
import java.io.*;
public class demo
public static void main(String []args)
try//输入流 从控制台接受数字
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
//给出提示
System.out.println("请输入第一个数字");
String a1=br.readLine();
System.out.println("请输入第一个数字");
String a2=br.readLine();
//把string转为float
float num1=Float.parseFloat(a1);
float num2=Float.parseFloat(a2);
if(num1>num2)
System.out.println("第一个大");
if(num1==num2)
System.out.println("相等");
if(num1<num2)
System.out.println("第二个大");
catch(Exception e)
e.printStackTrace();
参考技术C 现在哪里还有人用dos下运行 大多都是IDE工具 你去www.eclipse.org下载一个 eclipse去 啥提示都有了 如果不会用 到网上随便搜个视频教程 学学eclipse怎么用 很简单的。追问
我是在用eclipse 。只是刚开始学习,没有使用那么专业的开发工具,现在用的是记事本。
追答记事本没啥用 你不需要那么努力的记住每一个方法 前期主要学的是概念 还有一些实战 不一定知道内部怎么回事儿 慢慢的 用多了自然就懂了
追问哦,可是这个程序是什么问题呢?如果本身没哟错误,在dos下也应该不会错的啊
追答一般估计就是找不到jar包的原因 你要把异常贴出来 才能帮你解决问题
追问恩,我再回去看看先,谢谢啦
追答别光谢谢 到时采纳答案啊 - -!有问题可以再问 = -!
以上是关于servlet总是说找不到类的主要内容,如果未能解决你的问题,请参考以下文章