`
阅读更多

1.<property name="hibernate.current_session_context_class">thread</property>
openSession() 与 getCurrentSession() 有何不同和关联呢?
 
在 SessionFactory 启动的时候, Hibernate 会根据配置创建相应的 CurrentSessionContext ,在 getCurrentSession() 被调用的时候,实际被执行的方法是 CurrentSessionContext.currentSession() 。在 currentSession() 执行时,如果当前 Session 为空, currentSession 会调用 SessionFactory 的 openSession 。所以 getCurrentSession() 对于 Java EE 来说是更好的获取 Session 的方法。
getCurrentSession()与openSession()的区别?
* 采用getCurrentSession()创建的session会绑定到当前线程中,而采用openSession()
创建的session则不会
* 采用getCurrentSession()创建的session在commit或rollback时会自动关闭,而采用openSession()
创建的session必须手动关闭
2、使用getCurrentSession()需要在hibernate.cfg.xml文件中加入如下配置:
* 如果使用的是本地事务(jdbc事务)
<property name="hibernate.current_session_context_class">thread</property>
* 如果使用的是全局事务(jta事务)
<property name="hibernate.current_session_context_class">jta</property>

利于ThreadLocal模式管理Session
   早在Java1.2推出之时,Java平台中就引入了一个新的支持:java.lang.ThreadLocal,给我们在编写多线程程序
   时提供了一种新的选择。ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,
   而是thread local variable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)
   其实的功用非常简单,就是为每一个使用某变量的线程都提供一个该变量值的副本,是每一个线程都可以独立地改变自己的副本,
   而不会和其它线程的副本冲突。从线程的角度看,就好像每一个线程都完全拥有一个该变量。


import java.io.Serializable;

public class Cam implements Serializable{…}
序列化是把一个对象的状态写入一个字节流的过程,它执行RMI,RMI允许一台机器上的JAVA对象调用不同机器上的JAVA对象方法,对象可以作为参数提供给那个远程方法,发送机序列化该对象并传送它,接收机执行反序列化。

Hibernate并不要求持久化类必须实现java.io.Serializable接口,但是对于采用分布式结构的Java应用,当Java对象在不同的进程节点之间传输时,这个对象所属的类必须实现Serializable接口,此外,在Java Web应用中,如果希望对HttpSession中存放的Java对象进行持久化,那么这个Java对象所属的类也必须实现Serializable接口。 
Hibernate要求持久化类必须提供一个不带参数的默认构造方法

Data transfer Object. 这种对象是用来在网络上(不同的JVM)被传递的对象,比如Servlet调用EJB,而Servlet与EJB不在同一个JVM中,但是却需要在二者之间传递这个对象。
我们知道,不同JVM跨网络传输对象,需要将对象序列化(Serialization)。楼主如果使用Hibernate的POJO如果是需要跨网络传输的此对象(比如Servlet调用一个业务bean,返回了此POJO,而Servlet与业务bean是分布式的),这种情况下,需要Serialization,如果在同一个JVM中调用,可不必序列化。

3. <property name="hibernate.connection.oracle.jdbc.V8Compatible">true</property> 

Set oracle.jdbc.V8Compatible=true when using higher version JDBC driver to access 8i databases, or strange things will happen

4.
<property name="hibernate.session_factory_name">com.factory.HibernateSessionFactory</property>
The org.hibernate.SessionFactory will be automatically bound to this name in JNDI after it has been created.
5
<div class="Footer" >
<!--CSS part:-->
<style type="text/css">
#greenidstyle {color:green}
.redclassstyle {color:red}
</style>
<!--HTML part:-->
<body>
<p id="greenidstyle">first line of copy for id</p>
<p class="redclassstyle">second line of copy for class</p>
<p id="greenidstyle" class="redclassstyle">third line of copy for combined</p>
</body>

定义css中. 的样式,用 class引用。
#的样式,使用id引用
Class与id的不同:
Ids are to be used only once in your html layout. Classes can be used multiple times.
Ids have priority over classes. So, if an element has a both id and class, the id will take over.
Lets look at an example:
<!--CSS part:-->
<style type="text/css">
#greenidstyle {color:green}
.redclassstyle {color:red}
</style>
<!--HTML part:-->
<body>
<p id="greenidstyle">first line of copy for id</p>
<p class="redclassstyle">second line of copy for class</p>
<p id="greenidstyle" class="redclassstyle">third line of copy for combined</p>
</body>s

6.Ajax
ajax的原理
  XMLHttpRequest是ajax的核心机制,它是在IE5中首先引入的,是一种支持异步请求的技术。简单的说,也就是javascript可以及时向服务器提出请求和处理响应,而不阻塞用户。达到无刷新的效果。  首先,我们先来看看XMLHttpRequest这个对象的属性。
  它的属性有:
  onreadystatechange  每次状态改变所触发事件的事件处理程序。
  responseText     从服务器进程返回数据的字符串形式。
  responseXML   从服务器进程返回的DOM兼容的文档数据对象。
  status                 从服务器返回的数字代码,比如常见的404(未找到)和200(已就绪)
  status Text         伴随状态码的字符串信息
  readyState         对象状态值,0—未初始化 1—正在加载  2—加载完毕 3—交互 4—完成。

程序样码:
<html>
<head>
<script type="text/javascript">
function loadXMLDoc()
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
}
</script>
</head>
<body>

<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>

</body>
</html>

7.
META-INF文件夹中的MANIFEST.MF 有什么作用?
MANIFEST中的配置信息共有下面几类:
一. 一般属性
1. Manifest-Version
用来定义manifest文件的版本,例如:Manifest-Version: 1.0
2. Created-By
声明该文件的生成者,一般该属性是由jar命令行工具生成的,例如:Created-By: Apache Ant 1.5.1
3. Signature-Version
定义jar文件的签名版本
4. Class-Path
应用程序或者类装载器使用该值来构建内部的类搜索路径
二. 应用程序相关属性
1. Main-Class
定义jar文件的入口类,该类必须是一个可执行的类,一旦定义了该属性即可通过 java -jar x.jar来运行该jar文件。


8.
配置web.xml文件
所有的MVC框架都需要Web应用加载一个核心控制器,对于struts 2框架而言,
需要加载FilterDispatcher,只要Web应用负责加载FilterDispatcher, FilterDispatcher
将会加载应用的Struts 2框架。
因为Struts  2将核心控制器设计成Filter,而不是一个普通Servlet。故为了让Web
应用加载FilterDispatcher,只需要在web.xml文件中配置FilterDispatcher即可。


分享到:
评论

相关推荐

    oracle杂记.doc

    oracle杂记.doc 这是我个人的总结。 主要是oracle的编程以及体系结构的理解。

    第14章 Pythonic与Python杂记.mp4

    第14章 Pythonic与Python杂记.mp4

    李特伍德 一个数学家的杂记.pdf

    李特伍德的《一个数学家的杂记》是一本收录了作者关于数学、教育以及个人观点文章的集合。这本杂记以数学为主题,涉及的内容包括几何、概率论、数论以及历史上的数学发现等。李特伍德在书中讨论了数学知识与日常生活...

    计算机杂记

    ### 计算机基础知识知识点概览 ...它使用一系列的元素来构建页面结构和内容,如段落、链接、图片等。 - **特点**: - 结构清晰:通过标签来定义网页的不同组成部分。 - 跨平台性:可以在不同的操作系统和浏览器上...

    杂记:一家大鱼及其他

    杂记中所讲述的内容和描绘的场景,实际上蕴含了丰富的中国农村生活细节和风土人情,以及人性的细腻观察。以下是对这些内容的知识点解读: 首先,杂记中提到了家庭中烹饪的场景,特别强调了“蒸菜疙瘩”的制作过程。...

    oracle 9i杂记

    《Oracle 9i杂记——探索PLSQL的世界》 Oracle 9i,作为Oracle数据库的一个重要版本,引入了许多新特性和改进,其中PL/SQL(Procedural Language/Structured Query Language)是其核心组成部分,是一种结合了SQL和...

    14.6 None|Pythonic与Python杂记|Python3.8入门 & 进阶 & 原生爬虫实战完全解读

    14.6_None|Pythonic与Python杂记|Python3.8入门_&_进阶_&_原生爬虫实战完全解读

    PD杂记体育ii已同居ikyht

    【数据库设计基础与PowerDesigner应用】 数据库设计是IT领域中至关重要的部分,它涉及概念设计、逻辑设计和物理设计等多个阶段。在概念设计阶段,我们主要关注实体、属性和联系集,这些都是构建数据库模型的基础...

    installshield安装制作杂记

    installshield安装制作杂记 installshield x

    反爬杂记日常记录十一字

    反爬杂记日常记录十一字

    爬虫杂记日常记录十一字

    爬虫杂记日常记录十一字

    个人笔记美食杂记生活等

    个人笔记美食杂记生活等

    Hadoop大数据平台运维杂记.pptx

    Hadoop大数据平台运维杂记 Hadoop大数据平台运维杂记是关于Hadoop大数据平台的运维经验总结,主要涵盖了Hadoop集群的使用情况、安装升级、Cloudera Manager、Hadoop的发展历程、常见事故处理等方面的内容。 一、...

    狱中杂记教学设计.pdf

    狱中杂记教学设计.pdf

    51单片机P89V51学习杂记.rar

    《51单片机P89V51学习杂记》是针对电子工程初学者以及对51单片机有兴趣的开发者提供的一份宝贵资源。这份压缩包包含了关于51单片机及其应用的深入学习材料,特别是侧重于P89V51型号的单片机。下面将对其中的主要知识...

    山中杂记.doc

    《山中杂记》是高雪梅老师2013年教授的一篇语文课,属于义务教育课程标准实验教科书北师大版六年级下册第一单元的第一课。这篇文章是冰心在1923年留美期间因病在青山沙穰疗养院所作,原本是一组共十篇的散文,我们...

    51单片机C语言学习杂记

    本资料“51单片机C语言学习杂记”旨在帮助读者掌握51单片机的基础知识,并通过C语言进行编程实践。 51单片机的核心部件包括CPU、存储器(包括ROM、RAM)、定时器/计数器、串行通信接口、并行I/O端口等。其中,CPU...

    互联网杂记(六).docx

    互联网杂记(六).docx

    工作杂记-YUV的dump和read

    工作杂记-YUV的dump和read

Global site tag (gtag.js) - Google Analytics