posts - 0,  comments - 17,  trackbacks - 0
          作者:NetFetch   http://www.ad0.cn/netfetch

          本文不關心必須的JAR包,這個東東在網上能夠找到很多,本文只關心如何配置,才能夠讓STRUTS SPRING HIBERNATE和MYSQL相關連。
          開發環境:wsad5.1
          Spring-Version: 1.1.4
          Struts Framework 1.1
          Hibernate-Version: 2.1.7
          Blog.Ad0.Cn

          ---------------------------------
          <web.xml> Blog.Ad0.Cn

          ---------------------------------
          程序代碼 程序代碼
          <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
          <web-app id="WebApp">
          <display-name>MVC_BPEL_MODELWeb</display-name>
          <context-param>
          <param-name>contextConfigLocation</param-name>
          <param-value>/WEB-INF/Hibernate_Context.xml</param-value>
          </context-param>
          <servlet>
          <servlet-name>SpringContextServlet</servlet-name>
          <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
          <load-on-startup>1</load-on-startup>
          </servlet>
          <servlet>
          <servlet-name>action</servlet-name>
          <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
          <init-param>
          <param-name>config</param-name>
          <param-value>WEB-INF/struts-config.xml</param-value>
          </init-param>
          <init-param>
          <param-name>debug</param-name>
          <param-value>2</param-value>
          </init-param>
          <init-param>
          <param-name>detail</param-name>
          <param-value>2</param-value>
          </init-param>
          <init-param>
          <param-name>validate</param-name>
          <param-value>true</param-value>
          </init-param>
          <load-on-startup>2</load-on-startup>
          </servlet>

          <servlet-mapping>
          <servlet-name>action</servlet-name>
          <url-pattern>*.do</url-pattern>
          </servlet-mapping>
          <welcome-file-list>
          <welcome-file>index.html</welcome-file>
          <welcome-file>index.htm</welcome-file>
          <welcome-file>index.jsp</welcome-file>
          <welcome-file>default.html</welcome-file>
          <welcome-file>default.htm</welcome-file>
          <welcome-file>default.jsp</welcome-file>
          </welcome-file-list>
          <taglib>
          <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
          <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
          </taglib>
          <taglib>
          <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
          <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
          </taglib>
          <taglib>
          <taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
          <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
          </taglib>
          <taglib>
          <taglib-uri>/WEB-INF/struts-nested.tld</taglib-uri>
          <taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
          </taglib>
          <taglib>
          <taglib-uri>/WEB-INF/struts-template.tld</taglib-uri>
          <taglib-location>/WEB-INF/struts-template.tld</taglib-location>
          </taglib>
          <taglib>
          <taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri>
          <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
          </taglib>

          </web-app>

          -----------------------------------
          <action-servlet.xml>
          ----------------------------------------------------------------------
          程序代碼 程序代碼
          <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
          "http://www.springframework.org/dtd/spring-beans.dtd">

          <beans>
          <bean name="/User" class="com.yaya.action.UserAction" singleton="false">
          <property name="userManager">
          <ref bean="userManager" />
          </property>
          </bean>


          </beans>

          -------------------------------------------------------------------
          <hibernate_context.xml>
          --------------------------------------------------------------------
          程序代碼 程序代碼
          <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

          <beans>
          <!-- <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
          <property name="viewClass"><value>org.springframework.web.servlet.view.JstlView</value></property>
          <property name="prefix"><value>/WEB-INF/jsp/</value></property>
          <property name="suffix"><value>.jsp</value></property>
          </bean> -->
          <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">

          <property name="driverClassName">
          <value>com.mysql.jdbc.Driver</value>
          </property>

          <property name="url">
          <value>jdbc:mysql://localhost/pdm</value>
          </property>

          <property name="username">
          <value>root</value>
          </property>

          <property name="password">
          <value></value>
          </property>
          </bean>

          <bean id="sessionFactory" class="org.springframework.orm.hibernate.LocalSessionFactoryBean">

          <property name="dataSource">
          <ref local="dataSource" />
          </property>

          <property name="mappingResources">
          <list>
          <value>hbm_tb/Tsysuser.hbm.xml</value>
          </list>
          </property>

          <property name="hibernateProperties">
          <props>
          <prop key="hibernate.dialect">net.sf.hibernate.dialect.MySQLDialect</prop>
          <prop key="hibernate.show_sql">true</prop>
          </props>
          </property>
          </bean>

          <bean id="transactionManager" class="org.springframework.orm.hibernate.HibernateTransactionManager">

          <property name="sessionFactory">
          <ref local="sessionFactory" />
          </property>
          </bean>


          <!-- Spring的數據訪問異常轉換器(Data Access Exception Translator)定義 -->
          <bean id="jdbcExceptionTranslator" class="org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator">
          <property name="dataSource">
          <ref bean="dataSource" />
          </property>
          </bean>

          <bean id="userDao" class="com.yaya.service.dao.hibernate.UserHibernateDao">
          <property name="sessionFactory">
          <ref local="sessionFactory" />
          </property>
          </bean>

          <bean id="userManagerTarget" class="com.yaya.service.spring.UserManagerImpl">
          <property name="userDao">
          <ref local="userDao" />
          </property>
          </bean>


          <bean id="userManager" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
          <property name="transactionManager">
          <ref bean="transactionManager" />
          </property>

          <property name="target">
          <ref local="userManagerTarget" />
          </property>

          <property name="proxyTargetClass">
          <value>true</value>
          </property>
          <property name="transactionAttributes">
          <props>
          <prop key="save*">PROPAGATION_REQUIRED</prop>
          <prop key="find*">PROPAGATION_REQUIRED</prop>
          <prop key="remove*">PROPAGATION_REQUIRED,readOnly</prop>
          <prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
          </props>
          </property>
          </bean>

          </beans>

          -------------------------------------------------------------------
          <struts-config.xml> Ad0.Cn
          -------------------------------------------------------------------
          程序代碼 程序代碼
          <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
          "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">

          <struts-config>

          <!-- 數據源 -->
          <data-sources></data-sources>

          <!-- 表單 Bean -->
          <form-beans>
          <form-bean name="UserActionForm" type="org.apache.struts.validator.DynaValidatorForm">
          <form-property name="user" type="com.yaya.hb.Tsysuser" />
          </form-bean>
          </form-beans>

          <!-- 全局異常 -->
          <global-exceptions></global-exceptions>

          <!-- 全局轉發 -->
          <global-forwards></global-forwards>

          <!-- 操作映射 -->
          <action-mappings>
          <action path="/User" type="org.springframework.web.struts.DelegatingActionProxy"
          name="UserActionForm" scope="request" parameter="method" validate="false">
          <forward name="list" path="/userlist.jsp" />
          <forward name="edit" path="/userform.jsp" />
          </action>

          </action-mappings>

          <!-- 消息資源 -->
          <message-resources parameter="mvc_bpel_modelweb.resources.ApplicationResources" />
          <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
          <set-property property="contextConfigLocation" value="/WEB-INF/action-servlet.xml" />
          </plug-in>
          <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
          <set-property property="pathnames" value="/WEB-INF/validator-rules.xml, /WEB-INF/validation.xml"/>
          </plug-in>

          </struts-config>

          ------------------------------------------------------------------
          UserHibernateDao.java  Ad0.Cn
          ------------------------------------------------------------------
          程序代碼 程序代碼
          /*
          * 創建日期 2005-4-7
          *
          * 更改所生成文件模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          package com.yaya.service.dao.hibernate;

          import java.util.List;

          import org.springframework.orm.ObjectRetrievalFailureException;
          import org.springframework.orm.hibernate.support.HibernateDaoSupport;
          import net.sf.hibernate.HibernateException;

          import com.yaya.hb.Tsysuser;
          import com.yaya.service.dao.IUserDao;
          import java.util.List;

          import org.apache.commons.logging.Log;

          import org.apache.commons.logging.LogFactory;

          /**
          * @author Administrator
          *
          * 更改所生成類型注釋的模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          public class UserHibernateDao extends HibernateDaoSupport implements IUserDao {

          private Log log = LogFactory.getLog(UserHibernateDao.class);

          /* (非 Javadoc)

          * @see com.jandar.dao.IUserDAO#getUsers()

          */

          public List getUsers() {

          return getHibernateTemplate().find("from Tsysuser");

          }

          /* (非 Javadoc)

          * @see com.jandar.dao.IUserDAO#getUser(java.lang.Long)

          */

          public Tsysuser getUser(String username) {

          // TODO 自動生成方法存根
          if (this.getHibernateTemplate() == null)
          {
          System.out.println("error at there");
          return null;

          }
          Tsysuser user = (Tsysuser) getHibernateTemplate().get(Tsysuser.class,username);
          //Tsysuser user = (Tsysuser) getHibernateTemplate().find("from Tsysuser users where users.username = 'admin'",username);
          if (user == null) {
          throw new ObjectRetrievalFailureException(Tsysuser.class, username);
          }
          return user;


          //String msg = getHibernateTemplate().get(Tsysuser.class,username).toString();

          //Tsysuser user = (Tsysuser) getHibernateTemplate().find("from Tsysuser where username = ?",username);
          //System.out.println(user.getUserdesc());
          //System.out.println(user.getHeadship());

          //return user;
          }

          /* (非 Javadoc)

          * @see com.jandar.dao.IUserDAO#saveUser(com.jandar.model.User)

          */

          public void saveUser(Tsysuser user) {

          log.debug("xxxxxxx");

          System.out.println("yyyy");

          getHibernateTemplate().saveOrUpdate(user);

          if (log.isDebugEnabled()) {

          log.debug("username set to " + user.getUsername());

          }

          }

          /* (非 Javadoc)

          * @see com.jandar.dao.IUserDAO#removeUser(java.lang.Long)

          */

          public void removeUser(String username) {

          Object user = getHibernateTemplate().load(Tsysuser.class, username);

          getHibernateTemplate().delete(user);

          if (log.isDebugEnabled()) {

          log.debug("del user " + username);

          }

          }

          }

          -------------------------------------------------------------------
          useraction.java
          --------------------------------------------------------------------
          程序代碼 程序代碼
          /*
          * 創建日期 2005-4-11
          *
          * 更改所生成文件模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          package com.yaya.action;

          import java.util.Date;

          import org.apache.struts.actions.DispatchAction;
          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletResponse;

          import org.apache.commons.beanutils.ConvertUtils;
          import org.apache.commons.beanutils.locale.converters.DateLocaleConverter;
          import org.apache.commons.logging.Log;
          import org.apache.commons.logging.LogFactory;
          import org.apache.struts.action.ActionErrors;
          import org.apache.struts.action.ActionForm;
          import org.apache.struts.action.ActionForward;
          import org.apache.struts.action.ActionMapping;
          import org.apache.struts.action.ActionMessage;
          import org.apache.struts.action.ActionMessages;
          import org.apache.struts.action.DynaActionForm;
          import org.apache.struts.util.MessageResources;

          import com.opensymphony.user.User;
          import com.yaya.axis.SpringBeanProvider;
          import com.yaya.hb.Tsysuser;
          import com.yaya.service.spring.UserManagerImpl;
          /**
          * @author Administrator
          *
          * 更改所生成類型注釋的模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          public class UserAction extends DispatchAction {

          private static Log log = LogFactory.getLog(UserAction.class);
          private UserManagerImpl mgr = null;
          public void setUserManager(UserManagerImpl userManager) {
          this.mgr = userManager;
          }

          public ActionForward delete(
          ActionMapping mapping,
          ActionForm form,
          HttpServletRequest request,
          HttpServletResponse response)
          throws Exception {
          if (log.isDebugEnabled()) {
          log.debug("entering 'delete' method…");
          }
          mgr.removeUser(request.getParameter("user.username"));
          ActionMessages messages = new ActionMessages();
          messages.add(
          ActionMessages.GLOBAL_MESSAGE,
          new ActionMessage("user.deleted"));
          saveMessages(request, messages);
          return list(mapping, form, request, response);
          }

          public ActionForward edit(
          ActionMapping mapping,
          ActionForm form,
          HttpServletRequest request,
          HttpServletResponse response)
          throws Exception {
          if (log.isDebugEnabled()) {
          log.debug("entering 'edit' method…");
          }

          DynaActionForm UserActionForm = (DynaActionForm) form;
          String username = request.getParameter("username");

          // null userId indicates an add
          if (username != null) {
          try
          {
          Tsysuser user = mgr.getUser(username);
          if (user == null) {
          ActionMessages errors = new ActionMessages();
          errors.add(
          ActionMessages.GLOBAL_MESSAGE,
          new ActionMessage("user.missing"));
          saveErrors(request, (ActionErrors) errors);
          return mapping.findForward("list");
          }
          UserActionForm.set("user",user);
          //request.setAttribute("user",user);
          }
          catch(Exception e)
          {
          e.printStackTrace();
          }

          }
          return mapping.findForward("edit");
          }

          public ActionForward list(
          ActionMapping mapping,
          ActionForm form,
          HttpServletRequest request,
          HttpServletResponse response)
          throws Exception {
          if (log.isDebugEnabled()) {
          log.debug("entering 'list' method…");
          }
          request.setAttribute("users", mgr.getUsers());
          return mapping.findForward("list");
          }

          public ActionForward save(
          ActionMapping mapping,
          ActionForm form,
          HttpServletRequest request,
          HttpServletResponse response)
          throws Exception {
          if (log.isDebugEnabled()) {
          log.debug("entering 'save' method…");
          }

          if (isCancelled(request)) {
          return list(mapping, form, request, response);
          }

          // run validation rules on this form
          ActionMessages errors = form.validate(mapping, request);

          if (!errors.isEmpty()) {
          saveErrors(request, (ActionErrors) errors);

          return mapping.findForward("edit");
          }
          DynaActionForm UserActionForm = (DynaActionForm) form;
          Tsysuser user = (Tsysuser) UserActionForm.get("user");

          mgr.saveUser(user);

          ActionMessages messages = new ActionMessages();
          messages.add(ActionMessages.GLOBAL_MESSAGE,
          new ActionMessage("user.saved", user.getUsername()));
          //saveMessages((HttpServletRequest) request.getSession(), messages);

          return mapping.findForward("list");
          }

          public ActionForward unspecified(
          ActionMapping mapping,
          ActionForm form,
          HttpServletRequest request,
          HttpServletResponse response)
          throws Exception {
          return list(mapping, form, request, response);
          }

          }


          -------------------------------------------------------------------
          UserActionForm.java
          -------------------------------------------------------------------
          程序代碼 程序代碼
          /*
          * 創建日期 2005-3-29
          *
          * 更改所生成文件模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          package com.yaya.actionform;

          import java.util.Date;

          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;

          /**
          * @author Administrator
          *
          * 更改所生成類型注釋的模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          public class UserActionForm extends ActionForm {
          /** identifier field */
          private String username;

          /** identifier field */
          private String userdesc;

          /** identifier field */
          private String passwords;

          /** identifier field */
          private String deptno;

          /** identifier field */
          private String headship;

          /** identifier field */
          private String sex;

          /** identifier field */
          private String tel;

          /** identifier field */
          private String email;

          /** identifier field */
          private String url;

          /** identifier field */
          private String pcall;

          /** identifier field */

          /** identifier field */
          private String userphoto;

          /** identifier field */
          private Integer facerefutime;

          /** identifier field */
          private String facelanguage;

          /** identifier field */
          private String lastmodif;

          /** identifier field */
          private Date lastmdate;

          /** identifier field */
          private String creadtor;

          /** identifier field */
          private Date creatdate;

          public String getUsername() {
          return this.username;
          }

          public void setUsername(String username) {
          this.username = username;
          }



          public String getPasswords() {
          return this.passwords;
          }

          public void setPasswords(String passwords) {
          this.passwords = passwords;
          }

          public String getDeptno() {
          return this.deptno;
          }

          public void setDeptno(String deptno) {
          this.deptno = deptno;
          }

          public String getHeadship() {
          return this.headship;
          }

          public void setHeadship(String headship) {
          this.headship = headship;
          }

          public String getSex() {
          return this.sex;
          }

          public void setSex(String sex) {
          this.sex = sex;
          }

          public String getTel() {
          return this.tel;
          }

          public void setTel(String tel) {
          this.tel = tel;
          }

          public String getEmail() {
          return this.email;
          }

          public void setEmail(String email) {
          this.email = email;
          }

          public String getUrl() {
          return this.url;
          }

          public void setUrl(String url) {
          this.url = url;
          }

          public String getPcall() {
          return this.pcall;
          }

          public void setPcall(String pcall) {
          this.pcall = pcall;
          }


          public String getUserphoto() {
          return this.userphoto;
          }

          public void setUserphoto(String userphoto) {
          this.userphoto = userphoto;
          }

          public Integer getFacerefutime() {
          return this.facerefutime;
          }

          public void setFacerefutime(Integer facerefutime) {
          this.facerefutime = facerefutime;
          }

          public String getFacelanguage() {
          return this.facelanguage;
          }

          public void setFacelanguage(String facelanguage) {
          this.facelanguage = facelanguage;
          }

          public String getLastmodif() {
          return this.lastmodif;
          }

          public void setLastmodif(String lastmodif) {
          this.lastmodif = lastmodif;
          }

          public Date getLastmdate() {
          return this.lastmdate;
          }

          public void setLastmdate(Date lastmdate) {
          this.lastmdate = lastmdate;
          }

          public String getCreadtor() {
          return this.creadtor;
          }

          public void setCreadtor(String creadtor) {
          this.creadtor = creadtor;
          }

          public Date getCreatdate() {
          return this.creatdate;
          }

          public void setCreatdate(Date creatdate) {
          this.creatdate = creatdate;
          }

          /**
          * @return
          */
          public String getUserdesc() {
          return userdesc;
          }

          /**
          * @param string
          */
          public void setUserdesc(String string) {
          userdesc = string;
          }


          }

          ------------------------------------------------------------------
          Tsysuser.java   Ad0.Cn
          ------------------------------------------------------------------
          程序代碼 程序代碼
          package com.yaya.hb;

          import java.io.InputStream;
          import java.io.Serializable;
          import java.util.Date;
          import org.apache.commons.lang.builder.EqualsBuilder;
          import org.apache.commons.lang.builder.HashCodeBuilder;
          import org.apache.commons.lang.builder.ToStringBuilder;

          /** @author Hibernate CodeGenerator */
          public class Tsysuser implements Serializable {

          /** identifier field */
          private String username;

          /** identifier field */
          private String userdesc;

          /** identifier field */
          private String passwords;

          /** identifier field */
          private String deptno;

          /** identifier field */
          private String headship;

          /** identifier field */
          private String sex;

          /** identifier field */
          private String tel;

          /** identifier field */
          private String email;

          /** identifier field */
          private String url;

          /** identifier field */
          private String pcall;

          /** identifier field */

          /** identifier field */
          private String userphoto;

          /** identifier field */
          private Integer facerefutime;

          /** identifier field */
          private String facelanguage;

          /** identifier field */
          private String lastmodif;

          /** identifier field */
          private Date lastmdate;

          /** identifier field */
          private String creadtor;

          /** identifier field */
          private Date creatdate;

          /** full constructor */
          public Tsysuser(String username, String userdesc, String passwords, String deptno, String headship, String sex, String tel, String email, String url, String pcall, InputStream userimage, String userphoto, Integer facerefutime, String facelanguage, String lastmodif, Date lastmdate, String creadtor, Date creatdate) {
          this.username = username;
          this.userdesc = userdesc;
          this.passwords = passwords;
          this.deptno = deptno;
          this.headship = headship;
          this.sex = sex;
          this.tel = tel;
          this.email = email;
          this.url = url;
          this.pcall = pcall;
          this.userphoto = userphoto;
          this.facerefutime = facerefutime;
          this.facelanguage = facelanguage;
          this.lastmodif = lastmodif;
          this.lastmdate = lastmdate;
          this.creadtor = creadtor;
          this.creatdate = creatdate;
          }

          /** default constructor */
          public Tsysuser() {
          }

          public String getUsername() {
          return this.username;
          }

          public void setUsername(String username) {
          this.username = username;
          }

          public String getUserdesc() {
          return this.userdesc;
          }

          public void setUserdesc(String userdesc) {
          this.userdesc = userdesc;
          }

          public String getPasswords() {
          return this.passwords;
          }

          public void setPasswords(String passwords) {
          this.passwords = passwords;
          }

          public String getDeptno() {
          return this.deptno;
          }

          public void setDeptno(String deptno) {
          this.deptno = deptno;
          }

          public String getHeadship() {
          return this.headship;
          }

          public void setHeadship(String headship) {
          this.headship = headship;
          }

          public String getSex() {
          return this.sex;
          }

          public void setSex(String sex) {
          this.sex = sex;
          }

          public String getTel() {
          return this.tel;
          }

          public void setTel(String tel) {
          this.tel = tel;
          }

          public String getEmail() {
          return this.email;
          }

          public void setEmail(String email) {
          this.email = email;
          }

          public String getUrl() {
          return this.url;
          }

          public void setUrl(String url) {
          this.url = url;
          }

          public String getPcall() {
          return this.pcall;
          }

          public void setPcall(String pcall) {
          this.pcall = pcall;
          }


          public String getUserphoto() {
          return this.userphoto;
          }

          public void setUserphoto(String userphoto) {
          this.userphoto = userphoto;
          }

          public Integer getFacerefutime() {
          return this.facerefutime;
          }

          public void setFacerefutime(Integer facerefutime) {
          this.facerefutime = facerefutime;
          }

          public String getFacelanguage() {
          return this.facelanguage;
          }

          public void setFacelanguage(String facelanguage) {
          this.facelanguage = facelanguage;
          }

          public String getLastmodif() {
          return this.lastmodif;
          }

          public void setLastmodif(String lastmodif) {
          this.lastmodif = lastmodif;
          }

          public Date getLastmdate() {
          return this.lastmdate;
          }

          public void setLastmdate(Date lastmdate) {
          this.lastmdate = lastmdate;
          }

          public String getCreadtor() {
          return this.creadtor;
          }

          public void setCreadtor(String creadtor) {
          this.creadtor = creadtor;
          }

          public Date getCreatdate() {
          return this.creatdate;
          }

          public void setCreatdate(Date creatdate) {
          this.creatdate = creatdate;
          }

          public String toString() {
          return new ToStringBuilder(this)
          .append("username", getUsername())
          .append("userdesc", getUserdesc())
          .append("passwords", getPasswords())
          .append("deptno", getDeptno())
          .append("headship", getHeadship())
          .append("sex", getSex())
          .append("tel", getTel())
          .append("email", getEmail())
          .append("url", getUrl())
          .append("pcall", getPcall())
          .append("userphoto", getUserphoto())
          .append("facerefutime", getFacerefutime())
          .append("facelanguage", getFacelanguage())
          .append("lastmodif", getLastmodif())
          .append("lastmdate", getLastmdate())
          .append("creadtor", getCreadtor())
          .append("creatdate", getCreatdate())
          .toString();
          }

          public boolean equals(Object other) {
          if ( !(other instanceof Tsysuser) ) return false;
          Tsysuser castOther = (Tsysuser) other;
          return new EqualsBuilder()
          .append(this.getUsername(), castOther.getUsername())
          .append(this.getUserdesc(), castOther.getUserdesc())
          .append(this.getPasswords(), castOther.getPasswords())
          .append(this.getDeptno(), castOther.getDeptno())
          .append(this.getHeadship(), castOther.getHeadship())
          .append(this.getSex(), castOther.getSex())
          .append(this.getTel(), castOther.getTel())
          .append(this.getEmail(), castOther.getEmail())
          .append(this.getUrl(), castOther.getUrl())
          .append(this.getPcall(), castOther.getPcall())
          .append(this.getUserphoto(), castOther.getUserphoto())
          .append(this.getFacerefutime(), castOther.getFacerefutime())
          .append(this.getFacelanguage(), castOther.getFacelanguage())
          .append(this.getLastmodif(), castOther.getLastmodif())
          .append(this.getLastmdate(), castOther.getLastmdate())
          .append(this.getCreadtor(), castOther.getCreadtor())
          .append(this.getCreatdate(), castOther.getCreatdate())
          .isEquals();
          }

          public int hashCode() {
          return new HashCodeBuilder()
          .append(getUsername())
          .append(getUserdesc())
          .append(getPasswords())
          .append(getDeptno())
          .append(getHeadship())
          .append(getSex())
          .append(getTel())
          .append(getEmail())
          .append(getUrl())
          .append(getPcall())
          .append(getUserphoto())
          .append(getFacerefutime())
          .append(getFacelanguage())
          .append(getLastmodif())
          .append(getLastmdate())
          .append(getCreadtor())
          .append(getCreatdate())
          .toHashCode();
          }

          }
          ---------------------------------------------------------------------
          IUserManager.java
          ---------------------------------------------------------------------
          package com.yaya.service;

          import java.util.List;

          import com.yaya.hb.Tsysuser;
          import com.yaya.service.dao.IUserDao;


          public interface IUserManager {
          public void setUserDAO(IUserDao userDao);
          public Tsysuser getUser(String username);
          public List getUsers();
          public void saveUser(Tsysuser user);
          public void removeUser(String username);
          }

          --------------------------------------------------------------------
          IDAO.java
          --------------------------------------------------------------------
          程序代碼 程序代碼
          /*
          * 創建日期 2005-4-7
          *
          * 更改所生成文件模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          package com.yaya.service.dao;
          /**
          * @author Administrator
          *
          * 更改所生成類型注釋的模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          public interface IDAO {

          }

          --------------------------------------------------------------
          IUserDao.java
          --------------------------------------------------------------
          程序代碼 程序代碼
          /*
          * 創建日期 2005-4-11
          *
          * 更改所生成文件模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          package com.yaya.service.dao;

          import java.util.List;

          import com.yaya.hb.Tsysuser;

          /**
          * @author Administrator
          *
          * 更改所生成類型注釋的模板為
          * 窗口 > 首選項 > Java > 代碼生成 > 代碼和注釋
          */
          public interface IUserDao extends IDAO {

          public List getUsers();
          public Tsysuser getUser(String username);
          public void saveUser(Tsysuser user);
          public void removeUser(String username);
          }

          ----------------------------------------------------------
          UserManagerImpl.java
          ----------------------------------------------------------
          程序代碼 程序代碼
          package com.yaya.service.spring;

          import com.yaya.hb.Tsysuser;
          import com.yaya.service.IUserManager;
          import com.yaya.service.dao.IUserDao;

          import java.util.List;
          import org.apache.commons.logging.Log;
          import org.apache.commons.logging.LogFactory;

          public class UserManagerImpl implements IUserManager {
          private static Log log = LogFactory.getLog(UserManagerImpl.class);

          public IUserDao dao;

          public void setUserDao(IUserDao userDao) {
          this.dao = userDao;
          this.setUserDAO(userDao);
          }

          public Tsysuser getUser(String username) {
          return dao.getUser(username);
          }

          public List getUsers() {
          return dao.getUsers();
          }

          public void saveUser(Tsysuser user) {
          dao.saveUser(user);
          }

          public void removeUser(String username) {
          // TODO 自動生成方法存根
          dao.removeUser(username);
          }


          public void setUserDAO(IUserDao dao) {
          // TODO 自動生成方法存根
          this.dao = dao;
          }
          }

          -----------------------------------------------------------------
          Tsysuser.hbm.xml
          -----------------------------------------------------------------
          程序代碼 程序代碼
          <?xml version="1.0"?>
          <!DOCTYPE hibernate-mapping PUBLIC
          "-//Hibernate/Hibernate Mapping DTD 2.0//EN"
          "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >

          <hibernate-mapping>
          <!--
          Created by the Middlegen Hibernate plugin

          http://boss.bekk.no/boss/middlegen/
          http://hibernate.sourceforge.net/
          -->

          <class name="com.yaya.hb.Tsysuser" table="t_sysuser">

          <id name="username" type="java.lang.String" column="USERNAME">
          <generator class="identity" />
          </id>

          <property name="userdesc" type="java.lang.String" column="USERDESC" length="30" />
          <property name="passwords" type="java.lang.String" column="PASSWORDS" length="30" />
          <property name="deptno" type="java.lang.String" column="DEPTNO" length="30" />
          <property name="headship" type="java.lang.String" column="HEADSHIP" length="30" />
          <property name="sex" type="java.lang.String" column="SEX" length="4" />
          <property name="tel" type="java.lang.String" column="TEL" length="18" />
          <property name="email" type="java.lang.String" column="EMAIL" length="30" />
          <property name="url" type="java.lang.String" column="URL" length="30" />
          <property name="pcall" type="java.lang.String" column="PCALL" length="20" />
          <property name="userphoto" type="java.lang.String" column="USERPHOTO" length="255" />
          <property name="facerefutime" type="java.lang.Integer" column="FACEREFUTIME" length="6" />
          <property name="facelanguage" type="java.lang.String" column="FACELANGUAGE" length="1" />
          <property name="lastmodif" type="java.lang.String" column="LASTMODIF" length="30" />
          <property name="lastmdate" type="java.sql.Timestamp" column="LASTMDATE" length="19" />
          <property name="creadtor" type="java.lang.String" column="CREADTOR" length="30" />
          <property name="creatdate" type="java.sql.Timestamp" column="CREATDATE" length="19" />

          <!-- associations -->

          </class>
          </hibernate-mapping>

          -------------------------------------------------------------------
          創建數據庫腳本 用于MYSQL
          -------------------------------------------------------------------
          程序代碼 程序代碼
          Create TABLE `t_sysuser` (
          `USERNAME` varchar(30) NOT NULL default '',
          `USERDESC` varchar(30) default NULL,
          `PASSWORDS` varchar(30) default NULL,
          `DEPTNO` varchar(30) default NULL,
          `HEADSHIP` varchar(30) default NULL,
          `SEX` varchar(4) default NULL,
          `TEL` varchar(15) default NULL,
          `EMAIL` varchar(30) default NULL,
          `URL` varchar(30) default NULL,
          `PCALL` varchar(20) default NULL,
          `USERPHOTO` varchar(255) default NULL,
          `FACEREFUTIME` decimal(6,0) default NULL,
          `FACELANGUAGE` char(1) default NULL,
          `LASTMODIF` varchar(30) default NULL,
          `LASTMDATE` datetime default NULL,
          `CREADTOR` varchar(30) default NULL,
          `CREATDATE` datetime default NULL,
          PRIMARY KEY (`USERNAME`)
          ) TYPE=MyISAM;

          -----------------------------------------------------------
          提示:COPY幾個資源文件
          validation.xml 和 validator-rules.xml
          前臺使用的幾個JSP文件如下:
          -----------------------------------------------------------
          index.jsp
          -----------------------------------------------------------
          程序代碼 程序代碼
          <?xml version="1.0"?>
          <!DOCTYPE hibernate-mapping PUBLIC
          "-//Hibernate/Hibernate Mapping DTD 2.0//EN"
          "http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >

          <hibernate-mapping>
          <!--
          Created by the Middlegen Hibernate plugin

          http://boss.bekk.no/boss/middlegen/
          http://hibernate.sourceforge.net/
          -->

          <class name="com.yaya.hb.Tsysuser" table="t_sysuser">

          <id name="username" type="java.lang.String" column="USERNAME">
          <generator class="identity" />
          </id>

          <property name="userdesc" type="java.lang.String" column="USERDESC" length="30" />
          <property name="passwords" type="java.lang.String" column="PASSWORDS" length="30" />
          <property name="deptno" type="java.lang.String" column="DEPTNO" length="30" />
          <property name="headship" type="java.lang.String" column="HEADSHIP" length="30" />
          <property name="sex" type="java.lang.String" column="SEX" length="4" />
          <property name="tel" type="java.lang.String" column="TEL" length="18" />
          <property name="email" type="java.lang.String" column="EMAIL" length="30" />
          <property name="url" type="java.lang.String" column="URL" length="30" />
          <property name="pcall" type="java.lang.String" column="PCALL" length="20" />
          <property name="userphoto" type="java.lang.String" column="USERPHOTO" length="255" />
          <property name="facerefutime" type="java.lang.Integer" column="FACEREFUTIME" length="6" />
          <property name="facelanguage" type="java.lang.String" column="FACELANGUAGE" length="1" />
          <property name="lastmodif" type="java.lang.String" column="LASTMODIF" length="30" />
          <property name="lastmdate" type="java.sql.Timestamp" column="LASTMDATE" length="19" />
          <property name="creadtor" type="java.lang.String" column="CREADTOR" length="30" />
          <property name="creatdate" type="java.sql.Timestamp" column="CREATDATE" length="19" />

          <!-- associations -->

          </class>
          </hibernate-mapping>

          ------------------------------------------------------------------
          userlist.jsp
          ------------------------------------------------------------------
          程序代碼 程序代碼
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <%@ page contentType="text/html; charset=UTF-8" %>
          <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
          <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
          <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>

          <html:html locale="true">
          <head>
          <title><bean:message key="pdmweb.title"/></title>
          </head>
          <body>
          <table class="list">
          <thead>
          <tr bgcolor="#8080ff">
          <td bgcolor="#8080ff"><bean:message key="listuser.username" /></td>
          <td bgcolor="#8080ff"><bean:message key="listuser.userdesc" /></td>
          <td bgcolor="#8080ff"><bean:message key="listuser.sex" /></td>
          </tr>
          </thead>
          <tbody>
          <logic:iterate id="user" name="users">
          <tr>
          <td bgcolor="#ff8040"><A href="User.do?method=edit&username=<bean:write name="user" property="username"/>" ><bean:write name="user" property="username" />
          </a>
          </td>
          <td bgcolor="#ff8040"><bean:write name="user" property="userdesc" /></td>
          <td bgcolor="#ff8040"><logic:equal name="user" property="sex" value="0">
          <bean:message key="listuser.sex0" />
          </logic:equal> <logic:equal name="user" property="sex" value="1">
          <bean:message key="listuser.sex1" />
          </logic:equal></td>
          </tr>
          </logic:iterate>
          </tbody>
          </table>
          </body>
          </html:html>

          -------------------------------------------------------------------
          userform.jsp
          ------------------------------------------------------------------
          程序代碼 程序代碼
          <%@ page contentType="text/html; charset=UTF-8" %>
          <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
          <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
          <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
          <%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <html:html locale="true">
          <head>
          <html:base />
          <title>userform.jsp</title>
          </head>
          <body>

          <html:form action="User.do?method=save" method="post" focus="user.userdesc" >
          <html:text property="user.username" />
          <br>
          <html:text property="user.userdesc" /><br>
          <html:text property="user.deptno" /><br>


          <html:submit property="tijiao" />
          </html:form>
          </body>
          </html:html>
          posted on 2008-01-27 14:13 xyz 閱讀(352) 評論(0)  編輯  收藏 所屬分類: 網絡文摘

          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          留言簿

          隨筆檔案(1)

          文章分類(44)

          文章檔案(46)

          收藏夾(1)

          Adobe

          AOP

          API

          appServer

          BI

          c

          • c-free
          • codeblocks
          • codelite
          • CodeLite IDE 是一個強大的開源,跨平臺的 C/C++整合開發環境. 支持包括 Windows、Linux 和 Mac 系統下運行
          • codelite官網
          • dev-c++
          • Dev-C++是一個C&C++開發工具,它是一款自由軟件,遵守GPL協議。
          • GCC
          • GCC 原名為 GNU C 語言編譯器(GNU C Compiler),因為它原本只能處理 C語言。GCC 很快地擴展,變得可處理 C++。之后也變得可處理 Fortran、Pascal、Objective-C、Java, 以及 Ada 與其他語言。

          Cache

          CMS

          DB

          eclipse

          FreeMarker

          hibernate

          html5

          ibatis

          java

          jquery

          js

          json

          Linux

          Log

          mail server

          mobile

          mysql

          oauth

          openID

          other

          PHP

          portal

          report

          Scheduler

          schema

          Security

          SOA

          spring

          struts

          UI原型設計

          w3c

          Wap

          webservice

          xml

          供應鏈管理

          博客鏈接

          好網站

          工作流

          開源網

          招聘

          插件下載

          操作系統

          構建可伸縮的系統

          構建工具

          測試

          • IETest
          • IE官網
          • OpenSTA
          • Siege
          • Siege是一個壓力測試和評測工具,設計用于WEB開發這評估應用在壓力下的承受能力

          游戲

          源碼托管

          經營

          資源

          金融/財務

          搜索

          •  

          最新評論

          主站蜘蛛池模板: 枣强县| 麟游县| 巨野县| 富民县| 榆中县| 军事| 弥渡县| 张掖市| 田林县| 青神县| 元朗区| 镇原县| 偃师市| 子长县| 伊吾县| 宁南县| 濉溪县| 福州市| 新沂市| 南开区| 阿勒泰市| 巩留县| 遂宁市| 新昌县| 中宁县| 淮阳县| 高阳县| 天等县| 镶黄旗| 乐陵市| 巴青县| 灌南县| 新乡县| 景泰县| 兴安盟| 正蓝旗| 阳泉市| 枣强县| 肇东市| 七台河市| 繁昌县|