hibernate+oracle+servlet实现插入数据的时候,不立马显示!!

尊重原创!!!

     开发软件:myeclipse 10+oracle 11g

     开发项目:租房系统

     开发人员:1111

     出现的问题:在前台发布房屋信息的界面插入数据时,自动跳转到查询所有房屋信息的页面,数据显示不完整,本表的可以显示,有外键的都显示不出来,(比如,街道(Street)信息是一个单独的表,在房屋信息表(House)里面引用的街道表的id,通过Street street=new Street(),street.getName()来获取街道名字),运行完之后也不报错,但是就是不显示!!!

     直接上图可能更详细点;

  




     问题分析:

         这种问题还是第一次见,自己初步分析:

1.可能是前台通过jstl获取数据的时候,字段显示不对?

2.在servlet里面没有把街道信息放在request作用域里面?

3.没有提交(commit());

4.数据库里面可能就没有把街道信息添加进去!

    问题分析完之后那就开始一个一个的检查,先看显示房屋信息的界面,验证分析1是否正确:

    


    仔细检查之后发现排除分析1

     继续在看分析2是否正确,


      发现我都放进作用域里面了,并且一块转发到了显示的界面,有点纳闷了,这又是为啥呢?

      既然分析二也排除掉,那就接着看分析3和分析4,她两一块看,先去数据库里面看看添加上来了没,数据库里面没有的话就是没有commit,然后我就在数据库里面查了一遍


   

           卧槽,数据倒是进来了,但是为什么不显示呢?根据已有的思路都分析完了,还是不行咋整?灵机一动,去问问百度吧,也许能问出点啥来了!!

    好,说走咱就走,问了下百度,百度和我说了一堆废话。。。。什么配置文件错误,映射文件有误......靠天靠地不如靠自己,使劲用脑子在想解决方法,继续分析:既然数据库里面都有数据,前台没有数据?前台页面的其他记录都是从数据库里获取的,不应该光这个获取不到啊,重启服务试试!!!

    重启了下服务,上来前台页面看了下,.....显示出来了,数据都显示出来了,包括街道和房屋类型一个都没少


难道是我服务的事?于是乎,继续添加一条记录试试看。赶紧添加完之后跳转到显示所有的页面,奇诡的是其他的记录都有,就是新添加的这条记录没有显示出来。。。居然还是不行,既然还不行的话我就在DaoImpl里面把各个时期的值输出来看看是哪里没数据?



    有数据,包括新添加的也在里面,那就去看看Servlet里面的数据看看有没有?


    没办法,也有数据,继续在想哪里的原因,难道是hibernate缓冲的问题?(之前无意间看到hibernate的缓冲),那就按照缓冲来测试一下,先把session.close看看是否管用


    执行的时候报错!session 是关闭的!!既然关闭了不行,那就试试flush(),与数据库同步数据看看会怎么样!


   报错倒是不报错,但是白搭,还是和之前一样,那就在试试clear()看看怎么样,过了2分钟,测试完毕,还是一样居然,图就不上了!!!不能这样乱测试了,在静下来好好的分析一下哪里的问题!之前一直是在添加的DaoImpl里面测试session的clear()  flush()  close(),感觉不大对劲,既然是查询不出来,那就得在查询的方法里面清除session的缓冲,开始行动,我给添加的方法里面清空了一下session,用的是clear(),在查询的里面用的是flush(),感觉这样分析应该没问题,让查询的数据和数据库里面进行同步,就不信还不行?

      于是抱着试试的态度进行测试了一下,居然可以显示出来了。解决了一晚上没有解决掉的bug,终于解决掉了!!!所以总结一下session的clear()和flush的区别:

最简单的理解就是:

    session.flush()的作用就是将session的缓存中的数据与数据库同步。

    session.clear()的作用就是清除session中的缓存数据。

还有不足的地方还请各位大神多多指点指点,本人的总结就这些了!!!


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/327909.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mmall工程生成dao层的插件出错了出错了 自动生成mapper 的插件出错了

mybatis.org/dtd/mybatis-generator-config_1_0.dtd标红 2019-03-31 22:18:52 qq_35598865 阅读数 1637 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.cs…

用JWT来保护我们的ASP.NET Core Web API

在用Middleware给ASP.NET Core Web API添加自己的授权验证 中,自己动手写了一个Middleware来处理API的授权验证,现在就采用另外一种方式来处理这个授权验证的问题,毕竟现在也有不少开源的东西可以用,今天用的是JWT。 什么是JWT呢&…

JDK 6中新增的Java Console类功能概览

转载自 JDK 6中新增的Java Console类功能概览JDK 6中提供了java.io.Console类专用来访问基于字符的控制台设备。如果你的Java程序要与Windows下的cmd或者Linux下的Terminal交互,就可以用这个Java Console类代劳。 TestConsole.java 代码:package com.si…

mysql---批量插入数据:100w条数据

DROP FUNCTION IF EXISTS mock_data; DELIMITER $$ --写函数之前必写 CREATE FUNCTION mock_data() RETURNS INT BEGIN DECLARE num INT DEFAULT 1000000; DECLARE i INT DEFAULT 0; WHILE i < num DO INSERT INTO app_user(name, email, phone, gender, password, age) VAL…

一次性加载树结构数据表 mapper加载

