整合过程中出现问题记录:

1、The import javax.servlet.http.HttpServletRequest cannot be resolved

  解决办法:在tomcat的lib目录下找到 servlet-api.jar 加载classpath下面

2、Bean named '*' must be of type [*], but was actually of type [$Proxy16]

  原来在定义Dao时,没有用接口,而直接使用的是Dao的实现类就会导致这种错误

3、整合中每一个action默认都是单例模式所以在action中必须加上@scope("prototype"),

  否则这个action中数据就会被所有用户所有线程共享

4、springAOP的使用 引入aopalliance-1.0.jar 自己写一个类实现MethodInterceptor 重写 invoke方法

  1. @SuppressWarnings("serial")
  2. public class MyLoginInterceptor implements MethodInterceptor {
  3.  
  4. @Override
  5. public Object invoke(MethodInvocation invoke) throws Throwable {
  6. String methodname = invoke.getMethod().getName();
  7. System.out.println(methodname);
  8. return invoke.proceed();
  9. }
  10.  
  11. }

在applicationContext.xml中配置

  1. <bean id="springMethodInterceptor" class="com.interceptor.MyLoginInterceptor" ></bean>
  2. <aop:config>
  3. //切入点
  4.   <aop:pointcut id="loginPoint" expression="execution(public * com.action.*.*(..)) "/>
  5.   在该切入点使用自定义拦截器
  6.   <aop:advisor pointcut-ref="loginPoint" advice-ref="springMethodInterceptor"/>
  7. </aop:config>

即可实现拦截com.action.*.*下面任何方法

5、通常在使用struts2的时候使用spring的aop代理会使struts2无法获取到上下文信息,从而使参数传送失败,解决这个问题的办法就是在配置aop的时候加上 proxy-target-class="true" 即:

  1. <aop:config proxy-target-class="true">
  2. <aop:pointcut id="loginPoint" expression="execution(public * com.action.*.*(..)) "/>
  3. <aop:advisor pointcut-ref="loginPoint" advice-ref="springMethodInterceptor"/>
  4. </aop:config>

就ok了!!!

6、在@manytoone设置了fetch为lazy后出现了 com.entity.User_$$_javassist_0 cannot be cast to javassist.util.proxy.Proxy异常 百度了一下

  发现是 javassit 包冲突 去除javassist-3.11.0-GA.jar包即可

7、在一对多双向级联时 我想删除一方 在级联删除多方(通常会报 外键关联不能删除的错误) (比如删除一个帖子的同时将这个帖子的所有评论也删除)解决方法:

  先将这个帖子load出来 ,在进行删除该帖子

  1. @Override
  2. @Transactional(propagation=Propagation.REQUIRED)
  3. public void deletePost(Post post) {
  4. Post p = this.ht.get(Post.class, post.getPostid());
  5. this.ht.delete(p);
  6. }

8、 org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.entity.User#7826ed76-7ca8-4f44-86fe-bc0ab6e6e984]

user - post 查询user时 会将user表中 postid 取出到 post中查询 发现post中没有 该记录 出错

S2S4H整合注意问题的更多相关文章

  1. [原创]mybatis中整合ehcache缓存框架的使用

    mybatis整合ehcache缓存框架的使用 mybaits的二级缓存是mapper范围级别,除了在SqlMapConfig.xml设置二级缓存的总开关,还要在具体的mapper.xml中开启二级缓 ...

  2. kindeditor4整合SyntaxHighlighter,让代码亮起来

    这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代码高亮,因为SyntaxHighlighter的应用非常广泛,所以将kindeditor默认的prettify替换 ...

  3. spring源码分析之freemarker整合

    FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页.电子邮件.配置文件.源代码等)的通用工具. 它不是面向最终用户的,而是一个Java类库,是一款程 ...

  4. FullCalendar应用——整合农历节气和节日

    FullCalendar用来做日程管理功能非常强大,但是唯一不足的地方是没有将中国农历历法加进去,今天我将结合实例和大家分享如何将中国农历中的节气和节日整合到FullCalendar中,从而增强其实用 ...

  5. SAP CRM 将组件整合至导航栏中

    到现在,我们已经可以让组件独立地显示.我们只是运行它.让它显示在Web UI中.让我们把组件整合进导航栏,使我们可以在正常登录Web UI时访问它. 步骤一: 为你的UI组件主窗体创建一个内向插件. ...

  6. Atitit.你这些项目不都是模板吗?不是原创  集成和整合的方式大总结

    Atitit.你这些项目不都是模板吗?不是原创  集成和整合的方式大总结 1.1. 乔布斯的名言:创新即整合(Creativity is just connecting things).1 1.2. ...

  7. github入门到上传本地项目【网上资源整合】

    [在原文章的基础上,修改了描述的不够详细的地方,对内容进行了扩充,整合了网上的一些资料] [内容主要来自http://www.cnblogs.com/specter45/p/github.html#g ...

  8. 三大框架SSH整合

    三大框架SSH整合 -------------------------------Spring整合Hibernate------------------------------- 一.为什么要整合Hi ...

  9. SSH框架整合(代码加文字解释)

    一.创建数据库并设置编码. A) create database oa default character set utf8. 二.MyEclipse工程 A) 在Myeclipse里创建web工程, ...

随机推荐

  1. 洛谷—— P2884 [USACO07MAR]每月的费用Monthly Expense

    https://www.luogu.org/problemnew/show/P2884 题目描述 Farmer John is an astounding accounting wizard and ...

  2. Java中的文件上传(原始Servlet实现)

    从原始的Servlet来实现文件的上传,代码如下: 参考:https://my.oschina.net/Barudisshu/blog/150026 采用的是Multipart/form-data的方 ...

  3. html特殊字符编码问题导致的细节问题

    今天在写前端html时,一个a标签的链接地址,由于链接地址需要给后台传参数,因此带了部分url参数: 在html源码里写的连接地址是: http://域名/bidder/noticesearch?no ...

  4. Mac OS X上使用Wireshark抓包

    Wireshark针对UNIX Like系统的GUI发行版界面采用的是X Window(1987年更改X版本到X11).Mac OS X在Mountain Lion之后放弃X11,取而代之的是开源的X ...

  5. 第十八章 Python批量管理主机(paramiko、fabric与pexpect)

    这个人的文章不错:http://lizhenliang.blog.51cto.com/all/7876557 转载:http://lizhenliang.blog.51cto.com/7876557/ ...

  6. circular-array-loop(蛮难的)

    https://leetcode.com/problems/circular-array-loop/ 题目蛮难的,有一些坑. 前后两个指针追赶找环的方法,基本可以归结为一种定式.可以多总结. pack ...

  7. 给java类加static修饰编译器会说什么?

    Illegal modifier for the class XXX;only public abstract & final are permitted.

  8. AAuto如何设置定时器

    在设计视图中(一定要有个Form)点击左下角的功能组件   点击定时器即可切换到代码视图,并添加如下代码.其中我每隔一秒改变一下winform.static2.text的文本值      

  9. 【AngularJS】【03】使用AngularJS进行开发

    看不到PPT的请自行解决DNS污染问题.

  10. Python获取免费的可用代理

    Python获取免费的可用代理 在使用爬虫多次爬取同一站点时,常常会被站点的ip反爬虫机制给禁掉,这时就能够通过使用代理来解决.眼下网上有非常多提供最新免费代理列表的站点.这些列表里非常多的代理主机是 ...