当前位置: 代码迷 >> Java Web开发 >> 在tomcat中公布的一个web应用中,WEB-INF/classes下的class文件加包名和不加包名有什么区别吗
  详细解决方案

在tomcat中公布的一个web应用中,WEB-INF/classes下的class文件加包名和不加包名有什么区别吗

热度:396   发布时间:2016-04-17 13:08:17.0
在tomcat中发布的一个web应用中,WEB-INF/classes下的class文件加包名和不加包名有什么区别吗?
以下是我的java文件代码:
public   class   MyClass{

private   String   name;

public   void   setName(String   name){
this.name   =   name;
}

public   String   getName()   {
return   name;
}
}

jsp中这么用:
<%@   page   language= "java "   pageEncoding= "ISO-8859-1 "   %>

<%
MyClass   c   =   new   MyClass();
%>
提示找不到MyClass这个类。但是我已经把MyClass这个类放到WEB-INF/classes这个目录下了?如果我按加包名那么坐就没问题,这是为什么啊?


------解决方案--------------------
象你这样不加包的话,应该是默认从java.lang包里面加载MyClass这个类
你需要导入, <%@ page import= "MyClass "%> ,试试吧,不成功勿怪
------解决方案--------------------
首先,你要确定WEB-INF/classes下有../../MyClass.class这个文件,然后再JSP中 <%@ page import= "pakagename.MyClass "%>
------解决方案--------------------
在没有包名的情况下,是找不到这个类的.如果有包名的话,那是可以找到了,这个在ide里,经常会警告没有包名的无名类.也不提倡这样做.包名的作用不是为了多写代码,是为了更好地组织你的代码.还是把包名带上吧.
  相关解决方案