Posted on 2007-09-30 09:50
詩特林 閱讀(13704)
評論(4) 編輯 收藏 所屬分類:
Struts
Struts2+Spring2+Hibernate3 web應用示例(三)
五、 業務邏輯層
在業務邏輯層需要認真思考每個業務邏輯所能用到的持久層對象和DAO。DAO層之上是業務邏輯層,DAO類可以有很多個,但業務邏輯類應該只有一個,可以在業務邏輯類中調用各個DAO類進行操作。
1、創建服務接口類IBookService
1、 創建服務接口類IBookService
package com.sterning.books.services.iface;

import java.util.List;

import com.sterning.books.model.Books;


public interface IBooksService
{
List getAll();//獲得所有記錄
List getBooks(int pageSize, int startRow);//獲得所有記錄
int getRows();//獲得總行數
int getRows(String fieldname,String value);//獲得總行數
List queryBooks(String fieldname,String value);//根據條件查詢
List getBooks(String fieldname,String value,int pageSize, int startRow);//根據條件查詢
Books getBook(String bookId);//根據ID獲得記錄
String getMaxID();//獲得最大ID值
void addBook(Books pd);//添加記錄
void updateBook(Books pd);//修改記錄
void deleteBook(String bookId);//刪除記錄
}

com.sterning.books.services.iface.IBookService.java
2、實現此接口類:BookService:
package com.sterning.books.services;

import java.util.List;

import com.sterning.books.dao.iface.BooksDao;
import com.sterning.books.model.Books;
import com.sterning.books.services.iface.IBooksService;


public class BooksService implements IBooksService
{
private BooksDao booksDao;

public BooksService()
{}

/** *//**
* 函數說明:添加信息
* 參數說明:對象
* 返回值:
*/

public void addBook(Books book)
{
booksDao.addBook(book);
}


/** *//**
* 函數說明:刪除信息
* 參數說明: 對象
* 返回值:
*/

public void deleteBook(String bookId)
{
Books book=booksDao.getBook(bookId);
booksDao.deleteBook(book);
}


/** *//**
* 函數說明:獲得所有的信息
* 參數說明:
* 返回值:信息的集合
*/

public List getAll()
{
return booksDao.getAll();
}

/** *//**
* 函數說明:獲得總行數
* 參數說明:
* 返回值:總行數
*/

public int getRows()
{
return booksDao.getRows();
}

/** *//**
* 函數說明:獲得所有的信息
* 參數說明:
* 返回值:信息的集合
*/

public List getBooks(int pageSize, int startRow)
{
return booksDao.getBooks(pageSize, startRow);
}


/** *//**
* 函數說明:獲得一條的信息
* 參數說明: ID
* 返回值:對象
*/

public Books getBook(String bookId)
{
return booksDao.getBook(bookId);
}


/** *//**
* 函數說明:獲得最大ID
* 參數說明:
* 返回值:最大ID
*/

public String getMaxID()
{
return booksDao.getMaxID();
}


/** *//**
* 函數說明:修改信息
* 參數說明: 對象
* 返回值:
*/

public void updateBook(Books book)
{
booksDao.updateBook(book);
}


/** *//**
* 函數說明:查詢信息
* 參數說明: 集合
* 返回值:
*/

public List queryBooks(String fieldname,String value)
{
return booksDao.queryBooks(fieldname, value);
}

/** *//**
* 函數說明:獲得總行數
* 參數說明:
* 返回值:總行數
*/

public int getRows(String fieldname,String value)
{
return booksDao.getRows(fieldname, value);
}

/** *//**
* 函數說明:查詢信息
* 參數說明: 集合
* 返回值:
*/

public List getBooks(String fieldname,String value,int pageSize, int startRow)
{
return booksDao.getBooks(fieldname, value,pageSize,startRow);
}


public BooksDao getBooksDao()
{
return booksDao;
}


public void setBooksDao(BooksDao booksDao)
{
this.booksDao = booksDao;
}

}

com.sterning.books.services.BookService.java
未完待續 。。。。。。