model、dao、 service 和Comtroll層的關係

首先這是如今最基本的分層方式,結合了SSH架構。modle層就是對應的數據庫表的實體類。
Dao層是使用了Hibernate鏈接數據庫、操做數據庫(增刪改查)。
Service層:引用對應的Dao數據庫操做,在這裏能夠編寫本身須要的代碼(好比簡單的判斷)。
Action層:引用對應的Service層,在這裏結合Struts的配置文件,跳轉到指定的頁面,固然也能接受頁面傳遞的請求數據,也能夠作些計算處理。
以上的Hibernate,Struts,都須要注入到Spring的配置文件中,Spring把這些聯繫起來,成爲一個總體。

model層java

實體類,也就是把數據庫表的字段映射爲你的對象的各個屬性
如你A表有,id,name,password三個屬性
你Model裏面新建A class
給他 ID,Name,Password三個屬性
而後作和數據表字段映射
LINQ TO SQL的時候就會自動讀取映射的字段並轉換爲實體類的屬性值數據庫

附:代碼session

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

@Entity
@Table(name = "tab_adminuser")
public class AdminUser
{
	private Integer id;
	private String adminName;
	private String passwd;

	@Id
	@GeneratedValue(generator = "generator")
	@GenericGenerator(name = "generator", strategy = "native")
	public Integer getId()
	{
		return id;
	}

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

	@Column(length = 200)
	public String getAdminName()
	{
		return adminName;
	}

	public void setAdminName(String adminName)
	{
		this.adminName = adminName;
	}

	@Column(length = 200)
	public String getPasswd()
	{
		return passwd;
	}

	public void setPasswd(String passwd)
	{
		this.passwd = passwd;
	}
}

Dao層架構

new一個interface文件this

public interface AdminUserDao
{
    public void add(AdminUser user);
}

Dao#Implspa

new一個class,interface處add  Dao文件hibernate

import org.hibernate.SessionFactory;
public class AdminUserDaoImpl implements AdminUserDao
{
    SessionFactory sessionFactory;

    public void setSessionFactory(SessionFactory sessionFactory)
    {
        this.sessionFactory = sessionFactory;
    }

    public void add(AdminUser user)
    {
        sessionFactory.getCurrentSession().save(user);
    }

}

Service 的建立和Dao同樣,ServiceImpl的建立和DaoImpl同樣code

ServiceImpl以下:對象

public class AdminUserServiceImpl implements AdminUserService
{
    AdminUserDao adminUserDao;

    public void setAdminUserDao(AdminUserDao adminUserDao)
    {
        this.adminUserDao = adminUserDao;
    }

    public void add(AdminUser user)
    {
        adminUserDao.add(user);
    }

}


Controll聲明一個Service就後就能夠調用Service中的方法,Service調Dao層,Dao操做數據。blog

相關文章
相關標籤/搜索