毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 论文 >> 正文

房地产信息管理系统 第8页

更新时间:2009-5-5:  来源:毕业论文
房地产信息管理系统 第8页
详细设计与实现
6.1人事管理
人事管理的功能是实现对当前用户密码的修改,以及对用户档案和权限的管理(增、删、改、查)。
6.1.1 局部ER模型
 

图6-1 人事管理局部ER图

6.1.2 相关数据表

表6-1:用户数据表
序号 列名 数据类型 长度 主键 外键 允许空 字段说明
1 user_id int 10 √   用户编号(自增)
2 user_name varchar 20    用户名称
3 user_password varchar 20    用户密码
4 user_sex varchar 20    用户性别
5 user_telephone varchar 20    用户电话
6 user_email varchar 20    用户E-Mail
7 position_id int 10  √  权限编号

表6-2:权限数据表
序号 列名 数据类型 长度 主键 外键 允许空 字段说明
1 position_id int 10 √   权限编号(自增)
2 position_name varchar 20    权限名称
3 position_set varchar 20    权限设置

6.1.3 具体实现
(1)MVC结构和工作流程
 
                               图6-2  MVC结构图
根据上图,相应的工作流程说明如下:
① View  Controller
根据页面上相应的按钮,而产生不同的url地址,例如工程管理中的新增按钮对应的url为project?fun=add(这里的参数fun还可为select、update、delete以对应查询、更新、删除功能,而在进行新增、更新功能前将通过正则表达式对输入格式进行验证)。再根据url中的project,与web.xml进行匹配,成功后就由所匹配的Servlet进行处理。
② Controller  Model
在Servlet中则根据所传的参数fun的值,调用DAO实现类的不同方法。而方法中需要的参数信息,则由request对象通过getParameter()方法,从用户在页面的对应输入栏中得到。方法执行完成后,将返回值通过request或session对象通过setAttribute()方法保存。最后跳转到对应页面。而对于除了查询之外的方法,如果方法执行成功则跳转到成功页面,失败则跳转到失败页面。
③ Model  View
在页面中,通过<%%>代码段,得到保存在request或session对象的attribute。并通过处理该attribute的值,对页面进行更新。最后将更新完成后的页面展现给用户。

(2)基于MVC的三层模式实现
由于该实现的各部分实现逻辑相同,所以后面将以用户档案管理为例,进行进一步的说明。
① Model——模型层
建立数据库连接对象,使用的是mysql数据库,代码如下:
package net.sanxiau.dbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Conn {
 private static Connection conn = null;

 public static Connection getConnection() {
   try {
   Class.forName("com.mysql.jdbc.Driver");//加载驱动包
//指定要连接的数据库的url
String url = "jdbc:mysql://localhost:3306/system";
   String user = "root";
   String password = "root";
   //得到指定连接
   conn = DriverManager.getConnection(url, user, password);
  } catch (ClassNotFoundException e) {
   e.printStackTrace();
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return conn;
 }

 public static void closeConn() {
  try {
   conn.close();
  } catch (SQLException e) {
   e.printStackTrace();
  }
 }
}
根据数据库中各表的结构,创建相应的POJO类,下列代码为对应的user表的类:
package net.sanxiau.bean;

public class User {
  private int user_id;
  private String user_name;
  private String user_sex;
  private String user_telephone;
  private String user_email;
  private int position_id;
  private String position_name;

 public int getUser_id() {
  return user_id;
 }

 public void setUser_id(int user_id) {
  this.user_id = user_id;
 }

 public String getUser_name() {
  return user_name;
 }

 public void setUser_name(String user_name) {
  this.user_name = user_name;
 }

 public String getUser_sex() {
  return user_sex;
 }

 public void setUser_sex(String user_sex) {
  this.user_sex = user_sex;
 }

 public String getUser_telephone() {
  return user_telephone;
 }

 public void setUser_telephone(String user_telephone) {
  this.user_telephone = user_telephone;
 }

 public String getUser_email() {
  return user_email;
 }

 public String getPosition_name() {
  return position_name;
 }

 public void setPosition_name(String position_name) {
  this.position_name = position_name;
 }

 public void setUser_email(String user_email) {
  this.user_email = user_email;
 }

 public int getPosition_id() {
  return position_id;
 }

 public void setPosition_id(int position_id) {
  this.position_id = position_id;
 }
}
其中各私有的变量对应不同的列,并生成setter和getter方法。

定义DAO接口,其中定义业务上需要实现的各种方法,代码如下:
package net.sanxiau.dao;www.youerw.com
import java.util.List;
import net.sanxiau.bean.User;

public interface UserDao {
 //密码更新
 public void updateChange(int currentuser_id, String password); public List<User> getAllUser();//查询全部
//按条件查询
 public List<User> selectUserByCondition(String userName, String userSex, String userTelephone, String userEmail,int positionId); public int addUser(String userName, String userSex, String userTelephone, String userEmail,int positionId);//增加
 public int updateUser(int userId, String userName, String userSex, String userTelephone, String userEmail,int positionId);//更新
 public int deleteUser(int userId);//删除
 
 public String getErrors();
 public void setErrors(String error);
}
注:方法中的参数,完全可以封装在一个User对象中

 此DAO接口中定义了的方法有:查询全部、按条件查询、增加、更新、删除这五个基本操作和用于设置和得到出错信息的setter,getter方法。在定义了DAO接口后,就是DAO接口的实现类,其实现了接口中的所以方法,真正的完成业务逻辑。

下面的部分代码实现的是对user的新增功能:
public int addUser(String userName, String userSex,
   String userTelephone, String userEmail, int positionId) {
  int num = 0;
  try {
//定义要执行的sql语句
String sql = "insert into user (user_name, user_password, user_sex, user_telephone, user_email, position_id) values (?, ?, ?, ?, ?, ?)";

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

房地产信息管理系统 第8页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。