博客系统的设计与实现(完整)(6)

2018-11-23 20:40

东华理工大学长江学院毕业设计 第6章 系统详细设计与实现

(8) 创建Action:在src包下新建一个包actions。 (9) 创建jsp页面。

6.2 系统编码设计

6.2.1 编写持久对象层类

该层由若干实现类即普通的JAVA类(PO)组成,这些需要在相应的映射文件中配置,可以在数据访问层的实现类中通过Hibernate框架来访问持久对象层。

本系统共有七个数据库表,分别有七个实体类和它们映射。每个Java类又对应一个.hbm.xml映射文件,来将java类的实体变量与数据库的字段映射在一起。以文章表为例:

(1) Article.java文件:

package entity;

import java.io.Serializable;

public class Article implements Serializable{

private int articleId; // 文章的ID private int articleTypeId; // 文章类型的ID private int userId; // 注册用户的ID private String articleTitle=\ // 文章标题 private String articleContent=\ // 文章内容 private String articleSendTime=\ // 发表文章的时间 private String articleCreate=\ // 文章的来源 private String articleInfo=\ // 文章的描述信息 // 每个属性的getter 和 setter方法 public int getArticleId() { return articleId; }

public int getUserId() { return userId; }

public void setUserId(int userId) { this.userId = userId; }

public void setArticleId(int articleId) { this.articleId = articleId; }

public int getArticleTypeId() { return articleTypeId;

21

东华理工大学长江学院毕业设计 第6章 系统详细设计与实现

}

}

public void setArticleTypeId(int articleTypeId) { this.articleTypeId = articleTypeId; }

public String getArticleTitle() { return articleTitle; }

public void setArticleTitle(String articleTitle) { this.articleTitle = articleTitle; }

public String getArticleContent() { return articleContent; }

public void setArticleContent(String articleContent) { this.articleContent = articleContent; }

public String getArticleSendTime() { return articleSendTime; }

public void setArticleSendTime(String articleSendTime) { this.articleSendTime = articleSendTime; }

public String getArticleCreate() { return articleCreate; }

public void setArticleCreate(String articleCreate) { this.articleCreate = articleCreate; }

public String getArticleInfo() { return articleInfo; }

public void setArticleInfo(String articleInfo) { this.articleInfo = articleInfo; }

(2) Article.hbm.xml文件:

22

东华理工大学长江学院毕业设计 第6章 系统详细设计与实现

6.2.2 编写数据访问层类

数据访问层类即DAO层的类,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。本节以与好友表交互为例:

FriendDao.java文件:

package dao;

import java.util.List;

import org.springframework.orm.hibernate3.HibernateTemplate; import entity.Friend;

public class FriendDao extends DAOSupport {

public FriendDao(HibernateTemplate template) { super(template); }

//功能 修改好友信息

public boolean operationFriend(String operation, Friend single){

23

东华理工大学长江学院毕业设计 第6章 系统详细设计与实现

}

if(operation == null) operation=\ if(operation.equals(\ template.save(single); if(operation.equals(\ template.update(single); if(operation.equals(\ template.delete(single); return true;

//功能 查询所有好友

public List queryFriend(int id) { String hql = \friendName\

return template.find(hql); }

//功能 根据ID 查询某个好友的详细信息 public Friend queryFriendSingle(int id) { return (Friend)template.get(Friend.class, id); } }

6.2.3 编写业务逻辑层类

业务逻辑层即Service层,负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。以好友表为例:

FriendService.java文件:

package services; import java.util.List; import dao.FriendDao; import entity.Friend;

public class FriendService { private FriendDao friendDao; public FriendService(FriendDao friendDao) { this.friendDao = friendDao; }

// 添加好友

public boolean addFriend(Friend single) { return friendDao.operationFriend(\}

// 删除好友

public boolean deleteFriend(Friend single) { return friendDao.operationFriend(\

24

东华理工大学长江学院毕业设计 第6章 系统详细设计与实现

}

}

// 修改好友

public boolean updateFriend(Friend single) { return friendDao.operationFriend(\}

// 获取指定id的好友

public Friend getFriendInfo(int id) { return friendDao.queryFriendSingle(id); }

// 列出好友

public List queryFriendList(int id){ return friendDao.queryFriend(id); }

6.2.4 编写WEB层类

该层主要包括JSP页面、MVC中的“C”(Control),其中“C”就是Struts2中的Aciton类。在Action类中主要负责调用业务逻辑层的组件,并返回相应的结果(result)。

(1) Action类的编写 LoginAction.java文件:

package actions;

import services.UserService;

import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; import entity.User;

public class LoginAction extends ActionSupport { private User user;

private UserService userService; public User getUser() { return user; }

public void setUser(User user) { this.user = user; }

public UserService getUserService() { return userService; }

public void setUserService(UserService userService) { this.userService = userService; }

public String execute() throws Exception { int id = this.userService.verifyUser(user);

25


博客系统的设计与实现(完整)(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:商场综合应急预案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: