0

私は、mvc 1 を使用して単純な Java Web アプリケーションに取り組んでいます。アプリケーションは、テーブル フォームに挿入されたデータを追加します。jspからデータベースにデータを挿入するクラスである1.Bean 2.Operatorがあります 3.サーブレット 4.jsp

これが豆です

package pk1;


import java.util.*;

public class MissionForm {

    String objet, dateDepart,dateRetour;
    long matricule, numVehicule,numMission ;
    public MissionForm(String objet, String dateDepart, String dateRetour,
            int matricule, int numVehicule,int numMission) {
        super();
        this.objet = objet;
        this.dateDepart = dateDepart;
        this.dateRetour = dateRetour;
        this.matricule = matricule;
        this.numVehicule = numVehicule;
        this.numMission=numMission;
    }
    public String getObjet() {
        return objet;
    }
    public void setObjet(String objet) {
        this.objet = objet;
    }
    public String getDateDepart() {
        return dateDepart;
    }
    public void setDateDepart(String dateDepart) {
        this.dateDepart = dateDepart;
    }
    public String getDateRetour() {
        return dateRetour;
    }
    public void setDateRetour(String dateRetour) {
        this.dateRetour = dateRetour;
    }
    public long getMatricule() {
        return matricule;
    }
    public void setMatricule(long matricule) {
        this.matricule = matricule;
    }
    public long getNumVehicule() {
        return numVehicule;
    }
    public void setNumVehicule(long numVehicule) {
        this.numVehicule = numVehicule;
    }
    public long getNumMission() {
        return numMission;
    }
    public void setNumMission(long numMission) {
        this.numMission = numMission;
    }

}

型付きデータを jsp からデータベースに追加するオペレーター

package pk1;


import java.sql.*;
import java.util.Iterator;
import java.util.Vector;


public class Operateur {

    public Operateur(){}

    //------------------ajouter les Missions------------------------

    public void addMission(String objet,String dateDepart,String dateRetour,long matricule,long numVehicule){
        Connection conn=Utilitaire.getConnection();
        String req="insert into mission (Objet,DateDepart,DateRetour,Matricule,NumVehicule) values(?,?,?,?,?)";
        try {
            PreparedStatement ps=conn.prepareStatement(req); // prepare une instruction ki é parametré ces parametres st representé par les ?
            ps.setString(1,objet);
            ps.setString(2,dateDepart);
            ps.setString(3,dateRetour);
            ps.setLong(4,matricule);
            ps.setLong(5,numVehicule);

            ps.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }   
    }

}

OperatorServlet.java

import pk1.*;



import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.*;
import javax.servlet.*;


import java.io.*;


public class OperateurServlet extends HttpServlet {


        public void doPost(HttpServletRequest request,
                HttpServletResponse response)throws ServletException,IOException{
    //Créer le bean qui va stocker les données de la requête
            MissionForm mf=new MissionForm(null, null, null, 0, 0, 0);

            //Faire appel au modèle pour ajouter une nouvelle mission
            Operateur op=new Operateur();
            if(request.getParameter("addMiss")!=null){
    // Socker les données de la requête dans le bean créé
                mf.setObjet(request.getParameter("objet"));
                mf.setDateDepart(request.getParameter("dateDepart"));
                mf.setDateRetour(request.getParameter("dateRetour"));
                mf.setMatricule(Long.parseLong(request.getParameter("matricule")));
                mf.setNumVehicule(Long.parseLong(request.getParameter("numVehicule")));
                //Sauvegarder l'objet dans la base de données
                op.addMission(mf.getObjet(),mf.getDateDepart(),mf.getDateRetour(),mf.getMatricule(),mf.getNumVehicule());

}

        /* avant de donner la main la page JSP pour afficher
         * enregitrer le bean dans la requête ou la session courante
         */
                    HttpSession session=request.getSession();
                    session.setAttribute("missForm",mf);
        //Faire une redirection vers la vue JSP pour afficher.
                    response.sendRedirect("interface.jsp");     
                }
            public void doGet(HttpServletRequest request,
                    HttpServletResponse response)throws ServletException,IOException{
                    doPost(request,response);
            }
        }

Jsp ビュー

<%@ page language="java" %>
<%@ page import="java.util.*" %>
<%@ page import="pk1.*" %>



<html>
<head>
<title>Ordres de missions</title>
</head>
<body bgcolor="#FFFFFF">

<form method='post' action='operateurservlet'>
 <table border='1' align='center'>
   <tr>
    <td>Année:<input type='text' name='motCle' value=''></td>
    <td><input type='submit' name='chercheCat' value='Chercher'></td>
   </tr>
 </table>
</form>
<form method='get' action='operateurServlet/operateur'>
  <table border='1' align='center'>
    <tr>
      <td>Numero de mission<td>Objet</td><td>Date de depart</td><td>Date de retour</td><td>Agent</td>


    </tr>
    <tr>
    <td></td>
     <td>   <input type='text' name='objet' size='40'></td> 
     <td><input type='text' name='dateDepart'></td>     
     <td><input type='text' name='dateRetour'></td>
     <td><FORM>
                                                                    <SELECT name="nom" size="1">
                                                                                <OPTION>1
                                                                                <OPTION>2
                                                                                <OPTION>3
                                                                                <OPTION>4
                                                                                 <OPTION>5
                                                                    </SELECT>
                                                               </FORM></td>


     <td><input type='submit' value='Ajouter'></td> 




    </tr>

  </table>
</form>

</body>
</html>

追加ボタンをクリックしても、何も起こりません。JSP で何かが機能していないことはわかっていますが、それが何であるかわかりません。ありがとう

4

1 に答える 1

0

あなたのコードを分析すると、私は何かがはっきりしていないことに気づきます(少なくとも私にとっては)

  1. ネストされたFORMを使用するのはなぜですか?

  2. addMissというリクエスト変数の値をチェックしますが、input type = "hidden" name="addMiss"などのようにhtmlで渡さないでください。したがって、変数は常にnullです

これがお役に立てば幸いです

于 2012-09-14T12:54:38.100 に答える