环境:
Eclipse Platform
Version: 3.3.2
Build id: M20080221-1800
JBossAS Tools
Version: 1.1.2.GA
jboss-4.2.0.GA
jboss-seam-2.0.2.SP1
步骤
1.seam-gen 生成我的第一个SEAM工程 myfirstseam
生成的seam-gen/build.properties信息如下:
#Generated by seam setup
#Tue Dec 30 17:23:53 GMT 2008
hibernate.connection.password=
workspace.home=c\:/myseam
model.package=com.mydomain.model
hibernate.default_catalog=localDB
driver.jar=../lib/hsqldb.jar
action.package=com.mydomain.myfirstseam
test.package=com.mydomain.test
database.type=hsql
richfaces.skin=ruby
hibernate.default_schema=INFORMATION_SCHEMA
database.drop=n
project.name=myfirstseam
hibernate.connection.username=sa
hibernate.connection.driver_class=org.hsqldb.jdbcDriver
hibernate.cache.provider_class=org.hibernate.cache.HashtableCacheProvider
project.type=ear
icefaces.home=
database.exists=n
jboss.home=D\:/TDDownload/jboss-4.2.0.GA
hibernate.dialect=org.hibernate.dialect.HSQLDialect
hibernate.connection.url=jdbc\:hsqldb\:${jboss.server.data.dir}${/}hypersonic${/}localDB
icefaces=n
工程类路径文件内容如下(.classpath)
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="classes/model" path="src/model"/>
<classpathentry kind="src" output="classes/action" path="src/action"/>
<classpathentry kind="src" output="classes/test" path="src/test"/>
<classpathentry kind="src" path="resources"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="bootstrap"/>
<classpathentry kind="lib" path="lib/hibernate-validator.jar"/>
<classpathentry kind="lib" path="lib/hibernate.jar"/>
<classpathentry kind="lib" path="lib/hibernate-annotations.jar"/>
<classpathentry kind="lib" path="lib/hibernate-commons-annotations.jar"/>
<classpathentry kind="lib" path="lib/hibernate-entitymanager.jar"/>
<classpathentry kind="lib" path="lib/jboss-seam.jar" sourcepath="lib/src/jboss-seam-sources.jar"/>
<classpathentry kind="lib" path="lib/jboss-seam-debug.jar"/>
<classpathentry kind="lib" path="lib/jboss-cache.jar"/>
<classpathentry kind="lib" path="lib/jbpm-jpdl.jar"/>
<classpathentry kind="lib" path="lib/antlr.jar"/>
<classpathentry kind="lib" path="lib/jgroups.jar"/>
<classpathentry kind="lib" path="lib/jsf-facelets.jar"/>
<classpathentry kind="lib" path="lib/jstl.jar"/>
<classpathentry kind="lib" path="lib/jsf-api.jar"/>
<classpathentry kind="lib" path="lib/servlet-api.jar"/>
<classpathentry kind="lib" path="lib/testng.jar"/>
<classpathentry kind="lib" path="lib/jboss-el.jar"/>
<classpathentry kind="lib" path="lib/el-api.jar"/>
<classpathentry kind="lib" path="lib/mvel14.jar"/>
<classpathentry kind="lib" path="lib/drools-core.jar"/>
<classpathentry kind="lib" path="lib/drools-compiler.jar"/>
<classpathentry kind="lib" path="lib/janino.jar"/>
<classpathentry kind="lib" path="lib/antlr-runtime.jar"/>
<classpathentry kind="lib" path="lib/mail.jar"/>
<classpathentry kind="lib" path="lib/persistence-api.jar" sourcepath="D:/Program Files/Java/jdk1.5.0_16/src.zip"/>
<classpathentry kind="lib" path="lib/ejb-api.jar"/>
<classpathentry kind="lib" path="lib/jsr250-api.jar"/>
<classpathentry kind="lib" path="lib/jta.jar"/>
<classpathentry kind="lib" path="lib/core.jar"/>
<classpathentry kind="lib" path="lib/jboss-embedded-api.jar"/>
<classpathentry kind="lib" path="lib/hibernate-search.jar"/>
<classpathentry kind="lib" path="lib/richfaces-api.jar"/>
<classpathentry kind="lib" path="lib/hsqldb.jar"/>
<classpathentry kind="lib" path="lib/lucene-core.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="lib" path="D:/TDDownload/jboss-seam-2.0.2.SP1/lib/test/jboss-embedded-all.jar"/>
<classpathentry kind="lib" path="D:/TDDownload/jboss-seam-2.0.2.SP1/lib/test/thirdparty-all.jar"/>
<classpathentry kind="lib" path="D:/TDDownload/jboss-seam-2.0.2.SP1/lib/test/hibernate-all.jar"/>
<classpathentry kind="lib" path="D:/TDDownload/jboss-seam-2.0.2.SP1/lib/jboss-deployers-core-spi.jar"/>
<classpathentry kind="lib" path="D:/TDDownload/jboss-seam-2.0.2.SP1/lib/jboss-embedded-api.jar"/>
<classpathentry kind="lib" path="D:/TDDownload/jboss-seam-2.0.2.SP1/lib/jboss-deployers-client-spi.jar"/>
<classpathentry kind="lib" path="D:/TDDownload/jboss-4.2.0.GA/server/default/lib/jboss-ejb3x.jar"/>
<classpathentry kind="output" path="test-build"/>
</classpath>
D:/TDDownload/jboss-seam-2.0.2.SP1/lib/路径下的JAR是用于测试的JAR
用于测试的文件夹结构如下:
└─test
│ readme.txt
│ RegActionTest.java
│
└─META-INF
persistence.xml
RegActionTest.java文件内容如下:
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.Persistence;
import javax.persistence.Query;
import org.jboss.seam.mock.SeamTest;
import org.junit.Test;
public class RegActionTest extends SeamTest {
@Test
public void testReg() {
EntityManager em = Persistence
.createEntityManagerFactory("myfirstseam1")
.createEntityManager();
em.getTransaction().begin();
Query q= em.createNativeQuery("SELECT USER FROM INFORMATION_SCHEMA.SYSTEM_USERS");
q.setFirstResult(1);
q.setMaxResults(10);
List list = q.getResultList();
em.getTransaction().commit();
em.close();
}
}
persistence.xml文件内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Persistence deployment descriptor for dev profile -->
<persistence>
<persistence-unit name="myfirstseam1"
transaction-type="RESOURCE_LOCAL">
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
<property name="hibernate.connection.driver_class"
value="org.hsqldb.jdbcDriver" />
<property name="hibernate.connection.username" value="sa" />
<property name="hibernate.connection.password" value="" />
<property name="hibernate.connection.url"
value="jdbc:hsqldb:localDB" />
<property name="hibernate.show_sql" value="true"/>
</properties>
</persistence-unit>
</persistence>
运行RegActionTest的JUNIT的SQL的输出结果如下:
Hibernate: SELECT limit ? ? USER FROM INFORMATION_SCHEMA.SYSTEM_USERS
终于完成我的第一个SEAM JPQL UNIT测试环境!
分享到:
相关推荐
8. **评估与比较**:该测试数据集可能包含了不同算法或不同参数设置下的结果,可以用来评估和比较Seam Carving的效果。研究者可以通过比较处理后的图像质量、内容保留程度以及计算效率等指标来衡量算法的优劣。 9. ...
性能测试是确保Seam应用能够高效运行的关键环节。以下是一些提高Seam系统性能测试点的详细说明: 1. **性能指标监控**: - **响应时间**:应用的响应速度直接影响用户体验。通过监控请求处理时间和页面加载时间,...
在“seam一些基本功能的实现方法”中,我们将探讨Seam的关键特性以及如何在实践中应用它们。 首先,Seam提供了组件模型,允许开发者将应用拆分为小而独立的部分,每个部分都称为一个Seam组件。这些组件可以很容易地...
7. **测试与调试**:掌握Seam的测试工具和策略,确保代码质量。 8. **Seam组件**:了解如Conversation、Transactions、邮件服务等Seam内置组件的使用方法。 9. **实时性与Ajax**:探索Seam如何实现实时更新和Ajax...
SeamTest提供了一种结构化的、声明式的测试方法,帮助开发者更有效地验证应用程序的各个层面,包括组件、服务以及用户界面。本文将围绕SeamTest的关键特性和使用方法进行详细探讨。 首先,SeamTest的核心在于它与...
Seam Security是针对Java Web应用程序的安全框架,它是JBoss Seam项目的一部分,提供了全面的安全解决方案,包括身份验证、授权和身份管理等功能。Seam Security以易于配置和使用为特点,允许开发者快速设置应用程序...
6. **Seam配置**:`seam-getting-started-build.xml`文件很可能是Seam项目的构建文件,可能包含Maven或Ant的配置信息,用于编译、测试和打包项目。理解如何配置Seam项目以及依赖管理是非常重要的。 7. **开发环境**...
4. **测试框架**: Seam 2.0引入了集成测试框架,使得单元测试和集成测试变得更加方便。 5. **国际化(i18n)和本地化(l10n)支持**: 提供了全面的国际化和本地化解决方案,方便多语言应用的开发。 **五、Seam的...
Seam Carving是一种图像内容感知的尺寸调整方法,它能够在保持图像主要结构...加载测试图像,编译并运行代码,就可以看到Seam Carving效果。通过调试和修改参数,你可以调整接缝的选择策略,以适应不同的图像和需求。
Seam Carving,又称图像拉链,是一种基于能量最小化的图像调整方法,主要用于图像大小的动态调整,而不仅仅是简单的等比例缩放。它能够在保持图像主要结构不变的情况下,根据需要增加或减少图像的宽度和高度。这种...
Seam提供了强大的参数绑定机制,使得表单数据可以直接映射到后端组件的方法或属性。这种方法大大简化了数据处理的过程,减少了手动编码的工作量。 ##### 4. 增强的会话管理 Seam引入了一种声明式的会话管理机制,...
8. **测试支持**:Seam提供了一套完整的测试工具,包括单元测试、集成测试和端到端测试,确保应用的质量。 然而,根据描述中的反馈,英文版可能在阅读体验上并不理想,可能需要花费更多的时间和精力去理解。对于...
MATLAB_Seam_Carving_seamcarving_ 是一个与图像处理相关的项目,主要涉及到一种称为“seam carving”的技术,这是一种动态图像调整大小的方法,它可以在不改变图像整体视觉效果的情况下,增加或减少图像的宽度和...
- `@Create`: 这个注解标记了一个方法,表示在Seam上下文初始化时调用此方法。通常用来进行对象的初始化。 - `@Destroy`: 类似于`@Create`,当Seam上下文销毁时调用`@Destroy`标记的方法,常用于资源清理。 2. *...
2. **在Tomcat服务器上运行示例**:Tomcat作为轻量级的应用服务器,可以快速部署简单的Seam应用,便于学习和测试。 ##### 1.2 第一个例子:注册示例 这个示例展示了如何使用Seam实现用户注册功能,包括前端页面...
### SEAM 中文开发指南知识点概述 #### 一、SEAM 框架简介 ...以上是 SEAM 中文开发指南的主要知识点概述,从基础入门到高级功能均有涉及,旨在帮助开发者全面掌握 SEAM 框架的使用方法和技术要点。
- **从现有数据库生成应用**: 介绍了基于已有数据库快速生成Seam应用的方法。 - **部署为EAR包**: 演示了如何将Seam应用打包并部署到生产环境。 - **热部署**: 介绍Seam支持的热部署特性,有助于提升开发效率。 ...
Seam 的组件模型支持高度模块化的设计,每个组件都可以独立开发、测试和部署,这不仅提高了开发效率,还增强了应用程序的可维护性。 #### 3.3 改善用户体验 Seam 提供了许多内置的功能,如状态管理、事件处理等,...
为了支持测试和调试,压缩包可能还包括`jboss-as-server.jar`或类似的文件,它们与特定的应用服务器(如JBoss AS)相关,用于部署和运行Seam应用。 总的来说,这个“seam需要的jar包”集合是构建和运行Seam应用程序...
Seam简化了EJB的使用,不需要繁琐的接口和Home接口,可以直接在组件中定义服务方法,降低了学习和使用的难度。 JPA是Java EE的标准持久化框架,Seam与JPA的集成使得数据库操作更加透明。开发者可以通过简单的注解,...