40.IE和火狐浏览器 对于JavaScript的支持:

在qq书签中录入了很多关于ie和火狐对于JavaScript的区别,等等不再赘述。在项目中遇到的问题记录下来。

Document.getElementByID(“XX”).value 在ie,火狐中都可行。

在火狐中,jsp页面中用到了dojo框架时,在文本框的格式中采用了numberspinner这个形式时,在火狐中使用传统的document.XX.XX.value,并不能把值传到JavaScript的function函数中,唯有通过Document.getElementByID(“XX”).value方可。

41.关于hibernate延迟加载的异常 no session or session is closed

同样在qq书签中收入了很多关于此异常和关于hibernate延迟加载机制的网址。

关于这个异常,是在延迟加载中,简单的理解就是当session已经关闭后,又出现了hibernate试图通过session从数据库中加载实际的数据集,所以报出session已关闭的错误。

但是如果我们采用了延迟加载机制,希望在一些情况下,实现非延迟加载时的功能,在提供一个完整的Bspinq对象时,把所关联的bspInqParts 信息在session关闭之后仍然可以使用。这就要采用hibernate.initialize方法,可以通过强制加载关联对象来实现这一功能。

Hibernate.initialize(inq.getBspInqParts());

Session.close();  搞定。

42. 为了实现透明化的延迟加载机制,hibernate进行了大量努力。其中包括JDK Collection接口的独立实现。

如果我们尝试用HashSet强行转化Hibernate返回的Set 型对象:

Set hset = (HashSet)user.getAddresses();

就会在运行期得到一个java.lang.ClassCastException, 实际上,此时返回的是一个Hibernate的特定Set实现“net.sf.hibernate.collection.Set”对象,而非
传统意义上的JDK Set实现。这也正是我们为什么在编写POJO时,必须用JDKCollection 接口(如Set,Map), 而非特定的JDKCollection 实现类(如HashSet、HashMap)申明Collection属性的原因。

43.验证码刷新显示问题:

在项目中验证码的刷新显示困扰了我很久,在近期得以解决。

在使用action的方法中 return null;(若return input;会有异常抛出,故下文中的src图片定位选择了用servlet进行,但缺点是servlet被执行了两遍,在以后的项目中寻求变化)

在servlet配置中为了防止被action过滤,Uri-pattern 改为VImage.jsp

在JavaScript中的src定义图片的显示时用servlet:’VImage.jsp’ +’ ?’ + Math.random();(使用随机数是为了保证刷新出来的图片不一样)

44. Unable to find 'struts.multipart.saveDir' property setting

今天在写项目的时候出现了一个这样的错误,不知道是怎么回事,后来在网上找资料发现了解决方法:

struts.multipart.saveDir没有配置。

struts.multipart.saveDir用于指定存放临时文件的文件夹,该配置写在struts.properties文件中。例如,如果在struts.properties文件加入如下代码:

struts.multipart.saveDir = /tmp

45. MyEclipse 8.x 关闭自动更新的问题.

1. Window --> Preferences --> General --> Startup and Shutdown -->找到"Automatic Updates Scheduler " 项去掉前面的勾。(不要看上面三个复选框,要在下面列表框里面靠下面一点找到)####重点注意下!!!

2. Window --> Preferences --> Myeclipse Enterprise Workbench --> Maven4Myeclipse --> Maven --> "Download repository index updates on startup" 去掉前面的勾。

46.input标签之中disable的注意:

如果<input type="text" name="productVO.type" disabled id="producttype" size="30" />存在disabled属性,那么后台action是不能接收到productVO.type的值的,去掉disabled即可。

47.hidden类型标签

hidden类型的标签,在javascript中是不能做焦点判断的。

48.ckeckbox js 全选功能name命名问题:

jsp中,当做checkbox全选功能时,其name不能命名为“XXXVO.name”,因为在js中用document.getElementsById(XXX)时,只能选中一个,而不能像name那样可以全部选中。

49.如同48:

jsp中,当做checkbox全选功能时,在js中用var user = document.forms[0].userid,当对象为多个时,user取出的是数组,而当对象为一个时,user取出的并不是数组,所以在做全选时,应该对user.length进行判断if(user.length),如果不是数组user.length返回false,再对其进行操作。

50.在sever中,关闭掉浏览器,重开之后,session丢失原因:

重新开浏览器之后,会发现原来的session会丢失,其实session在sever并没有丢失,而是重开浏览器之后session的id变了,所以浏览器会找不到session。解决办法:利用cookie将原先session的id保存进Map中,在重开浏览器之后,再通过cookie把map中的sessionId找到,然后通过id把原先session对象取出(这一步可以通过sessionListener实现)。

sessionListener主要是监听session对象的创建与销毁,当监听session创建时,通过create方法把session记入自己定义的Map对象中。通过自己定义的相应方法可以把session从Map中取出。当session销毁时,通过destroy方法把session从Map中删除,否则会造成内存的泄露。

