javainthinking

          XL的個(gè)性空間和java學(xué)習(xí)之旅

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            13 隨筆 :: 13 文章 :: 20 評(píng)論 :: 1 Trackbacks

          package park.jsp.reportfill;

          import javax.servlet.http.HttpServletRequest;
          import java.sql.ResultSet;
          import java.sql.Statement;
          import java.sql.Connection;
          import java.sql.SQLException;
          import park.jsp.main.ConnectDB;
          import park.jsp.common.TableNewId;
          import javax.servlet.http.HttpSession;
          import java.util.Date;
          import park.jsp.common.DateHandle;

          /**
           * <p>Title: </p>
           * <p>Description:修改和存儲(chǔ)登記卡相關(guān)信息 </p>
           * <p>Copyright: Copyright (c) 2005</p>
           * <p>Company: </p>
           * @author 熊煉
           * @version 1.0
           */

          public class Register_Refer
          {
              /**
               * 此程序需要在scope中額外獲取的參數(shù)有:type(對(duì)象類型)、message(操作類型)、f_emp_name(用戶名)
               * 特別:1.操作類型為modify,需要舊的t_bas_*表中所有可更改參數(shù)   2.對(duì)象類型為動(dòng)植物,則需要f_k,f_s,f_classno,f_py
               * @param request
               * @return String(操作信息字段)
               */
              public static String main(HttpServletRequest request,HttpSession session)
              {
                  Connection conn = null;
                  Statement stmt = null;
                  ResultSet rs = null;
                  try
                  {
                      //連接數(shù)據(jù)庫(kù)
                      conn=ConnectDB.connect();
                      stmt=conn.createStatement();

          //            String f_name, f_k_classname,f_s_classname,f_s_ldm,f_j_classname,f_xx,f_cd,f_layer,
          //            f_ldm,f_bhc,f_fzcs,f_szxz ,f_ms,f_yt,f_area,f_yy,v_message,v_type,v_tablename;
                      String f_name, f_k,f_s,f_classno,f_xx,f_cd,f_layer,f_py,
                      f_ldm,f_bhc,f_fzcs,f_szxz ,f_ms,f_yt,f_area,f_yy,v_message,v_type,v_tablename;
                      v_message = request.getParameter("message"); //判斷消息字段,modify修改,create創(chuàng)建,delete刪除
                      v_type=(String)request.getAttribute("type");//判斷類型(plant植物,animal是動(dòng)物...)

                      //植物不同字段
                      f_ms=request.getParameter("t_ms");
                      f_yt=request.getParameter("t_yt");
                      f_area=request.getParameter("t_area");
                      f_yy=request.getParameter("t_yy");

                      //執(zhí)行數(shù)據(jù)庫(kù)操作
                      String rrSql="";
                      int v_flag=0;//v_flag為數(shù)據(jù)操作是否成功的標(biāo)志,1為成功,0為失敗
                      StringBuffer sb=null;
                      //判斷對(duì)象類型
                      if("animal".equals(v_type))
                      {
                        //獲取t_bas_animal表中的所有字段(除f_id)
                        //獲得不能更改的字段
                        f_name=request.getParameter("t_name");
                        f_k=(String)request.getAttribute("f_k");
                        f_s=(String)request.getAttribute("f_s");
                        f_classno=(String) request.getAttribute("f_j");
                        f_py=(String)request.getAttribute("f_py");
                        f_ldm = request.getParameter("t_ldm");
                        f_xx = request.getParameter("t_xx");
                        f_cd = request.getParameter("t_cd");
                        f_layer = request.getParameter("t_layer");

                        //從form中獲取可以更改的字段,為字段新內(nèi)容
                        f_bhc = request.getParameter("t_bch");
                        f_fzcs = request.getParameter("t_fzcs");
                        f_szxz = request.getParameter("t_szxz");
                        float animal_f_id=0;

                        //判斷操作類型
                        if("create".equals(v_message))
                        {
                          //獲取t_rpt_modify報(bào)表操作表中的相關(guān)字段
                          String f_rpt_no,f_rpt_pid,f_emp_name,f_type,f_new_value,f_ref_date;
                          //獲取表中f_pid字段
                          float rpt_f_id=0;
                          try
                          {
                              rpt_f_id = TableNewId.getTableNewId(stmt,1,"t_rpt_modi",
                                      "f_pid");
                              if(rpt_f_id==0)
                              {
                                 return "<script language=javascript>window.alert('系統(tǒng)錯(cuò)誤,創(chuàng)建失敗!');window.close();</script>";
                              }
                          }
                          catch(SQLException ex)
                          {
                              ex.printStackTrace();
                          }
                          //其余相關(guān)字段
                          f_emp_name=(String) session.getAttribute("f_emp_name");
                          f_type="0";
                          //以逗號(hào)分割連接所有屬性值
                          f_new_value=sb.append(f_name+","+f_k+","+f_s+","+f_classno+","+f_xx+","+f_cd+","+f_layer+","+f_py+","+f_ldm+","+f_bhc+","+f_fzcs+","+f_szxz).toString();
                          f_ref_date=new DateHandle().getDate();
                          //*************************************還有一些字段未獲取***************
                          rrSql="";//插入t_rpt_modi表中的sql語(yǔ)句
                          v_flag=stmt.executeUpdate(rrSql);
                        }
                        else if("modify".equals(v_message))
                        {
                          //獲取t_bas_animal中的f_id
                          animal_f_id=Integer.parseInt((String)request.getAttribute("animal_f_id"));
                          //獲取t_rpt_modify報(bào)表操作表中的相關(guān)字段
                          String f_rpt_no,f_rpt_pid,f_emp_name,f_type,f_old_value,f_new_value,f_ref_date,f_old_bhc,f_old_fzcs,f_old_szxz;
                          float rpt_f_id=0;
                          try
                          {
                            rpt_f_id = park.jsp.common.TableNewId.getTableNewId(stmt, 1, "t_rpt_modi",
                                                                "f_pid");
                            if (rpt_f_id == 0) {
                              return "<script language=javascript>window.alert('系統(tǒng)錯(cuò)誤,創(chuàng)建失敗!');window.close();</script>";
                            }
                          }
                          catch (SQLException ex) {
                            ex.printStackTrace();
                          }
                          f_emp_name=(String) session.getAttribute("f_emp_name");
                          f_type="1";
                          //以逗號(hào)分割連接所有屬性值
                          f_new_value=sb.append(animal_f_id+","+f_name+","+f_k+","+f_s+","+f_classno+","+f_xx+","+f_cd+","+f_layer+","+f_py+","+f_ldm+","+f_bhc+","+f_fzcs+","+f_szxz).toString();
                          f_ref_date=new DateHandle().getDate();
                          //獲取舊動(dòng)物對(duì)應(yīng)的t_bas_animal表中對(duì)應(yīng)的所有值,并以逗號(hào)分割連接,作為f_old_value字段
                          f_old_bhc=(String) request.getAttribute("f_bhc");
                          f_old_fzcs=(String)request.getAttribute("f_fzcs");
                          f_old_szxz=(String) request.getAttribute("f_szxz");
                          f_old_value=sb.append(animal_f_id+","+f_name+","+f_k+","+f_s+","+f_classno+","+f_xx+","+f_cd+","+f_layer+","+f_py+","+f_ldm+","+f_old_bhc+","+f_old_fzcs+","+f_old_szxz).toString();
                          //*************************************還有一些字段未獲取***************
                          rrSql = ""; //插入t_rpt_modi表中的sql語(yǔ)句
                          v_flag = stmt.executeUpdate(rrSql);
                        }
                      }
                      else if("plant".equals(v_type))
                      {

                      }

                      v_flag=stmt.executeUpdate(rrSql);
                       conn.commit();
                       if(v_flag==1)
                       {
                           return "<script language=javascript>window.alert('保存操作成功!');window.close();</script>";
                       }
                       else
                       {
                           return
                                   "<script language=javascript>window.alert('保存操作改失敗!');window.close();</script>";
                       }
                   }
                   catch(SQLException ex)
                   {
                       try
                       {
                           conn.rollback();
                       }
                       catch(SQLException ex1)
                       {}
                        return "<script language=javascript>window.alert('系統(tǒng)錯(cuò)誤,不能修改!');</script>";
                   }
                   finally
                   {
                       try
                       {
                           if(rs != null)
                           {
                               rs.close();
                               rs = null;
                           }
                       }
                       catch(Exception ignore)
                       {}
                       try
                       {
                           if(stmt != null)
                           {
                               stmt.close();
                               stmt = null;
                           }
                       }
                       catch(Exception ignore)
                       {}
                       try
                       {
                           if(conn != null)
                           {
                               conn.rollback();
                               conn.close();
                               conn = null;
                           }
                       }
                       catch(Exception ignore)
                       {}
                   }

                  }
              }


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 都昌县| 渭源县| 浦城县| 云浮市| 儋州市| 东城区| 上饶市| 佛山市| 中江县| 皋兰县| 莫力| 棋牌| 吉林省| 本溪| 施秉县| 三明市| 岢岚县| 察哈| 三亚市| 沅陵县| 桐庐县| 连平县| 米脂县| 安丘市| 迁西县| 甘孜县| 新民市| 吴忠市| 大邑县| 宝清县| 临澧县| 张北县| 中西区| 南京市| 紫金县| 青川县| 乌鲁木齐县| 加查县| 巴里| 南安市| 清新县|