java web的html中调用servlet怎么显示空白页,点击登录后跳转过LoginServlet,但是页面显示空白。怎么回事?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java web的html中调用servlet怎么显示空白页,点击登录后跳转过LoginServlet,但是页面显示空白。怎么回事?相关的知识,希望对你有一定的参考价值。

package servlets;
import java.io.IOException;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.*;
public class LoginServlet extends HttpServlet

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

doPost(request,response);


public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
String user=req.getParameter("user");
RequestDispatcher rd=null;
if(user!=null&&user.equals("admin"))
req.getSession().setAttribute("login", "true");
rd=req.getRequestDispatcher("/admin.html");
rd.forward(req, resp);
else if(user!=null&&user.equals("common"))
req.getSession().setAttribute("login", "true");
rd=req.getRequestDispatcher("/common.html");
rd.forward(req, resp);

else

resp.sendRedirect("/ch08/login.html");






web的配置
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>servlets.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/servlet/LoginServlet</url-pattern>
</servlet-mapping>
<filter>
<filter-name>LoginValidationFilter</filter-name>
<filter-class>servlets.LoginValidationFilter</filter-class>
</filter>
<filter-mapping>
login.html
<form method="post" action="/ch08/servlet/LoginServlet">
<table bordercolor="blue">
<tr align="center"><td colspan="2">选择用户</td></tr>
<tr align="center"><td width="75%">
<input type="radio" name="user" value="admin">管理员
<input type="radio" name="user" value="common">普通用户
</td>
<td>
<input type="submit" name="login" value="登录">
</td>
</tr>
</table>
</form>

看了你代码路径都没问题。
只是web.xml中的filter没贴完全 看看是否进入了拦截器中。
空白画面一般是指进入了servlet而没有跳转出来,不是路径错误。
参考技术A <servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/servlet/LoginServlet</url-pattern>
</servlet-mapping>

改成
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/ch08/servlet/LoginServlet</url-pattern>
</servlet-mapping>

试试看行不,要不在servlet中的doPost中打印一句话,在点击提交的时候看看有没有打印出来那一句话。
参考技术B caoyunhui73这个回答 就绝对行
你要理解servlet和html两个之间的目录关系,也就是说你要根据html所在目录找到servlet所在目录
参考技术C action="LoginServlet"
<url-pattern>/ch08/servlet/LoginServlet</url-pattern>

java eclipse 创建web project 项目 HTML 怎么连接oracle数据库

用eclipse 创建 web project 项目 然后创建 HTML 做一个东西 需要连接oracle数据库 求大神指教
流程我懂 缺少确切代码 方法

首先静态的html标签是无法直接调用java程序连接数据库的。
下面是实现的几种方法:

第一种方法:
将按钮放到form表单中,当按钮点击时提交表单(或者直接将input的type属性定义成submit),表单可以指向JSP或Servlet,在JSP或Servlet里调用java程序

第二种方法:
在按钮的onclick时间中添加js代码
self.location="url";其中url指向JSP或Servlet

第三种方法:
使用第三方的javascript包,dwr是一个不错的选择:
1、需要准备dwr的jar包,并将之放到lib目录下;
2、修改web.xml文件,添加DWRServlet的映射;
3、配置dwr,即在WEB-INF目录下,添加dwr.xml文件,让dwr知道在运行时给哪些JavaBean生成相应的javascript库;
4、将需要的脚本库引入到html页面中就可以通过dwr的API访问java类了。

第四种方法:
使用MVC框架更简单,以struts为例,可以仿照第一或第二种方法,将url替换成配置文件中配置的地址就能访问java程序了。
参考技术A 老师教的好像html是静态网页,不能连数据库.
你改成jsp.
先导包,链接数据库的jdbc.
<jsp:forward page="sssss"></jsp:forward>
sssss是jsp或者servlet里在sssss中写(如果是servlet,则在它的doGet方法里)
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl", "scott", "tiger");
catch (Exception e) e.printStackTrace();
用pstmt
pstmt = conn.prepareStatement(sqlString);
如果是查询则
rs = pstmt.executeQuery();
每读一行数据之前要用判断rs.next()真假,真,则开始读取.
while (rs.next())
int id = rs.getInt("id");//getString("name");等等

之后要关掉conn,pstmt,rs.
其中会有异常处理,自己按照eclipse的提示,加上trycatch块吧.本回答被提问者和网友采纳
参考技术B 首先要写一个连接数据库类,类里驱动必须指明oracle。再加插入方法。

我也缺少确切需求。

说简单点,你自己查下oracle连接数据库的通用类就可以啦。
参考技术C 用jdbc或者hibernate等等。都可以连接数据库
不明白的可以hi我

以上是关于java web的html中调用servlet怎么显示空白页,点击登录后跳转过LoginServlet,但是页面显示空白。怎么回事?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Web 浏览器中启用 Java

java项目和web项目中的过滤器文件怎么使用?

Java Web应用

Java中Web容器

java web servlet 调用 dao层方法 总出错 !!!!新手求解,多谢!!!

Java Web之Filter