首页 > 代码库 > 阶段笔记汇总整理

阶段笔记汇总整理

今天学习了单表查询和多表查询,编写代码过程中,调试时出现了一个500错误,错误原因是在createQuery时,字段与Student类中的字段不一样,比如说我在数据库的是StuID,而我们需要的字段是stuId.还有当我们删除了Student类时对应的配置Student.hbm.xml中的信息也要删除掉。

今天早上讲解了SSH框架的搭建,先看看效果。其中要注意的是,需要在Web.xml中配置监听 代码如下:

<listener>

<listenerclass>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

没有配置监听时运行tomcat时会提示一个错误具体错误请观看我们的视频,然后就加了监听的代码,之后又出了一个错误提示我们的WEB-INF下找不到applicationContext.xml,于是将该文件移动到此文件下后,测试效果非常令人震惊!

下午主要是熟悉SSH的整个框架的搭建。为了加深印象,现在再次演示搭建的流程。。。测试成功,注意先搭建Spring 然后Hibernate,然后Struts,还要小心他们所需要的包,恩。现在我们为了节省空间,删掉测试项目ssh2.(本次搭建Spring在选择包时要勾选6个,Hibernate2个,Struts2个)。

下午还讲了那个在SSH基础上插入一条记录到数据库,调试运行时,数据没有进入数据库。。。

晚上继续下午调试,发现在applicationContext.xml没有添加持久化类的配置信息如下:

<property name="mappingResources">

<list>

<value>com/zqh/pojo/Student.hbm.xml</value>

</list>

</property>

添加后调试非常好,成功插入一条记录!现在演示添加一条记录。

The server encountered an internal error that prevented it from fulfilling this request

服务器遇到了一个阻止它实现这一个请求的内在的错误。

Exception report

异常报告。

An exception occurred processing JSP page

异常发生处理 JSP 

今天早上讲了在SSH上查询学生信息,调试出错,下午继续。。。刚刚重新测试了加入一条记录到数据库,测试非常成功!下面进行查询学生的一系列操作,恩。

今天早上自己熟悉下SSH,观看SSH项目transys系统。测试效果如下:

 

 

昨晚在调试时、tomcat启动就出了一个错误,pergem space ,在网上查了下资料。还是没能解决,说是tomcat 所需运行的内存不足。最后还是通过换tomcat解决。

下午讲了SSH+Jquery的项目,因为没讲完,只说了下获取hashmap的值。晚上经测试,成功得到值,晚上进行SSH项目的测试,如图测试效果非常好,如图所示:

  

目测整个流程大致走了下,现在对各个细节进行分析。运行时,tomcat会出现org.springframe.web.context.ContextLoaderListener 的错误,于是我果断重新配置服务器。问题得以解决,还有在JS文件会出现几个错误,于是删掉之,即可。

至此,SSH+Jqury项目调试非常成功!

在引用Jquery包时,

<!-- //注意引用顺序jquery-2.0.3.js 然后 jquery.easyui.min.js -->

恩  

Initialization  设定初值

Fit  适应

Action里的返回值与struts配置文件不一致时出现:

No result defined for action com.zqh.action.fiveAction and result erro 。。

解决方法:

第一种:在Struts配置<result name="erro">/info.jsp</result>

第二种:与Struts配置文件一致。

Overflow 充满 溢出

 

路径不对。改下

出现错误的原因是,action里的class写成class=”com.zqh.action” 后面木有加上类。正确写法应该是 :class=”com.zqh.action.TestAction”

还有就是在 div里加入图片是这样的<img src=http://www.mamicode.com/”图片文件夹/图片”>.

错误讲解:

持久类没有添加响应的类 tomcat直接提示错误, tomcat提示无监听器

web里配置如下代码:

<context-param>

 <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/classes/applicationContext.xml</param-value>

 </context-param>

 <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

 </listener>

 

错误:出现堆溢出 StackOverflowError,原因代码出现死循环,自己调用自己。

解决:直接获取。或注释。

Exception in thread "http-apr-8080-exec-4" 

java.lang.StackOverflowError

at com.zqh.action.fiveAction.setServletRequest(fiveAction.java:16)

at com.zqh.action.fiveAction.setServletRequest(fiveAction.java:16)

at com.zqh.action.fiveAction.setServletRequest(fiveAction.java:16)

at com.zqh.action.fiveAction.setServletRequest(fiveAction.java:16)

at com.zqh.action.fiveAction.setServletRequest(fiveAction.java:16)

at com.zqh.action.fiveAction.setServletRequest(fiveAction.java:16)

at com.zqh.action.fiveAction.setServletRequest(fiveAction.java:16)

@Override