51.通过把JSESSIONID放入cookie中,在action中会通过request.getsession自动找到原来的session。

不断更新总结中。。。 如有差错,欢迎批评指正。。。

Struts2 + Hibernate + Spring 以及javaweb模块问题解决(2)相关推荐

  1. Struts2 + Hibernate + Spring 以及javaweb模块问题解决(1)

    Struts2 + Hibernate + Spring 以及javaweb模块问题解决 1.资源文件的配置:src文件夹里面要配置,action所在的目录中也要配置. 2.<s: action ...

  2. struts2+hibernate+spring配置详解

    #struts2+hibernate+spring配置详解 struts2+hibernate+spring配置详解 哎 ,当初一个人做好难,现在终于弄好了,希望自学这个的能少走些弯路. 以下是自己配 ...

  3. Struts2+Hibernate+Spring 整合示例

    转自:https://blog.csdn.net/tkd03072010/article/details/7468769 Struts2+Hibernate+Spring 整合示例 Spring整合S ...

  4. 【struts2+hibernate+spring项目实战】实现用户登录功能(ssh)

    一.概述 从今天才开始有时间来总结总结以前自己练习的一些东西,希望总结出来对以后可以更加便捷的来学习,也希望可以帮助到正需要这些东西的同行人,一起学习,共同进步. 二. 登录功能总结 2.1.登录功能 ...

  5. 关于如何利用Struts2,Hibernate,Spring开发电子商业汇票系统

    关于如何利用Struts2,Hibernate,Spring开发电子商业汇票系统. 首先先说说电子商业汇票的种类: 1.电子银行承兑汇票 2.电子商业承兑汇票 另外电子商业汇票与纸票的区别: 电子商业 ...

  6. SSH(Struts2+Hibernate+Spring)开发策略

    很多小伙伴可能一听到框架两个字就会马上摇头,脑子里立刻闪现一个词---"拒绝",其实我也不例外,但我想告诉大家的是,当你真正掌握它时,你会发现**SSH**用起来是那么顺手,因为它 ...

  7. 【struts2+hibernate+spring项目实战】Spring计时器任务 Spring整合JavaMail(邮件发送)(ssh)

    一.常用数据频度维护 对于系统使用度较高的数据,客户在查看时希望这些数据最好先出现,此时需要为其添加排序规则.在进行排序时,使用次数成为排序的依据.因此需要设置一个字段用来描述某种数据的使用次数,也就 ...

  8. 【struts2+hibernate+spring项目实战】数据报表jxl及生成excel(ssh项目实战)

    一.数据报表jxl jxl是一款java读写office--Excel文件的工具.通过java程序进行Excel文件的读写操作. 操作Excel首先应该明确操作过程中java针对Excel文件的对象分 ...

  9. 【struts2+hibernate+spring项目实战】java监听器实现权限控制系统和资源获取优化(ssh)

    一.权限控制系统 权限控制系统即用户登录后,如果操作了不能访问的操作,系统将其拦截. 权限控制系统设计需求: 系统功能并不是所有功能都需要被控制,例如登录功能无需校验 设计方案:资源中没有出现的功能将 ...

最新文章

  1. Xcode 调试的正确打开方式——Debugging
  2. 尚学堂java 参考答案 第七章
  3. MVC如何在HTML跳页面,请问在mvc网页中,如何跳转到web Form网页?
  4. thread和threadLocal之间的关系
  5. Qt4 QRadioButton和QCheckBox用法示例
  6. 大学计算机vb基础知识6,计算机基础课-VB6选择题汇编(2011-2016)
  7. Selenium +Python项目实践(注册流程)
  8. 自制 kazzo 烧录器
  9. 使用containerd管理容器【同docker】【或称之为docker替代品】
  10. Safari Web Extension 开发(1)
  11. (转载)基于sklearn的iris数据集及简介
  12. 2021-06-22 离散数学图论复习笔记
  13. 网狐6603所有版本--新金典版本最新漏洞。
  14. 通过页面验证hadoop是否安装成功的方法
  15. excel不显示0_Excel中把0显示为空白的三种解决方法
  16. Python告诉你《隐秘的角落》好看在哪里
  17. mysql默认使用悲观锁_mysql乐观锁和悲观锁详解
  18. 《 算法精解:c语言描述》chm 电子书下载
  19. Excel 2010 SQL应用038 以数值范围为条件的查询
  20. 最简单的WIN+R自定义快捷指令,清爽桌面。

热门文章

  1. Python基础----集合
  2. 吴恩达深度学习2.1练习_Improving Deep Neural Networks_initialization
  3. 【Zabbix】Zabbix触发器的告警原理及创建方法
  4. Vsftp在Ubuntu的安装与配置
  5. 质数分布是否随机关乎安全大事
  6. 1132: 零起点学算法39——多组测试数据(a+b)
  7. Windows 10企业批量部署实战之Windows 10客户端部署
  8. Android的手机震动
  9. shim和polyfill有什么区别?
  10. Linq快速入门——扩展方法