草庐IT

Tomcat-Spring-Hibernate

全部标签

java - 避免 Hibernate LazyInitializationExceptions 的策略

除了使用OpenSessionInView模式之外,还有其他方法可以避免HibernateWeb应用程序中的LazyInitializationExceptions吗?使用OpenSessionInView有什么缺点吗? 最佳答案 在我们的Web应用程序上工作时,我们通常会事先决定View页面中需要哪些对象/字段,并确保在分派(dispatch)到View之前所有对象都已从模型中正确初始化。这可以(至少)通过三种方式实现:fetching使用急切策略的属性(即使用FetchMode.JOIN,如果您使用CriteriaAPI)显式初

java - Hibernate *不* 抛出异常(我认为应该抛出异常)

HibernateJavaDoc指出,如果已经存在o的持久实例,Session.update(Objecto)将引发异常,对吧?Ifthereisapersistentinstancewiththesameidentifier,anexceptionisthrown.However,thefollowingcodedoesn'tthrowanythingwhenIrunit.AndIthinkitshould!Emailemail=newEmail("andre","girafa","hi");Sessionsession=factory.openSession();Transacti

java - Windows下如何用特定的server.xml启动Tomcat?

有时我想用特殊配置启动Tomcat6,而不是使用“server.xml”。所以我创建了另一个名为server_test.xml的xml文件。现在我想告诉tomcat使用这个配置。这是怎么做到的?我在网上搜索几乎找不到任何东西。只有这样:“在Tomcat配置中使用不同的server.xml文件:./tomcat.shstart-f/var/tmp/server-${USER}.xml”这正是我想要的。也许这适用于linux系统但不适用于windows。有什么想法吗? 最佳答案 我知道了。我花了半个晚上,但它有效:)起初我也想到了符号链

java - Hibernate 和 JPA,用什么,用在哪里?

有人可以向我解释一下JPA和Hibernate之间的主要区别是什么吗?在哪里使用Hibernate?在哪里使用JPA?为什么不是实体bean? 最佳答案 一点历史:实体bean是EJB1和2的一部分。它们很难使用,因此需要一个替代方案。然后Hibernate出现了。(我不记得这些时间了)Hibernate发展成为对象关系映射中的事实上的标准。然后决定需要一个标准,因此创建了受Hibernate影响很大的JPA规范。JPA只是一个规范-它定义了ORM框架应该做什么,以及它应该支持哪些注释。JPA由许多供应商实现-Hibernate、E

java - 清除整个数据库(用于使用 Hibernate 进行单元测试)

我的单元测试使用Hibernate连接到内存中的HSQLDB数据库。我希望有一种方法可以在JUnit的TestCase.setUp()方法中清除和重新创建数据库(包括架构和所有数据的整个数据库)。 最佳答案 您可以配置您的hibernate配置文件以强制数据库每次都重新创建您的表和模式。create-drophibernate.hbm2ddl.auto在创建SessionFactory时自动验证或将模式DDL导出到数据库。使用create-drop,当显式关闭SessionFactory时,将删除数据库模式。例如验证|更新|创建|创

java - 如何从静态内部类构造函数创建 Spring bean?

我正在尝试使用Spring框架IoC容器来创建类的实例ThreadPoolExecutor.CallerRunsPolicy.在Java中,我会这样做......importjava.util.concurrent.RejectedExecutionHandler;importjava.util.concurrent.ThreadPoolExecutor;...RejectedExecutionHandlerrejectedExecutionHandler=newThreadPoolExecutor.CallerRunsPolicy();但是当我尝试在Spring中执行等效操作时,它会

java - Spring-MVC:需要最简单的表单处理、绑定(bind)和验证示例

我有一个表格:我有一个Person对象:publicclassPerson{privateStringfirstname;privateStringlastname;//...getters&setters...}我想接收此数据,对其执行验证,然后将其发布到数据存储区。如何编写Controller来执行此操作?我知道我可以将参数作为请求参数传递,但我认为执行此操作的“正确”方法是以某种方式将数据从表单绑定(bind)到Person对象,然后在Controller中接收该Person对象并调用Validate对象被配置为接收Person对象。经过大量阅读,这一步让我感到困惑。有人可以告诉

java - Spring portlet mvc : @Valid does not seem to work

我创建了一个bean类并在我的Controller中使用它,但它似乎不起作用。也就是说,即使我输入了无效的年龄,result.hasErrors仍然是错误的。bean类:publicclassUser{@Min(13)privateintage;privateStringname;publicintgetAge(){returnage;}publicvoidsetAge(intage){this.age=age;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}}Contro

java - Eclipse 中的 Tomcat : It runs but time out during startup anyway

我正在使用Tomcat7在Eclipse(Helios)中运行一个JavaWeb应用程序。服务器成功启动(指示持续时间)但是Eclipse的进度条仍然旋转,表明Tomcat正在启动。最终达到超时并抛出错误。我相信Tomcat很好,因为我已经获取了它使用的命令并在shell中手动运行了它。Tomcat运行良好,我能够在预期的URL上访问网络应用程序。我也可以在它启动之后和超时发生之前点击它。我重新安装了Eclipse,干净地运行了它,删除/重新创建了服务器。没有任何效果。有人有任何线索吗? 最佳答案 我有这个问题,Eclipse似乎在

java - Spring AOP : get access to argument names

我正在使用Spring3.x、Java6。我有一个带有以下连接点的@Around切面:@Around("execution(public*my.service.*.*Connector.*(..))")所以,我基本上感兴趣的是拦截所有对类名以“Connector”结尾的类的公共(public)方法的调用。到目前为止一切顺利。现在,就我而言,我想访问方法的实际参数名称:publicdoStuff(Stringmyarg,LonganotherArg)myarg和anotherArg我理解使用:CodeSignaturesignature=(CodeSignature)jointPoint