`
woainichenxueming
  • 浏览: 44720 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java异常总结

 
阅读更多

1.No row with the given identifier exists 解决方法

有两张表,ab.产生此问题的原因就是a里做了关联<one-to-one>或者<many-to-one unique="true">(特殊的多对一映射,实际就是一对一)来关联b.hibernate查找的时候,b里的数据没有与a相匹配的,这样就会报No row with the given identifier exists这个错.(一句话,就是数据的问题!)

     
假如说,a里有自身的主键id1,还有b的主键id2,这两个字段.

     
如果hibenrate设置的单项关联,即使a中的id2null,bid2中有值,查询都不会出错.但是如果a中的id2字段有值,但是这个值在b中主键值里并没有,就会报上面的错!

     
如果hibernate是双向关联,那么a中的id2null,但是b中如果有值,就会报这个错.这种情况目前的解决办法就是改成单项关联,或者把不对应的数据改对!

hibernate的查询有很多,Query,find,Criteria,get,load

query
使用hsql语句,可以设置参数是常用的一种方式

criteria
的方式,尽量避免了写hql语句,看起来更面向对象了。

find
方式,这种方式已经被新的hibernate丢弃

get
load方式是根据id取得一个记录
下边详细说一下getload的不同,因为有些时候为了对比也会把find加进来。

1
,从返回结果上对比:
load
方式检索不到的话会抛出org.hibernate.ObjectNotFoundException异常
get
方法检索不到的话会返回null

2
,从检索执行机制上对比:
get
方法和find方法都是直接从数据库中检索
load方法的执行则比较复杂
1,
首先查找sessionpersistent Context中是否有缓存,如果有则直接返回
2,
如果没有则判断是否是lazy,如果不是直接访问数据库检索,查到记录返回,查不到抛出异常
3,
如果是lazy则需要建立代理对象,对象的initialized属性为falsetarget属性为null
4,
在访问获得的代理对象的属性时,检索数据库,如果找到记录则把该记录的对象复制到代理对象的target
上,并将initialized=true,如果找不到就抛出异常

 

自关联一对多的时候。在many-to-one里面添加not-found=ignore

2.struts的异常处理

A.内部处理异理<Exception key=”资源文件里面的key” type=”异常处理类”>

例如<Exception key=”error” type=”java.lang.RuntimeEcxeption” scope=”request”(异常文件存入request)>

在程序中throws异常

B.全局异常处理

自定义异常类继承RuntimeException获得异常对象,实现父类的所以构造器,对其传入的参数设置getter方法

自定义异常处理类Handler继承org.apache.struts.action.ExceptionHandler;

复写execute方法,用来捕获异常,放到sessionrequest

编程式异常:在程序中自己捕获异常,跳转到异常页面

LOG4J日志管理

三大概念

Logger—使用这个对象来进行输出

Appender—使用这个对象来定义输出到哪里去

Layout—使用这个对象来定义输出格式

LOG4J的级别(level)

debug<info<warn<error<fatal

jsp文本域read-only不能改,但后台可以得到

如果设成disabled的话,后台的不到其值

 

3.程序代码出现cannot be resolved.

出現以上訊息的原因是因為你裝了多個版本的jrejdk的關係。本來Eclipse在建立專案時,會自動參照你的jre路徑,但多個版本就沒辦法了。
你只能手動建立

1.
進入
window\preferences\java\Installed JREs
1)
Add
2)
輸入JRE Name,
JDK1.5.0.03
3)JRE home directory,
選擇安裝的路徑

4)
OK
2.
進入
Project\properties\Java Bulid Path
1)Add library
2)
JRE System Library後按
Next
3)
workplace default JRE後按finish...

4.Hibernian映射关系

实体类class映射---成表

普通属性property映射成表字段

5.数据库编码设置

修改整个数据库服务器

my.cf文件的[mysqld]段设置:
default-character-set=utf8

单独设置某个数据库:
alter database testdb character set utf8;
查看mysql支持的编码:
show character set;

6.struts的异常处理机制

编程式异常

7.freemarker遇见的异

8.DAO

业务逻辑层处理对象之间的关系

Dao层尽量只跟单一的对象打交道,不要去维护对象之间的关系,这些关系交割manager层完成

8.出现按住ctrl键不进入源码解决

右键检出的项目,-->Properties-->Java Build Path-->Source-->删掉原有的src,在Add Folder中添加新的src-->Libaries中添加项目使用的所有jar包。
之后就可以了

分享到:
评论

相关推荐

    常见JAVA异常总结

    ### 常见JAVA异常总结 #### 1. `java.lang.NullPointerException` `java.lang.NullPointerException` 是一种运行时异常,表示程序试图在需要对象的地方使用了 `null`。例如,通过对 `null` 引用调用实例方法或访问...

    java 异常总结

    ### Java异常总结与详解 #### 引言 在Java编程中,异常处理是软件开发过程中不可或缺的一部分。良好的异常处理能够帮助我们及时发现并解决问题,从而提高程序的稳定性和健壮性。本文旨在全面总结Java中常见的异常...

    java异常总结.pdf

    Java异常处理是编程中至关重要的一个环节,它帮助开发者识别并修复程序运行时出现的问题。在Java中,异常被组织成一个层次结构,根类是`java.lang.Throwable`,它有两个主要的子类:`Error`和`Exception`。`Error`...

    Java异常处理总结

    ### Java异常处理总结 #### 一、Java异常的基础知识 在Java编程中,异常处理是一项极其重要的技术。异常处理能够帮助开发者优雅地处理程序运行时遇到的问题,避免程序崩溃,并提供给用户友好的反馈信息。 **什么...

    java异常处理习题

    下面是关于 Java 异常处理的习题和知识点总结: 一、Java 异常处理关键字 * Java 中用来抛出异常的关键字是 `throw`。 * `try`、`catch` 和 `finally` 是 Java 异常处理的三个主要组成部分。 二、异常处理机制 *...

    java常见异常总结

    ### Java常见异常总结 在Java开发过程中,遇到各种异常是在所难免的。为了更好地理解和处理这些异常,本文将详细介绍几种常见的Java异常类型及其处理方法。 #### 1. `java.lang.NullPointerException` - **异常...

    Java 异常处理的误区和经验总结

    以下是对Java异常处理的一些误区和经验总结。 **误区一:过度使用try-catch块** 有些开发者习惯于在每个函数的开始部分都套用try-catch块,以为这样可以捕捉所有可能出现的异常。实际上,这种做法使得代码变得混乱...

    java异常小结

    本文主要总结了Java异常处理机制及其相关知识点。 首先,异常机制是Java中用于处理程序运行时错误的框架。当程序执行过程中遇到问题,异常机制会提供一个安全的出口,使得程序控制权能够转移到预先定义的异常处理器...

    java异常学习总结

    ### Java异常学习总结 #### 一、Java异常概述与分类 在Java开发中,异常处理是确保程序稳定性和健壮性的关键部分。本篇总结了Java异常的基本概念、分类及处理方式等内容,对于从事Java开发的技术人员具有重要的...

    java 异常框架CODE

    总结,Java异常框架是保证程序健壮性和可维护性的重要部分,它提供了优雅的方式来处理错误情况,同时允许代码的结构保持清晰。对于Web服务开发,如使用Jersey,异常处理更加关键,因为它直接关联到对外接口的响应...

    Java常见异常总结

    ### Java常见异常总结 在Java编程中,遇到异常是家常便饭,它们是程序运行过程中出现错误的信号。为了帮助开发者更好地理解和处理这些异常,本文将深入探讨一系列常见的Java异常,涵盖从基本的`ArithmeticException...

    java实验报告4-异常处理

    Java异常处理是编程中至关重要的一个环节,它确保了程序在遇到错误时能够优雅地运行,而不是突然崩溃。本实验报告“java实验报告4-异常处理”旨在帮助初学者掌握Java中的异常处理机制,以及如何利用log4j进行日志...

Global site tag (gtag.js) - Google Analytics