- 浏览: 256110 次
- 性别:
- 来自: 北京
-
最新评论
文章列表
web容器初始化时,因为配置了spring的ContextLoaderListener,所以会执行ContextLoaderListener的contextInitialized(ServletContextEvent event) 方法。
在这个方法中,
public void contextInitialized(ServletContextEvent event) {
this.contextLoader = createContextLoader();
if (this.contextLoader == null) {
this.contextLoader = this; ...
OpenSessionInViewFilter作为一个filter,会在request到达servlet之前拦截request。
在OpenSessionInViewFilter中,首先会得到当前的sessionfactory,部分源码如下:
protected SessionFactory lookupSessionFactory() {
if (logger.isDebugEnabled()) {
logger.debug("Using SessionFactory '" + getSessionFactoryBeanName() + "' for ...
在Spring中使用Hibernate的方法:
因为最终需要用到的就是DAO中HibernateTemplate的方法。所以最终的继承依赖关系如下。
HibernateDaoSupport --->DAO---> HibernateTemplate--->sessionfactory--->datasource
反应到工程中就是
业务DAO 继承HibernateDaoSupport 。
业务DAO 需要配置HibernateTemplate属性或者sessionfactory属性。(当配置sessionfactory时,HibernateDaoSuppo ...
java code (1)
- 博客分类:
- java_code
public void setMappedNames(String[] mappedNames) {
this.mappedNames = new LinkedList<String>();
if (mappedNames != null) {
this.mappedNames.addAll(Arrays.asList(mappedNames));
}
}
##########################
使用 Collections.frequency 找出重复的单词[size=large][/size]
String text = "a ...
public static void compile(String name)
throws CompileException
{
ByteArrayOutputStream outpouter = new ByteArrayOutputStream();
boolean ret = false;
try {
String javaFile = Constants.JAVA_PATH + name + ".java";
sun.tools.javac.Main javac = new sun.tools.javac ...
XML Element 相关方法
- 博客分类:
- javascript
Element l_o_MessageRoot = new Element("message");
FlexUtils.buildFormHead(l_o_MessageRoot, "", "", "", "", l_str_ResourceContent);
Element l_o_UserName = new Element("user-name").addContent(username);
Element l_o_Pa ...
request.getParameterNames()方法是将发送请求页面中form表单里所有具有name属性的表单对象获取(包括button).返回一个Enumeration类型的枚举.
通过Enumeration的hasMoreElements()方法遍历.再由nextElement()方法获得枚举的值.此时的值是form表单中所有控件的name属性的值.
最后通过request.getParameter()方法获取表单控件的value值.
Enumeration pNames=request.getParameterNames();
while(pNames.hasMoreEleme ...
之前看资料,总说spring hibernate 是通过threadlocal来实现并发。
更详细的就是session的产生是由threadlocal来实现并发控制,保证多线程安全。
但是只看讲解,真是不理解,时时如鲠在喉。今狠下心看了下源码,终于自认为搞明白了。
实际上就是一个threadlocal实例变量,这个类有get,set方法,且这个方法的特殊之处就在于能得到或设定线程的静态变量threadlocalMap的值,且threadlocalMap的key为该threadlocal实例变量!
根据个人理解详细如下:
sessionFactory 由spring的LocalSessionF ...
理解ThreadLocal
- 博客分类:
- hibernate
理解ThreadLocal
.
ThreadLocal是什么
早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。
ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它命名为ThreadLocalVariable更容易让人理解一些。
当使用ThreadLocal维护变量时,ThreadLocal为每个使用该变量的线程提供独立的变量 ...
http://blog.csdn.net/aspdao/article/details/5472955
关于OpenSessionInView
- 博客分类:
- hibernate
关于OpenSessionInView
.
简而言之,就是通过filter拦截request,并在一开始就把session绑定到request的threadlocalmap中去。而关闭的时候,把session的关闭延迟到前台页面载入完毕,而不是后台处理完毕之后,到达前台之前。
OpenSessionInView在request把session绑定到当前thread期间一直保持hibernate session在open状态,使session在request的整个期间都可以使用,如在View层里PO也可以lazy loading数据,如 ${ company.employees }。当Vi ...
OpenSessionInViewFilter源码分析
.
在之前我写的一篇文章http://blog.csdn.net/aspdao/archive/2010/04/11/5472955.aspx详述了如何配置Hibernate懒加载
当时我觉得我已经会配置Hibernate的懒加载了,但是,在最近做的课题项目中,相同版本的SSH,一 ...
Context cont = new InitialContext();
InitialContext 是 jndi 树的入口点。
Object o = cont.lookup("test");
然后对对象进行窄化
TestHome home = (TestHome )PortableRemoteObject.narrow(o,TestHome.class);
得到组件接口
Test test = home.create();
调用远程对象的方法必须捕捉异常RemoteException
try{
test.getName();
}catch(Remo ...
- 2012-02-14 17:56
- 浏览 764
- 评论(0)
初学 dhtmlxSuite
- 博客分类:
- javascript
点开铁道部订票网站的源码,可看到dhtmlxSuite的应用。
以完成例如多级菜单 ,下拉框的自动填充等功能。
上网查询之,可从其官方网站下载 开源免费版本。
下载后解压缩,点击 index.html即可。
里边有详尽的使用例子。还可在线看demo及其源码。
用到的时候学习即可。
- 2012-02-13 15:36
- 浏览 2348
- 评论(0)
http://www.pqshow.com/design/jiqiao/13911.html
33个JavaScript自动完成脚本
所谓的提升用户体验,其实就是把所有用户视为极度弱智和超级懒鬼。比如JavaScript自动完成(Autocomplete)脚本, 常用于表单,用户只需输入一两个字母,就为你扩展、联想、匹配和供君选择。
如果你也正准备在这方面提升自己网站的用户体验,下面为你准备了33个JavaScript自动完成脚本。
http://cheneyjuu.blog.163.com/blog/static/41917640200991692311899/
1. Prot ...
- 2012-02-13 15:23
- 浏览 1084
- 评论(0)