一个中型OA系统的架构过程(一)

  最近在作一图(GIS)文(MIS)一体化办公系统的架构,在这里将其架构设计写出来,供大家板砖板砖。系统采用DotNet作为其开发语言,C/S结构,分多层开发模式。以下部分为系统在进行详细分析前所作的架构。

 一、大框架

   三层结构,界面层,逻辑层,数据层。其中界面层命名为:UI,逻辑层又分为几层,业务外观(BusinessFacadeProjects)、业务规则(BusinessRuleProjects)、数据访问(DataAccessProjects)三层,其实算起来,系统已经不是严格的三层模式了,已经算作是多层系统了。

  设计思想说明:界面层与业务外观层进入数据交互,业务外观允许对业务规则或者数据访问层进行数据交互,业务规则进允许对数据访问层进行交互。也就是说用户所对界面进行的所有操作,都先通过业务外观层进入,不管逻辑层如何处理,最后都是通过数据访问层与数据库进行交互,同理,不管要从数据库取任何数据,先通过数据访问层再经过逻辑层的处理,再从业务外观层“丢”给界面层。为何如此设计?多层架构思想在这里就不多说了,本人在这里考虑的是C/S与B/S的统一,各种数据库的统一,例如,如果我的系统是C/S,我想改为B/S,那么由于有业务外观层统一为数据“入口”,那么我要改的东西仅仅是添加B/S界面层的代码;又,如果你把你的数据库从Sql Server改为Oracle,那么你只要导入数据库,然后改一下数据访问层的代码,就可以了,当然了,这里的前提是你

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
好的,我可以为您提供一个简单的OA系统的Java代码示例: ``` import java.util.ArrayList; import java.util.List; public class OASystem { private List<Employee> employees; private List<Task> tasks; public OASystem() { employees = new ArrayList<>(); tasks = new ArrayList<>(); } public void addEmployee(Employee employee) { employees.add(employee); } public void addTask(Task task) { tasks.add(task); } public void assignTask(Task task, Employee employee) { if (tasks.contains(task) && employees.contains(employee)) { task.setAssignedTo(employee); } } public List<Task> getTasksForEmployee(Employee employee) { List<Task> tasksForEmployee = new ArrayList<>(); for (Task task : tasks) { if (task.getAssignedTo() == employee) { tasksForEmployee.add(task); } } return tasksForEmployee; } } class Employee { private String name; private String id; public Employee(String name, String id) { this.name = name; this.id = id; } public String getName() { return name; } public String getId() { return id; } } class Task { private String description; private Employee assignedTo; public Task(String description) { this.description = description; } public String getDescription() { return description; } public Employee getAssignedTo() { return assignedTo; } public void setAssignedTo(Employee assignedTo) { this.assignedTo = assignedTo; } } ``` 这个OA系统包含了Employee和Task两个类,以及一个OASystem类来管理员工和任务。您可以使用addEmployee和addTask方法添加员工和任务,使用assignTask方法将任务分配给员工,使用getTasksForEmployee方法获取某个员工的任务列表。当然,这只是一个简单的示例,实际的OA系统可能会更加复杂。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值