************************************************************* Override public List<Organization> getOrganizationTree() throws UnionException {//缓存有就从缓存拿List<Organization> redisObjectOrganizationList (List<Organization>) redisObj…

DIP原则、IoC以及DI

一、DIP原则 高层模块不应该依赖于底层模块&#xff0c;二者都应该依赖于抽象。抽象不应该依赖于细节&#xff0c;细节应该依赖于抽象。 该原则理解起来稍微有点抽象&#xff0c;我们可以将该原则通俗的理解为&#xff1a;"依赖于抽象”。 该规则告诉我们&#xff0c;程序…

Java IO最详解

转载自 Java IO最详解初学java&#xff0c;一直搞不懂java里面的io关系&#xff0c;在网上找了很多大多都是给个结构图草草描述也看的不是很懂。而且没有结合到java7 的最新技术&#xff0c;所以自己来整理一下&#xff0c;有错的话请指正&#xff0c;也希望大家提出宝贵意见…

hibernate在分层架构中修改数据(update)时遇到的问题!!

开发软件&#xff1a;Myeclipse 10.0 数据库&#xff1a;oracle 开发人员&#xff1a;1111 问题简单描述&#xff1a;修改数据的时候不能正常修改&#xff0c;要么修改不成功&#xff0c;要么报错 nice,下面就来看看怎么解决这个bug的。 首先&#xff0c;我做的是一个租房网站&…

intellij idea 如何一键清除所有断点

intellij idea 如何一键清除所有断点 2017-06-19 11:37:20 yanziit 阅读数 50429更多 分类专栏&#xff1a; idea工具 我之前写了一个百度经验,但是搜不到,现在复制一遍,自己留个记录. 注:此方法适用 intellij idea 2016.2.5版本,其他版本我没用过,暂时不知道 1.在idea左下…

整理下.net分布式系统架构的思路

最近看到有部分招聘信息&#xff0c;要求应聘者说一下分布式系统架构的思路。今天早晨正好有些时间&#xff0c;我也把我们实际在.net方面网站架构的演化路线整理一下&#xff0c;只是我自己的一些想法&#xff0c;欢迎大家批评指正。 首先说明的是.net下开源内容较少&#xff…

SQL注入问题及预防方法

SQL注入问题 sql存在漏洞&#xff0c;会被攻击导致数据泄露 SQL会被拼接 or package com.kuang.lesson02; import com.kuang.lesson02.utils.jdbcUtils; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; …

Java transient关键字使用小记

转载自 Java transient关键字使用小记1. transient的作用及使用方法我们都知道一个对象只要实现了Serilizable接口&#xff0c;这个对象就可以被序列化&#xff0c;java的这种序列化模式为开发者提供了很多便利&#xff0c;我们可以不必关系具体序列化的过程&#xff0c;只要…

mysql sample函数_Oracle SAMPLE 语法应用

Sample抽样函数用于支持数据挖掘。Sample 函数使得数据分析操作在样本数据上进行&#xff0c;而不是在整张表上进行。Sample抽样函数用于支持数据挖掘。Sample 函数使得数据分析操作在样本数据上进行&#xff0c;而不是在整张表上进行。选择10%的记录select * from atest sampl…

docker 买了腾讯服务器后的学习

腾讯云买了 打算用 登录成功后&#xff1a; Last login: Mon Nov 11 13:37:02 2019 from 221.12.17.87 [rootVM_0_13_centos ~]# ip addr #查看ip地址 [rootVM_0_13_centos ~]# uname -r #查看centeros内核版本 docker要求 centeros内核在3.10以上 3.10.0-862.e…

Hibernate中使用Criteria查询及注解——(Dept.java)

Dept.java: 部门表的实体类&#xff1a; package cn.bdqn.hibernate_Criteria.entity;import java.util.HashSet; import java.util.Set;/*** 部门表的实体类* author 1111**/ public class Dept implements java.io.Serializable {// Fieldsprivate Integer deptno;private St…

Connect 2016 白话脱口秀将在B站直播,我们的口号是quot; 微软大法好quot;

今年 Connect 大会的主题是 Big possibilities. Bold technology. 北京时间 11月16日 23&#xff1a;00&#xff0c;Connect();//2016 将开启在线直播&#xff0c;届时红衣主教 Scott Guthrie 和 Scott Hanselman 携众多微软技术大咖将为大家带来超级精彩的主题演讲。丰富的内容…

MySQL(笔记)

数据库总览 有时候查的数据错乱&#xff0c;可以重启MySQL 关系型数据库 ( SQL ) MySQL , Oracle , SQL Server , SQLite , DB2 , …关系型数据库通过外键关联来建立表与表之间的关系 非关系型数据库 ( NOSQL )not only Redis , MongoDB , …非关系型数据库通常指数据以对…

第10章尚硅谷SpringBoot检索

第10章尚硅谷SpringBoot检索 P20、尚硅谷-SpringBoot高级-检索-Elasticsearch简介&安装 P21、尚硅谷-SpringBoot高级-检索-Elasticsearch快速入门 P22、尚硅谷-SpringBoot高级-检索-SpringBoot整合Jest操作ES P23、尚硅谷-SpringBoot高级-检索-整合SpringDataElasticsearch…

python 高维数据_Python数据分析入门|利用NumPy高效处理高维数据

矢量化NumPy数组可以将许多数据处理任务表述为简洁的数组表达式&#xff0c;否则需要编写循环。用数组表达式代替循环的做法&#xff0c;通常被称为矢量化。通常矢量化数组运算要比等价的纯Python方式快上一两个数量级&#xff0c;尤其是各种数值计算。假设我们想要在一组值(网…

Hi Visual Studio for Mac

今晚Connect 2016 , 或者你会兴奋地看到Visual Studio 2017在Docker上调试 &#xff0c; MS SQL on Linux &#xff0c;Azure Functions 还有一堆黑技术....但个人还是十分喜欢一个新产品Visual Studio for Mac 。 八个多月前微软收购了Xamarin, 对于Xamarin 的IDE进行了整合&a…