jbpm与OA项目开发过程实录 (三)
2013-10-19 16:23
316 查看
1、一般情况下,如果数据要进行回显,则把数据放入对象栈中,页面上可以根据name属性的值进行回显 如果把数据放入到map栈中,则页面根据value的值进行回显,而且value=“%{ognl表达式}” 2、strtus2的模型驱动一般不会把其中的数据直接放入数据库,而是会赋值给一个相应的对象, 3、一个参数在连续的几个压面中用到,怎样传值 *在页面中设置隐藏域 *利用cookie 4、chain与rediection的区别 5、泛型: *泛型是java中的类型 *java.lang.Type可以代表java中所有类型 *泛型是被参数化的类型 *类型----Class *被参数化-Class类型可以传递参数 *泛型存在的意义 *多态的不足 实际的类型和需要的类型有可能不匹配,则会报类型转换异常 *泛型可以再编译的时候告诉Class类型,传递的参数是什么类型, 如果类型错误,则会在编译的时候报错 *泛型所表现的形式 *ArrayLisy<T> *ArrayList是Class类型 *T是一个形式参数,在传实参的时候确定其的具体值 *在创建ArrayList对象的时候就确定实参 *表现:ArrayList <Person> a = new ArrayList<Person>(); *public Interface PersonDao<T>{} *public class PersonDaoImpl implements PersonDao<Person>{} *谁上面加的T谁给T传值 *public class Person<? extends Cooleaction>传递的参数只能是结合的子类 *泛型的用法 *T传过来是要用的 *public class Person<T>{} 那么这个T可以用在字段和方法(参数和返回值)上面 *getClassGenericSuperclass()代表子类获取父类的泛型类 6、页面显示多表的时候,该怎么去做更方便 *现在有一个用户表一个订单表,要求把用户和用户的订单全部显示出来? *get(from user) ----- user.getOrders()效率低 *框架排错技巧 整合s-h s-s2 思路一定要清晰,逐步排错 *当你觉得一件事很不好做的时候吗,你坚持个30天,习惯了就不是难事了 *一个泛型的类不能实例化,所以不需要加注解 用户查询 *单表的查询 *页面显示的字段和数据库中字段的比太少 投影:select new Person_Select(pid,pname) from Person 当select语句仅仅选择查询持久化类的部分属性时,Hibernate返回的查询结果为关系数据, 而非持久化类对象。持久化对象会一直位于session的缓存中,而应用程序若不再引用关系数据, 就会释放所占的内存,可以利用这个原理提高查询的性能。 如:只需显示一个对象中的几个属性,则可考虑定义一个新的BEAN,保存查询数据,且操作上是面向对象的方式。 *页面显示的额字段和数据库中字段差不多 from Person查询 *多表查询(根据页面来决定) *客户订单表 *在一个页面中显示客户信息,在客户信息中有一个超级链接,点击,在另外一个页面中显示该客户的订单信息 *后台:from Customer *一对多集合默认的加载模式是懒加载,所以在执行上述hql语句的时候并没有加载订单信息, *点击超级链接的时候 *后台:from Order o from o.customer.cid = ? 利用这样的hql语句就能够加载订单信息 *在一个页面中既显示客户信息又显示订单信息 *使用迫切左外连接:让结构变好一点,只发出一条sql语句 *要显示的数据来自于多张表怎么办? *三张表(一对多,多对多)采用三张表迫切左外连接的方式来做 *若果页面上字段比数据库中少的多怎么办? 后台from User:字段太多 user.getDeparts();--部门 user.getPosts()--岗位 在不影响性能的情况下,新建一个javaBean 显示username,dname select new UserView(u.username,d.dname) from User u inner join u.depart d 显示username,dname,pname select new UserView (u.username,u.posts,d.dname)这里hibernate是不支持的,因为post是个集合 如果有很多用户,一个用户有多个岗位,既不是要查询很多次? 三张表关联:这样发出sql语句就减少(方案:抓取策略) from User u left join fetch u.depart d left join fetch u.posts p 这里会有重复的查询出来:把查询的集合放在set里面 *页面提交问题: 一个页面提交的数据属于使用单个表:使用模型驱动 属于多张表的字段 注册员工 *利用模型驱动和属性驱动的模式 属性驱动的数据类型是怎么获取转换的呢? V-String -> A->Long这个过程是怎么样获取转换的呢? multiSelectIntercept拦截器 *vo-bo 如果工作繁琐的话 7、在session环境下进行对象的更新操作,需不需要进行update操作? *增删改,无论你处不处于session环境中,你首先必须处于事务中,没有事务哪来的增删改 session是否关闭,update需要事务,反正我service调用完毕,事务关闭了,所以说需要进行 update操作,只有session环境是执行不了增删改查的
相关文章推荐
- jbpm与OA项目开发过程实录 (一)
- jbpm与OA项目开发过程实录 (四)
- jbpm与OA项目开发过程实录 (二)
- Java项目开发过程实录
- 软件项目需求开发过程实践之业务建模用例图
- 如果把项目开发管理看成是坐公车的过程,记得一定要安排一个逆向的位置
- 通达OA 公告管理模块增加管理项目,使用OA系统组件开发(图文)
- react+react-router+react-redux全家桶小项目开发过程分享
- 最近项目报表开发中写的储存过程-成绩纵向对比
- J2EE Oa项目上传服务器出现的乱码解决过程
- java:一个项目的开发过程(转)
- 普通软件项目开发过程规范(二)—— 启动和计划阶段
- 一个用CLR写存储过程的项目回顾 (一) 开发过程
- 使用SpringSide 3.1.4.3开发Web项目的全过程(下)
- 在准备项目发布文件时发现了一件坑爹的事情,也是开发过程中的事故
- 国内软件业“下一波”的主题应该是:开发过程(Process),项目管理(PM)和质量保证(QA)
- 经验谈一个项目的开发过程及成员组成
- 开发过程中两种项目管理方式
- 【原】项目开发过程管理的关键是需求开发与管理,如何监控? 文/谷雨霖
- 软件开发项目计划编制过程[转]