打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
培训项目总结java框架

    springmvc对静态资源的映射

    <mvc:resources mapping="/js/**" location="/resources/js/" />

    <mvc:resources mapping="/css/**" location="/resources/css/" />

    <mvc:resources mapping="/img/**" location="/resources/img/" />


springmvc静态资源访问的三种方式:https://www.cnblogs.com/caoyc/p/5639078.html

web.xml

1、*.do *.action 拦截以.do结尾的请求 (不拦截 jsp png jpg .js .css)

2、/ 拦截所有请求(不拦截.jsp) 建议使用此种 方式 (拦截 .js.css .png) (放行静态资源)

3、/* 拦截所有请求(包括.jsp) 此种方式 不建议使用


无法存数据库

spring和hibernate整合,save,delete,update,失效,数据无法保存进数据库,或者没有sql语句执行。没有使用datasource,用的是hibernate的连接。

applicationContext-*.xml配置失效

applicationContext-dao.xml,

applicationContext-service.xml,

applicationContext-transac.xml

不能直接放在classes根目录下,需要建个目录,放目录里

不然会报找不到bean,可能是没有扫描到配置文件。

单独配一个文件不用通配符可以直接放根目录,多个文件使用通配符需要放一个目录里。

配置事务时,报错需要datasource

使用transactionManager时,xml中配置了以后,运行报错,需要javax.datasource,sessionFactory没有配置datasource,用的是hibernate自己的连接。

openSessionInView

配置openSessionInView是为了扩大session范围。

使用场景:lazy懒加载,关联的对象是个代理对象,不会立即查数据库,而是等到用的时候再去查数据库。

因为no session,因为session关闭了,



spring springmvc hibernate整合高阶阶段:

1.配置文件中事务的添加,spring的aop的使用,advice和pointcut。

2.hibernate中 no session问题的处理,扩大session范围,openSessionInView的配置使用。

3.多对一many to one的使用,人员表和部门表的外键维护问题。

4.lazy懒加载问题,碰到关联的数据需要扩大session范围。测试的时候需要将测试类加入spring管理。

no session的本质是session关闭,session关闭的本质是走出了transaction。

以懒加载为例,查出person类后,session就关闭了,person类里的dept是只有id的代理类,当person.getDept()的时候,hibernate又会去数据库查一次。这时候因为session已经关闭,无法断点续传,所以报错lazyInitializeException,no session。

5.hibernate一级缓存问题。如果在一个session中进行保存、获取相同数据,获取到的数据不会去查数据库,直接从缓存中取,导致部分值为空。需要清理缓存。clear evict


6.contextSpringListener not found,tomcat lib里的jar包没有。

7.上传upload tomcat mvc文档里

8.前端页面通过foreach获取到index,生成name形如item[index].pname item[index].age

9.maven导出包到指定目录

10.transaction,spring和hibernate整合后,想要增删改需要加transaction。

因为单独使用hibernate进行save update也需要加事务。

10.使用transaction,需要连接池c3p0,druid。

11.sessionFactory和localSessionFactory,FactoryBean getObect(),spring启动会调用这个方法。

HibernateDaoSupport为什么会要求sessionFactory required 启动时报错。

12.autowired

启动spring时,spring会调用加了autowire的方法

接口 按实现类查找 如果有多个实现类 则按名字查找。

13.flush onlyread 不需要setflushauto 不需要setcheckfalse,只需要将增删改的代码写在加了transaction的类里。

14.测试类加入spring管理。

15.hibernate.current,thread,getCurrentThread,因为transaction在service层要开启,需要session,而dao层增删改查也需要session,为了保证session一致,将session和thread绑定。

如果报错no active transaction,很有可能是spring hibernate整合时没有删除current thread配置,导致hibernate的session和spring的session不一致。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Struts Spring Hibernate整合
Spring试题和答案
Spring3.1.3 + Hibernate4 事务管理简单例子
【Struts2 Spring3 Hibernate3】SSH框架整合实现CRUD
图解SSH框架配置步骤
SSH框架网上商城项目第1战之整合Struts2、Hibernate4
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服