`
文章列表
作者:狂放不羁 网址:http://yuquan-nana.iteye.com >>>转载请注明出处!<<<   Hibernate和Jpa中都有持久化上下文的概念(Persistence context),持久化上下文其实就是Hibernate和JPA的一级缓存,通过在持久化上下文中存储持久化状态实体的快照,既可以进行脏检测,并且持久化上下文还可以当做持久化实体的缓存。虽然Hibernate作为JPA的超集,Hibernate3.2之后实现了JPA,但是两者对持久化上下文的管理有一定的同,下面比较如下:   1.Hibernate是将Persistence ...
作者:狂放不羁 网址:http://yquan-nana.iteye.com >>>转载请注明出处!<<<   Hibernate中将对象从托管状态转变为持久化状态可以采用两种方法:重附(Reattach)和合并(Merge)。下面分别总结一下:   第一种:重附 重附操 ...
最近在做一个项目。采用J2EE作为开发平台,通过领域驱动开发(DDD)的方式进行开发。   首先说一下系统总体架构。系统分为表现层,业务层(业务层分为应用层和领域层),持久层, 其中表现层用Struts MVC框架,业务层用Spring框架,持久层用hibernate框架,现在主 要总结一下业务层和持久层。   业务层:根据DDD,业务层应该分为应用层和领域层,其中应用层的无状态的服务通过 Spring IOC容器进行装配和管理。核心业务逻辑放到领域层,而应用层只是一个很薄的层, 指挥领域层的模型对象完成业务操作。领域模型根据DDD分为了实体,值对象,和服务,其 中实体是系统中一些需要记录和跟踪 ...
EJB规范要求各厂商都将各种bean绑定在java:comp/env上下文中。Jboss默认将bean绑定到"beanName/remote(local)此全局JNDI名称空间中。
第四种:短语搜索。一般用户在搜索的时候都会输入一个关键词来搜索,短语搜索就是用来应对这种需求的。 Document doc1 = new Document(); Document doc2 = new Document(); Document doc3 = new Document(); Field field1 = new Field("postTitle","Java语言",Field.Store.YES,Field.Index.TOKENIZED); Field field2 = new Field("postTitle&q ...
Lucene作为一个开源的搜索工具包,它为开发人员提供了丰富的查询方法,总结如下:   第一种:TermQuery.TermQuery是Lucene里面最基本的一种原子查询。开发人员可以通过它来检索索引中含有指定词条的Document。代码如下: public static void main(String[] args) throws IOException { createIndex(); termQuery(); } private static void createIndex() throws IOException { IndexWriter writer ...
作者:狂放不羁 网址:http://yuquan-nana.iteye.com >>>转载请注明出处!<<< 一:分类 Java中的类加载器可以分为四类: 1 Bootstrp loader Bootstrp加载器是用C++语言写的,它是在Java虚拟机启动后初始化的,它主要负责加载%JAVA_HOME%/jre/lib以及%JAVA_HOME%/jre/classes中的类。 2 ExtClassLoader     Bootstrp loader加载ExtClassLoader,并且将ExtClassLoader的父加载器设置为Bootstrp l ...
       Lucene索引的建立需要两种基础的结构支持,它们分别是Document和Field,这两个概念不能从字面意思上理解。其实Document是Field的集合,它其实主要是用来管理Field的,而Field是一种数据源,也就是要索引的东西。每个Field都有几个重要的属性,它们分别是:      1 name:它是这个Field的名字。它主要是以后要搜索的时候用的,也就是要按照此名字来对此Field来检索。      2 value:它是Field的具体的内容。      3 store:它表明此Field是否需要存储,如果通过名字检索此Field后,要显示完整的Field的内容,那 ...
      当今大型业务系统面临的主要问题就是高并发性和事务访问,客户端的数量与服务器端的分布式对象数量存在一定程度的正比关系,客户端数量越多,服务器端分布式对象也就越多,如何解决这种高并发的问题也就成了企业级架构首先要解决的问题。EJB作为一种服务器端分布式组件,为我们提供了应对策略。       EJB提供了两种管理大量分布式对象的策略:实例池化和激活。下面分别对EJB组件模型中的三种模型进行一些分析。       第一种:无状态的会话Bean(Stateless session bean)       Stateless session bean采用池化技术来实现,stateless se ...
      最近看了Eric Evans的DDD一书,有点感想,随便写一下。在DDD里一般把业务层分为应用服务处和领域模型层。应用服务是与具体的架构有关系的,而领域模型是独立与具体的架构的,是可以在不同的架构下移植的。就比如在EJB3.0中,我们的session bean,MDB等都可以做来实现应用服务层,而我们的业务核心可以放在领域模型层里,应用服务通过领域模型来实现具体的业务操作。       DDD中有实体,值对象,服务三种模型元素,有些对象我们需要跟踪它们的状态,那么就需要给它标识,这样它就是实体,有些对象我们不需要跟踪它的状态变化,它主要是用来描述系统状态的,那么就将它作为值对象,至于 ...
今天在做项目的时候,来了个奇怪的异常,具体异常如下: java.lang.LinkageError: loader constraint violation: google了一会发现原来是jboss的类加载器的问题。因为同一个类被不同的类加载器所加载导致的,所以要按照一下步骤来修改几个配置文件就OK了。 First, edit the conf/jboss-service.xml file and set the NamingService CallByValue to true: <mbean code="org.jboss.naming.NamingService& ...
1.今天在jboss下面发送电子邮件的时候,抛出了如下异常: [JmsServerSession] Unexpected error delivering message org.jboss.mq.SpyMapMessage { Header { jmsDestination : TOPIC.EmailService jmsDeliveryMode : 2 jmsExpiration : 0 jmsPriority : 4 jmsMessageID : ID:5-12110906215461 jmsTimeStamp ...
四川 (截至13日零点,近万人死亡) 北川 死亡7000余人 5-12 22:20 德阳 超500人 5月13日上午 成都 死亡323人,伤1059人 5-13 00:00 都江堰 死亡300余人 5月13日晨 汶川 死亡56人,伤307人 5-12 23:04 广元 死亡52人 5月12日晚 茂县 死亡27人,伤327人 5-13 04:38 雅安 死亡16人 5月13日晨 资阳 死亡10人,伤86人 5-12 18:00 眉山 死亡8人 5月12日晚 阿坝州 死亡56人,伤679人 5-12 23:04 遂宁 死亡7人 5月12日晚 甘孜州 死亡5人 5月12日晚 ...
最近在做EJB的项目,总结一下Ejb在Jboss中部署问题。 在jboss下配置bean的JNDI名可以采取一下三种方式: 第一种:也是默认的,"beanname/remote" 第二种:使用@RemoteBinding注释。@RemoteBinding(jndiBinding="jndiName") 第三种:使用jboss.xml文件,此文件要放在src\META-INF目录下。具体内容见下面: <jboss> <enterprise-beans> <session> < ...
最近在做一个小项目,做到注册模块的时候,如果查询数据库后,发现用户名已经存在就抛出一个UserExistedException给业务委托层,结果我在业务委托里,捕获异常后什么都没有做,结果导致程序就卡在那里阻塞了,调试了很久没发现错误,一看代码发现自己犯了一个超级低级,不能容忍的错误,打算面壁思过一小时(o(∩_∩)o...哈哈),今天记死了,捕获异常后一定要做一点处理,不能什么都不错。
Global site tag (gtag.js) - Google Analytics