Home
>
包头oa 论文
>
包头oa登录系统
包头oa登录系统

time:2020-09-27 08:24:07

author:重庆佰鼎科技有限公司

【Font size: big medium smail

本文由重庆佰鼎科技有限公司提供,重点介绍了oa登录系统相关内容。重庆佰鼎科技有限公司专业提供oa 论文,陕西oa,合肥oa等多项产品服务。一直秉承诚信至上,产品优先,服务优先,客户优先原则,为您提供最优质的产品服务!

oa登录系统学习主题:OA系统学习目标:1 掌握web开发项目实战,熟练使用web开发基础技术

对应作业

1. 报销管理-添加报销单-业务层

(1) 在报销主表和明细表中都有一个字段叫expid,这个字段在数据库中是利用序列获取的,但是在业务层中,我们要控制主表和明细表的expid一致,所以要先获取expid赋值给主表和明细表,那么这个expid的值怎么得到呢?

1. 首先在数据库添加序列(第一个:数据单,第二个:数据单项) 2. 在MyEclipse中先获取数据库中的下一个序列的值(seq_exp.nextval)oa登录系统

3. 然后将值添加在数据单对应的数据单Id中.

2. 报销管理-添加报销单-DAO层代码

(1) 在我们的逻辑中,要向主表添加数据,要向明细表添加数据,但是假如在向明细表添加数据的过程中,出现异常了,那么程序就中断了,但是主表的数据被添加进去了,这个问题要怎么解决呢?oa登录系统

原因:一个DML操作一个事务,事务在Dao层,这就被分为了多个事务,而不是一个,

解决:将多个操作视为一个事务,此时事务要从Dao层提升到业务层.

(2) 在我们目前的代码中,当添加明细出现问题的时候,页面还是会跳转到添加成功页面,这个问题怎么解决呢?

原因: 这是因为DBUtil中出现异常以后没有抛出.

解决: 在DBUtil.java中捕捉到的异常抛出即可.

(3) 现在的代码中,会出现另一个问题:主表数据添加成功,明细表数据添加失败,但是这些操作肯定是要么都成功,要么都失败的,那么这个问题怎么解决呢?

和问题一是一个问题.

3. 报销管理-使用ThreadLocal实现业务层事务1

(1) 说明ThreadLocal的作用?

在ThreadLocal中存入connection对象.这样就可以在业务层对业务进行回滚.

ThreadLocal中的一个对象被一个线程共享,一次用户请求,共用一个Connection对象.

4. 报销管理-使用ThreadLocal实现业务层事务2

(1) 如何保证DBUtils工具类中getConnection方法获取到的Connection对象是一个呢?

把Connection对象存放在ThreadLocal中就可以了.

(2) 在DBUtils中是否要将Connection关闭呢?那要在什么时候关闭?

在业务层中关闭Connection对象,不要再Dao层关闭.

5. 报销管理-待审报销单

(1) 简述待审报销的思路?

1. 获取登录人的ID.

2. 从数据库获取查询上级Id为登录人的报销单,然后显示在网页中

(2) 如何查询的下一级审批人是不是当前登录人的信息?

比较empId和mgrId看查是否相等.

Reprint please indicate:http://irwf.cnsoftweb.com/OA-6315.html