package ch16;import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;public class LoginServlet extends HttpServlet{
protected void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
doPost(request,response);
}
protected void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
response.setContentType("text/html;charset=gb2312");
PrintWriter out=response.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>jdjjjjjlll</title>");
out.println("</head>");
out.println("<body>");
//获取会话对象
HttpSession session=request.getSession();
//从会话对象中读取数据
Boolean isLogin=(Boolean)session.getAttribute("isLogin");
if(isLogin==null){
isLogin=Boolean.FALSE;
}
String user=request.getParameter("user");
String password=request.getParameter("pass");
if(isLogin.booleanValue()){
//从会话对象中读取数据
user=(String)session.getAttribute("user");
Date loginTime=new Date(session.getCreationTime());
out.println("<h2>welcome you,"+user+"!</h2>");
out.println("<h2>your logging time:"+loginTime+"!</h2>");
}else if((user!=null)&&(password!=null)){
//在会话对象中保存数据
session.setAttribute("user",user);
session.setAttribute("isLogin",Boolean.TRUE);
Date loginTime=new Date(session.getCreationTime());
out.println("<h2>welcome you baby,"+user+"!</h2>");
out.println("<h2>your logging time is:"+loginTime+"!</h2>");
}else{
out.println("<h2>please input your personal information</h2>");
out.println("<form method=\"post\" action=\"login\">");
out.println("<input type=\"text\" size=\"30\" name=\"user\" >");
out.println("<input type=\"password\" size=\"30\" name=\"pass\" >");
out.println("<input type=\"submit\" value=\"sure\" >");
out.println("<input type=\"reset\" value=\"reset\">");
out.println("</form>");
}
out.println("</body>");
out.println("</html>");
}
}我的web.xml的配置信息是
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>ch16.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/ch16/login</url-pattern>
</servelt-mapping>
我在eclipse浏览器中访问的路径是:http://localhost:8088/servletpractices/ch16/login 其中8088是我的端口号,肯定没问题,servletpractices是我的包名,也没有问题,但访问后就是会出现404错误,是什么原因呢?
<servlet-name>LoginServlet </servlet-name>
<servlet-class>ch16.LoginServlet </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet </servlet-name>
<url-pattern>/login </url-pattern>
</servelt-mapping>
</servlet-mapping>
明白lz意思了,servletpractices是上下文,说成包我误会了
如果别的地方没错的话,只需要改</servlet-mapping>就可以了,另,注意空格
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>ch16.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>ch16.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/ch16/login</url-pattern>
</servlet-mapping>
今天我运行昨天发帖时的代码,却能够运行了,不知是啥原因,谢谢歌歌们了哦。