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页面,而且将数据插入数据库。

解决方案 »

  1.   

    把web.xml中内容发出来看下
    顺带index.jsp发全一点........
      

  2.   

    <?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>
      

  3.   

    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或者另一个新页面。
      

  4.   

    哦,我忘了,我后面还调用了dopost方法
    public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    doGet(request,response);
    }
    这样应该可以的吧。
      

  5.   

    这个可以。建议楼主使用post。楼主需要两(一)个页面一个servlet就可以搞定了。数据处理在servlet。index.jsp封装数据,show.jsp显示处理结果。
      

  6.   

    <servlet-mapping>
      <servlet-name>AddArticle</servlet-name>
      <url-pattern>/*</url-pattern>
      </servlet-mapping>
    是因为这才访问不到index.jsp的吧。
      

  7.   

    我也感觉是这里有问题   /*一般过滤器采用吧  不要乱写额   改成/AddArticle试试