第四章 系统实施
一、项目工程目录结构 1. 项目工程整体目录结构
在项目开发中,项目工程的整体目录结构,在一定程度上给代码编写提供了一种编码规范,好的目录结构能让系统在系统结构层次上清晰合理,更能让开发人员快速准确找到目标程序,大大方便了程序代码的编程以及单元测试。如下为工程整体目录结构在Myeclipse中视图(如图4-1)。
图:4-1工程目录结构图
注:community为web工程名;src目录包含整个项目的各个模块功能后台代码;test目录包含各个模块单元测试代码;WebRoot目录包含前台所有相关内容。 2.项目src目录结构
src目录包含整个项目的各个模块功能后台代码,包的结构层次如图4-2所示
图4-2 src目录结构图
13
3.项目test目录结构
test目录包含各个模块单元测试代码,包的结构层次如图4-3所示
图4-3 test目录结构图
4.项目WebRoot目录结构
WebRoot目录包含各个模块的jsp页面、css(CSS样式文件夹)文件夹、images(图片文件夹)文件夹、manager(管理员页面文件夹)文件夹、user(用户页面文件夹)文件夹、WEB-INF文件夹、以及webpart文件夹。目录结构层次如图4-4所示
图4-4 WebRoot目录结构图
二、程序代码编写(部分代码)
1. Hibernate持久化对象类及对象关系持久化映射文件 User对象POJO类:User.java
package com.community.beans; import java.util.Date; public class User {
private String userId; //用户ID
14
private String userName; //用户姓名 private String userPassword; //用户密码 private String sex; //用户性别 private Integer age; //年龄 private String address; //住址 private String email; //邮件地址 private Date regTime; //用户注册时间 public String getUserId() { return userId; }
public void setUserId(String userId) { this.userId = userId; }
//所有属性的setter和getter方法 }
User对象POJO类的O/R映射文件:User.hbm.xml
15
2. struts2.0实现控制层action类 用户登陆action类:LoginAction.java //用户登陆Action
public class LoginAction extends ActionSupport {
16
private String userId; //获取用户ID private String userPassword; //获取用户密码 private UserService userService; //调用user服务接口 //setter、getter方法
@SuppressWarnings(\ @Override
public String execute() throws Exception {
User user = this.userService.findById(this.userId); //根据用户
ID查询
if (null == user) {
addActionError(\用户名错误\
return INPUT; //user为空则返回信息\用户
名错误\ 校验 } }
17
}
if (this.userPassword.equals(user.getUserPassword())) {
Map map = ActionContext.getContext().getSession(); map.put(\
return SUCCESS; //如果user不空,则进行密码
} else { }
addActionError(\密码错误\return INPUT;