我的jsp程序跳过form表单,不显示,而直接执行servlet;新手,每分了,请各位前辈帮个忙!!!
index.jsp页面:<form action="com.blog.servlet.AddArticle" method="post" name="addArticleForm"><div>
<label>标题:</label><input type="text" name="title" id="title"/><br/>
<label>正文:</label><br/><textarea cols="60" rows="20" name="content"></textarea><br/>
<input type="submit" value="提交"/><input type="reset" value="重置"/>
</div></form>
Servlet:
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String title = request.getParameter("title");
String content = request.getParameter("content");
try{
Data data = new Data();
String sql="insert into Article (articleTitle,articleContent) values('"+title+",'"+content+"')";
data.insert(sql);
}catch(Exception e){
e.printStackTrace();
}
}
其中index.jsp页面存放在WebRoot下,Servlet存放在src/com.blog/servlet包下。
问题描述:每次输入http://localhost:8080/Blog/index.jsp,网页直接跳过index.jsp页面,而且将数据插入数据库。 --------------------编程问答-------------------- 把web.xml中内容发出来看下
顺带index.jsp发全一点........ --------------------编程问答-------------------- <?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>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>AddArticle</servlet-name>
<servlet-class>com.blog.servlet.AddArticle</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AddArticle</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
index。jsp 全文:
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.sql.*,com.blog.dao.*,com.blog.domain.*" %>
<form action="com.blog.servlet.AddArticle" method="post" name="addArticleForm"><div>
<label>标题:</label><input type="text" name="title" id="title"/><br/>
<label>正文:</label><br/><textarea cols="60" rows="20" name="content"></textarea><br/>
<input type="submit" value="提交"/><input type="reset" value="重置"/>
</div></form> --------------------编程问答-------------------- Servlet:
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String title = request.getParameter("title");
String content = request.getParameter("content");
try{
Data data = new Data();
String sql="insert into Article (articleTitle,articleContent) values('"+title+",'"+content+"')";
data.insert(sql);
}catch(Exception e){
e.printStackTrace();
}
}
楼主,你的这个应该写到doPost方法里,你的页面中的form使用的是post方法提交。所以你需要在doGet方法中,直接调用doPost 也就是 doGet(HttpServletRequest request, HttpServletResponse){ doPost(request, response);} 在doPost方法中执行后。然后再重新跳转到别的页面,比如show.jsp。你的index.jsp是录入数据的页面,servlet可以再重新跳转到index.jsp或者另一个新页面。 --------------------编程问答-------------------- 哦,我忘了,我后面还调用了dopost方法
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
这样应该可以的吧。 --------------------编程问答--------------------
这个可以。建议楼主使用post。楼主需要两(一)个页面一个servlet就可以搞定了。数据处理在servlet。index.jsp封装数据,show.jsp显示处理结果。 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 我也这么认为 --------------------编程问答-------------------- <servlet-mapping>
<servlet-name>AddArticle</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
是因为这才访问不到index.jsp的吧。 --------------------编程问答-------------------- --------------------编程问答-------------------- 楼上才是正解 --------------------编程问答--------------------
正解 --------------------编程问答--------------------
我也感觉是这里有问题 /*一般过滤器采用吧 不要乱写额 改成/AddArticle试试 --------------------编程问答--------------------
补充:Java , Web 开发