public void setServletRequest(HttpServletRequest arg0) {

// TODO Auto-generated method stub

this.setServletRequest(arg0);//错误

this.setRequest(arg0);//正确

}

单表查询和多表查询,编写代码过程中,调试时出现了一个500错误,错误原因是在createQuery时,字段与Student类中的字段不一样,比如说我在数据库的是StuID,而我们需要的字段是stuId.还有当我们删除了Student类时对应的配置文件Student.hbm.xml中的相应信息也要删除掉。

今天在做模糊查询物料时,在提取数据时在自己的界面提交数据,导致无法显示

解决办法是:在父页面写js 进行提交。

父页面js如下:

<script type="text/javascript">

function showfrmChanPin() {

document.getElementById("chanpinframe").src = "GetAllClient";

}

function queryByItem(url){

document.getElementById("chanpinframe").src = url;

}

</script>

子页面js如下:

<script type="text/javascript">

function queryByItem(){

var wuLiaoBianMa=document.getElementById("number").value;

 parent.queryByItem("GetByItem?wuLiaoBianMa="+wuLiaoBianMa);

</script>

回调函数

如果要处理$.ajax()得到的数据,则需要使用回调函数。beforeSenderrordataFiltersuccesscomplete

  • beforeSend 在发送请求之前调用,并且传入一个XMLHttpRequest作为参数。
  • error 在请求出错时调用。传入XMLHttpRequest对象,描述错误类型的字符串以及一个异常对象(如果有的话)
  • dataFilter 在请求成功之后调用。传入返回的数据以及"dataType"参数的值。并且必须返回新的数据(可能是处理过的)传递给success回调函数。
  • success 当请求之后调用。传入返回后的数据,以及包含成功代码的字符串
  • complete 当请求完成之后调用这个函数,无论成功或失败。传入XMLHttpRequest对象,以及一个包含成功或错误代码的字符串。

 

JSONJavaScript Object Notation

一种轻量级的数据交换格式,是js的一个子集,采用完全独立与语言的文本格式,使用了类似C语言家族的习惯,是理想的数据交换语言。易与编写和解析。

简单的说就是js中的对象和数组。

 

DOMDocument Object Model

文档对象模型,是一种用于HTMLXML文档的编程接口。

 

在做新增时,因为参数过多可能会导致无法接受数据,我们可以在方法里用断点方式进行查询,如果没有获取到值,就到界面看一下相对应的参数是否一致或参数绑定时带空格。

1问题:运行tomcat时,提示一个包名错误,找不到那个包。

原因:更改了包名而在web配置文件里没有进行相应的修改。

解决方案:把包名更改一致即可。

2、在esayui里容错性比较差,注意少加逗号或多加逗号。

data-options="singleSelect:true,scrolling:true,idField:‘wuLiaoId‘,fit:true"

this.wuliao=this.chanpinziliaoservice.getPdById(Integer.parseInt(this.getRequest().getParameter("PdId").toString()));

问题:出现了一个空指针错误。

原因:id没写对,应该是wuLiaoId ,写成了是PdId。对流程不熟悉导致,还是参数不对应。

this.wuliao=this.chanpinziliaoservice.getPdById(Integer.parseInt( this.getRequest().getParameter("wuLiaoId").toString()));

 1、错误:Unsupported cascade style: all-delete-arphan

大小写错误,特别是L和界面的小写l和阿拉伯数字1,不要写错,if判断时,===的应用。

解决的方法:cascade=all-delete-orphan”

wuliaowuLiao:还是粗心惹的祸。

2、出错先看错误信息,完美翻译,断点调试(检查参数大小写,检查参数正确性,以及参数是否两两对应。)

delete 与某个表发生冲突,一般都是*.hbm.xmlid不对应或者木有加 级联删除的那个东西:cascade=all-delete-orphan”

 

3、Don‘t change the reference to a collection with cascade="all-delete-orphan": com.zqh.pojo.物料表.采购明细表s; nested exception is org.hibernate.HibernateException: Don‘t change the reference to a collection with cascade="all-delete-orphan": com.zqh.pojo.物料表.采购明细表s

 

解决办法:把物料表的“采购明细表s”赋值为null;或者action里写this.wuliao=null;

   private Set 采购明细表s = null;

private Set 物料价格表s = null;

在生成调度单时,可以把订单里的调度否默认为false 

json绑定cbo乱象问题解决办法:

private static Object lockObj=new Object();

setJSArr里

synchronized(lockObj){JSArr=jSArr;}

     查询语句三步骤:检查空格,然后表名,大小写。配置文件注意返回类型和调用的action.页面要注意ID值是否对应,和带ID提取数据时,带木有带id。

     下午解决了明细,出现的问题是struts的action配置出错,知道错误的原因是直接用action访问时,找不到那个action。