SSH 2による添削改査_ソリッドクラスmodelレイヤ(2)


最初のステップでは、テーブルを作成します.
ユーザー・テーブルのエンティティー・クラスの作成↓
package com.ssh02.model;
import java.io.Serializable;
import java.util.Date;
@SuppressWarnings("serial")
public class UserEntity implements Serializable {
    private Integer id;
    private String name;
    private String pass;
    private Integer age;
    private String sex;
    private String position;
    private String mail;
    private GroupEntity group;
    private Date createDate;
    private Date reworkDate;
    private Integer state;
    public UserEntity(){}
    public UserEntity( Integer id,String name, String pass, Integer age, String sex, String position,
            String mail, GroupEntity group, Date createDate, Date reworkDate,
            Integer state) {
        super();
        this.id = id;
        this.pass = pass;
        this.name = name;
        this.age = age;
        this.sex = sex;
        this.position = position;
        this.mail = mail;
        this.group = group;
        this.createDate = createDate;
        this.reworkDate = reworkDate;
        this.state = state;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
                                                                                                                                                                                                                                                           
    public String getPass() {
        return pass;
    }
    public void setPass(String pass) {
        this.pass = pass;
    }
    public Integer getAge() {
        return age;
    }
    public void setAge(Integer age) {
        this.age = age;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public String getPosition() {
        return position;
    }
    public void setPosition(String position) {
        this.position = position;
    }
    public String getMail() {
        return mail;
    }
    public void setMail(String mail) {
        this.mail = mail;
    }
    public GroupEntity getGroup() {
        return group;
    }
    public void setGroup(GroupEntity group) {
        this.group = group;
    }
    public Date getCreateDate() {
        return createDate;
    }
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }
    public Date getReworkDate() {
        return reworkDate;
    }
    public void setReworkDate(Date reworkDate) {
        this.reworkDate = reworkDate;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
                                                                                                                                                                                                                                                           
                                                                                                                                                                                                                                                           
}

対応するhibernateマッピングプロファイルuser.hbm.xml↓


                                                                                                                                                                                                                 
                                                                                                                                                                                                                 

    
      
         
      
      
      
      
      
      
      
      
      
      
      
    

ロールテーブルのエンティティークラスを作成します.java↓
package com.ssh02.model;
import java.io.Serializable;
import java.util.Date;
import java.util.Set;
@SuppressWarnings("serial")
public class GroupEntity implements Serializable {
    private Integer id;
    private String name;
    private Date createDate;
    private Date reworkDate;
    private Integer state;
    private Set users;
    private Set authoritys;
    public GroupEntity(){}
    public GroupEntity(String name, Date createDate, Date reworkDate,
            Integer state, Set users,
            Set authoritys) {
        super();
        this.name = name;
        this.createDate = createDate;
        this.reworkDate = reworkDate;
        this.state = state;
        this.users = users;
        this.authoritys = authoritys;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Date getCreateDate() {
        return createDate;
    }
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }
    public Date getReworkDate() {
        return reworkDate;
    }
    public void setReworkDate(Date reworkDate) {
        this.reworkDate = reworkDate;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Set getUsers() {
        return users;
    }
    public void setUsers(Set users) {
        this.users = users;
    }
    public Set getAuthoritys() {
        return authoritys;
    }
    public void setAuthoritys(Set authoritys) {
        this.authoritys = authoritys;
    }
                                                                                                                                                                                                 
}

ロールテーブルに対応するhibernateマッピングプロファイルgroup.hbm.xml↓


                                                                                                                                                                               
                                                                                                                                                                               

    
      
         
      
      
      
      
      
      
        
        
      
      
        
        
      
    

権限テーブルエンティティクラスAuthorityEntityを作成します.java↓
package com.ssh02.model;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Set;
@SuppressWarnings("serial")
public class AuthorityEntity implements Serializable {
     private Integer id;
     private String authorityName;
     private String description;
     private String path;
     private Date createDate;
     private Date reworkDate;
     private Integer state;
     private Set groups;
     private Integer pid;
     private List aLists;
     public AuthorityEntity(){}
                                                                                                                                                                      
    public AuthorityEntity(String authorityName, String description, String path,
            Date createDate, Date reworkDate, Integer state,
            Set groups, Integer pid) {
        super();
        this.authorityName = authorityName;
        this.description = description;
        this.path = path;
        this.createDate = createDate;
        this.reworkDate = reworkDate;
        this.state = state;
        this.groups = groups;
        this.pid = pid;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getAuthorityName() {
        return authorityName;
    }
    public void setAuthorityName(String authorityName) {
        this.authorityName = authorityName;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }
    public String getPath() {
        return path;
    }
    public void setPath(String path) {
        this.path = path;
    }
    public Date getCreateDate() {
        return createDate;
    }
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }
    public Date getReworkDate() {
        return reworkDate;
    }
    public void setReworkDate(Date reworkDate) {
        this.reworkDate = reworkDate;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
    public Set getGroups() {
        return groups;
    }
    public void setGroups(Set groups) {
        this.groups = groups;
    }
    public Integer getPid() {
        return pid;
    }
    public void setPid(Integer pid) {
        this.pid = pid;
    }
    public List getaLists() {
        return aLists;
    }
    public void setaLists(List aLists) {
        this.aLists = aLists;
    }
                                                                                                                                                                      
}

対応するhibernateマッピングプロファイルauthority.hbm.xml↓


                                                                                                                                                         
                                                                                                                                                         

    
      
         
      
      
      
      
      
      
      
      
      
      
      
      
    

商品分類表のエンティティクラスを作成します.java↓
package com.ssh02.model;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Set;
@SuppressWarnings("serial")
public class CommodityClassEntity implements Serializable {
    private Integer id;
    private String name;
    private String path;
    private Date createDate;
    private Date reworkDate;
    private Integer state;
    private Set commoditys;
    private List aLists;
    private Integer pid;
                                             
                                             
    public CommodityClassEntity(){}
    public CommodityClassEntity(Integer id, String name, String path,
            Date createDate, Date reworkDate, Integer state,
            Set commoditys, List aLists,
            Integer pid) {
        super();
        this.id = id;
        this.name = name;
        this.path = path;
        this.createDate = createDate;
        this.reworkDate = reworkDate;
        this.state = state;
        this.commoditys = commoditys;
        this.aLists = aLists;
        this.pid = pid;
    }
    public Integer getPid() {
        return pid;
    }
    public void setPid(Integer pid) {
        this.pid = pid;
    }
    public List getaLists() {
        return aLists;
    }
    public void setaLists(List aLists) {
        this.aLists = aLists;
    }
    public Set getCommoditys() {
        return commoditys;
    }
    public void setCommoditys(Set commoditys) {
        this.commoditys = commoditys;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPath() {
        return path;
    }
    public void setPath(String path) {
        this.path = path;
    }
    public Date getCreateDate() {
        return createDate;
    }
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }
    public Date getReworkDate() {
        return reworkDate;
    }
    public void setReworkDate(Date reworkDate) {
        this.reworkDate = reworkDate;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
                                             
}

対応するhibernateマッピングプロファイルcommodityclass.hbm.xml↓


                                  
                                  

    
      
         
      
      
      
      
      
      
      
      
        
        
      
    

商品リスト表のエンティティークラスを作成します.java↓
package com.ssh02.model;
import java.io.Serializable;
import java.util.Date;
@SuppressWarnings("serial")
public class CommodityEntity implements Serializable {
    private Integer id;
    private Integer number;
    private String name;
    private String path;
    private Float price;
    private String link;
    private Date createDate;
    private Date reworkDate;
    private Integer state;
    private CommodityClassEntity commodityclass;
                          
    public CommodityClassEntity getCommodityclass() {
        return commodityclass;
    }
    public void setCommodityclass(CommodityClassEntity commodityclass) {
        this.commodityclass = commodityclass;
    }
    public Integer getNumber() {
        return number;
    }
    public void setNumber(Integer number) {
        this.number = number;
    }
    public Float getPrice() {
        return price;
    }
    public void setPrice(Float price) {
        this.price = price;
    }
    public String getLink() {
        return link;
    }
    public void setLink(String link) {
        this.link = link;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPath() {
        return path;
    }
    public void setPath(String path) {
        this.path = path;
    }
    public Date getCreateDate() {
        return createDate;
    }
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }
    public Date getReworkDate() {
        return reworkDate;
    }
    public void setReworkDate(Date reworkDate) {
        this.reworkDate = reworkDate;
    }
    public Integer getState() {
        return state;
    }
    public void setState(Integer state) {
        this.state = state;
    }
                          
}

対応するhibernateマッピングプロファイルcommodity.hbm.xml↓


      
      

    
      
         
      
      
      
      
      
      
      
      
      
      
        
       
    

配置WEB.xmlファイル(WEB-INFディレクトリ下)




  struts2
  org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter


 struts2
 /*



  contextConfigLocation
  classpath:beans.xml



  org.springframework.web.context.ContextLoaderListener

  ssh02
  
    index.html
    index.htm
    index.jsp
    default.html
    default.htm
    default.jsp
  

Springプロファイル:beansという名前です.xml(場所がプロジェクトのsrcディレクトリ下)↓


                                                                                 
         
         
         
         
         
         
             
             
             
             
             
             
             
             
         
         
         
            
            
               
                com/ssh02/model/user.hbm.xml
                com/ssh02/model/group.hbm.xml
                com/ssh02/model/authority.hbm.xml
                com/ssh02/model/commodity.hbm.xml
                com/ssh02/model/commodityclass.hbm.xml
               
            
            
              
                hibernate.dialect=org.hibernate.dialect.MySQLDialect
                hibernate.hbm2ddl.auto=update
                hibernate.show_sql=false
                hibernate.format_sql=false
                
                javax.persistence.validation.mode=none
               
              
            
         
         
         
         
            
         
         
         
         
         
         
         
         
         
                                                                                 
         
         
         
         
         
         
                                                                                 
         
                                                                                 

struts 2プロファイル:strutsという名前です.xml(場所がプロジェクトのsrcディレクトリの下、この名前がStruts 2のデフォルト呼び出しです)↓



    
    
    
    
    
    
    
    
    
    
    
    
      
      
        /WEB-INF/view/error.jsp
       
       
       
            
       
                                                             
      
      
         /WEB-INF/view/index.jsp
         /WEB-INF/view/userlist.jsp
         /WEB-INF/view/userinfo.jsp
         /WEB-INF/view/login.jsp
      
      
      
         /WEB-INF/view/grouplist.jsp
         /WEB-INF/view/groupinfo.jsp
      
      
      
         /WEB-INF/view/authoritylist.jsp
         /WEB-INF/view/authorityinfo.jsp
      
      
       
         /WEB-INF/view/commodityclasslist.jsp
         /WEB-INF/view/commodityclassinfo.jsp
      
      
       
         /WEB-INF/view/commoditylist.jsp
         /WEB-INF/view/commodityinfo.jsp
      
      
      
        
        
          
          selectcs\[\d+\]\.id,selectcs\[\d+\]\.number,selectcs\[\d+\]\.name,selectcs\[\d+\]\.path
          ,selectcs\[\d+\]\.price,selectcs\[\d+\]\.link,selectcs\[\d+\]\.createDate,selectcs\[\d+\]\.reworkDate
          ,selectcs\[\d+\]\.state,
          
                                                                 
        
      
      
        
            /WEB-INF/view/{1}.jsp