abatis实现从页面读取数据添加到数据库全过程

abatis实现从页面读取数据添加到数据库全过程

库设计table  001
       字段  Id            int      nonull
             userName      varchar   null
             password      varchar   null
      role_id       varchar   null
------------------------------------------------------------------------------------------------------------

页面------------------ insert.jsp


<%@ page language="java" pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
 
<html>
 <head>
  <title>JSP for InsertForm form</title>
 </head>
 <body>
  <html:form action="/insert">
   userName : <html:text property="userName"/><html:errors property="userName"/><br/>
   
   password : <html:text property="password"/><html:errors property="password"/><br/>
   
   role_id : <html:text property="role_id"/><html:errors property="role_id"/><br/>
   <html:submit/>
  </html:form>
 </body>
</html>




formbead------------InsertForm.java

/*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 */
package com.dd.struts.form;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;

/**
 * MyEclipse Struts
 * Creation date: 06-07-2007
 *
 * XDoclet definition:
 * @struts.form name="insertForm"
 */
public class InsertForm extends ActionForm {
 /*
  * Generated fields
  */

 /** userName property */
 private String userName;

 /** rold_id property */
 private String role_id;

 /** password property */
 private String password;

 /*
  * Generated Methods
  */

 /**
  * Method validate
  * @param mapping
  * @param request
  * @return ActionErrors
  */
 public ActionErrors validate(ActionMapping mapping,
   HttpServletRequest request) {
  // TODO Auto-generated method stub
  return null;
  
  //ActionErrors errors=new ActionErrors();
  //if((userName==null)||(userName.length()<1)) {
 //  errors.add("userName",new ActionError("jsp.hello.error") );
 // }
  
 // if((password==null)||(password.length()<1)) {
 //  errors.add("password",new ActionError("jsp.hello.error") );
 // }
  
 // return errors;
 }

 /**
  * Method reset
  * @param mapping
  * @param request
  */
 public void reset(ActionMapping mapping, HttpServletRequest request) {
  // TODO Auto-generated method stub
  this.userName=null;
  this.password=null;
  this.role_id=null;
 }

 /**
  * Returns the userName.
  * @return String
  */
 public String getUserName() {
  return userName;
 }

 /**
  * Set the userName.
  * @param userName The userName to set
  */
 public void setUserName(String userName) {
  this.userName = userName;
 }

 /**
  * Returns the rold_id.
  * @return String
  */
 public String getRole_id() {
  return role_id;
 }

 /**
  * Set the rold_id.
  * @param rold_id The rold_id to set
  */
 public void setRole_id(String rold_id) {
  this.role_id = rold_id;
 }

 /**
  * Returns the password.
  * @return String
  */
 public String getPassword() {
  return password;
 }

 /**
  * Set the password.
  * @param password The password to set
  */
 public void setPassword(String password) {
  this.password = password;
 }
}





控制层-------------InsertAction.java
/*
 * Generated by MyEclipse Struts
 * Template path: templates/java/JavaClass.vtl
 */
package com.dd.struts.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import cn.gov.core.server.pm.IPersistenceManager;
import cn.gov.core.server.pm.ITransaction;
import cn.gov.core.server.pm.util.PersistenceUtil;

import com.ewansoft.struts.utils.Constants;
import com.ewansoft.struts.utils.SequenceGenerator;
import com.dd.struts.dao.ddDao;
import com.dd.struts.dto.ddDto;
import com.dd.struts.form.InsertForm;

/**
 * MyEclipse Struts
 * Creation date: 06-07-2007
 *
 * XDoclet definition:
 * @struts.action path="/insert" name="insertForm" input="/dd/insert.jsp" scope="request" validate="true"
 */
public class InsertAction extends Action {
 /*
  * Generated Methods
  */

 /**
  * Method execute
  * @param mapping
  * @param form
  * @param request
  * @param response
  * @return ActionForward
  */
 public ActionForward execute(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response) {
  InsertForm insertForm = (InsertForm) form;// TODO Auto-generated method stub
  ddDto  dto=new ddDto();
  dto.setId(""+SequenceGenerator.getNextId());       //写个自动生成Id功能的函数
  dto.setUserName(insertForm.getUserName());
  dto.setPassword(insertForm.getPassword());
  dto.setRole_id(insertForm.getRole_id());
  
  
  
  IPersistenceManager pm=PersistenceUtil.getPM(Constants.DATA_SOURCE);//写个持久层操作包PM
  ddDao ZDao=new ddDao();
  ZDao.setTranPM(pm);
  ZDao.insert(dto);
  return mapping.findForward("welcome");
 }
}




实体-----------------ddDto


/*@author dd_2007,创建日期2007-6-7
*
*javaco
*/
package com.dd.struts.dto;

public class ddDto {
 
 private String id;
 
 private String userName;
 
 private String password;
 
 private String role_id;

 public String getId() {
  return id;
 }

 public void setId(String id) {
  this.id = id;
 }

 public String getPassword() {
  return password;
 }

 public void setPassword(String password) {
  this.password = password;
 }

 public String getRole_id() {
  return role_id;
 }

 public void setRole_id(String role_id) {
  this.role_id = role_id;
 }

 public String getUserName() {
  return userName;
 }

 public void setUserName(String userName) {
  this.userName = userName;
 }

 }



-----数据操作层--------ddDao

/*@author dd_2007,创建日期2007-6-7
*
*javaco
*/
package com.dd.struts.dao;

import cn.gov.core.server.pm.PersistenceException;
import cn.gov.core.server.pm.ILargeResult;
import cn.gov.core.server.pm.PersistenceException;
import com.ewansoft.struts.dao.BaseFormDao;
import com.ewansoft.struts.utils.SequenceGenerator;
import com.ewansoft.struts.utils.StringUtil;
import com.dd.struts.dto.ddDto;

public class ddDao extends BaseFormDao {
 
 
 
 /*
  * inset 添加ddDto记录
  */
    public  void  insert(ddDto dto) {
  

   try {
   pm.insert("InsertddDto", dto);
   }
   catch (PersistenceException e) {
    e.printStackTrace();
   }
   finally {
    
   }
   
    }

}



配置SQL语句的XML文件-----dd.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">

<sqlMap namespace="dd">

  <typeAlias alias="ddDto" type="com.dd.struts.dto.ddDto"/>
 <insert id="InsertddDto" parameterClass="ddDto">
     insert into ctwob.001(
       id,
       userName ,
       password ,
       role_id
       )
      values (
      #id#,
      #userName# ,
      #password#,
      #role_id#
      )
 </insert>

</sqlMap>

mapping 配置文件struts-config.xml
   <action
      attribute="insertForm"
      input="/dd/insert.jsp"
      name="insertForm"
      path="/insert"
      scope="request"
      type="com.dd.struts.action.InsertAction" >
     
    <forward name="welcome" path="/dd/welcome.jsp" />
    </action>

原文地址:https://www.cnblogs.com/smallfa/p/775661.html