`

seam框架CRUD

    博客分类:
  • Seam
阅读更多
首先,配置数据源context.xml 将这个文件放在<catalina_home>的conf目录下,我用的是tomcat6

context.xml  内容如下:



Xml代码
1.<Resource name="jdbc/BBS" auth="Container"    
2.  type="javax.sql.DataSource"    
3.  driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"    
4.  url="jdbc:sqlserver://192.168.1.1:1433;DatabaseName=infodb1"    
5.  username="sa" password="sa" maxActive="4" maxIdle="2"    
6.  maxWait="5000" />  
<Resource name="jdbc/BBS" auth="Container" 
  type="javax.sql.DataSource" 
  driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" 
  url="jdbc:sqlserver://192.168.1.1:1433;DatabaseName=infodb1" 
  username="sa" password="sa" maxActive="4" maxIdle="2" 
  maxWait="5000" /> 



在这里,我用的数据库是sql server2005 ,如果改为mysql数据库的话,需要修改driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
换成mysql的数据库驱动。

配置seam 的components.xml,该文件放在WEB-INF目录下。

Xml代码
1.<?xml version="1.0" encoding="UTF-8"?>    
2.<components xmlns="http://jboss.com/products/seam/components"    
3. xmlns:core="http://jboss.com/products/seam/core"    
4. xmlns:persistence="http://jboss.com/products/seam/persistence"    
5. xmlns:security="http://jboss.com/products/seam/security"    
6. xmlns:transaction="http://jboss.com/products/seam/transaction"    
7. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
8. xsi:schemaLocation="http://jboss.com/products/seam/core     
9.  http://jboss.com/products/seam/core-2.1.xsd                   http://jboss.com/products/seam/persistence     
10.  http://jboss.com/products/seam/persistence-2.1.xsd                   http://jboss.com/products/seam/transaction     
11.  http://jboss.com/products/seam/transaction-2.1.xsd                   http://jboss.com/products/seam/security     
12.  http://jboss.com/products/seam/security-2.1.xsd                  http://jboss.com/products/seam/components     
13.  http://jboss.com/products/seam/components-2.1.xsd     
14.  http://jboss.com/products/seam/spring     
15.  http://jboss.com/products/seam/spring-2.1.xsd">    
16. <core:init debug="false" />    
17. <core:manager concurrent-request-timeout="500"    
18.  conversation-id-parameter="cid" conversation-timeout="120000" />    
19. <transaction:entity-transaction entity-manager="#{em}" />    
20. <persistence:entity-manager-factory name="BBS" />    
21. <persistence:managed-persistence-context auto-create="true"    
22.  entity-manager-factory="#{BBS}" name="em" />    
23.    
24. <security:identity    
25.  authenticate-method="#{authenticator.authenticate}" />    
26. <core:pojo-cache    
27.  cfg-resource-name="#{facesContext.externalContext.context.getRealPath('/WEB-INF/cache.xml')}" />    
28.</components>    
29. 
30. 
31.接着,我们写一个dao的接口 
<?xml version="1.0" encoding="UTF-8"?> 
<components xmlns="http://jboss.com/products/seam/components" 
xmlns:core="http://jboss.com/products/seam/core" 
xmlns:persistence="http://jboss.com/products/seam/persistence" 
xmlns:security="http://jboss.com/products/seam/security" 
xmlns:transaction="http://jboss.com/products/seam/transaction" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://jboss.com/products/seam/core  
  http://jboss.com/products/seam/core-2.1.xsd                   http://jboss.com/products/seam/persistence  
  http://jboss.com/products/seam/persistence-2.1.xsd                   http://jboss.com/products/seam/transaction  
  http://jboss.com/products/seam/transaction-2.1.xsd                   http://jboss.com/products/seam/security  
  http://jboss.com/products/seam/security-2.1.xsd                  http://jboss.com/products/seam/components  
  http://jboss.com/products/seam/components-2.1.xsd  
  http://jboss.com/products/seam/spring  
  http://jboss.com/products/seam/spring-2.1.xsd"> 
<core:init debug="false" /> 
<core:manager concurrent-request-timeout="500" 
  conversation-id-parameter="cid" conversation-timeout="120000" /> 
<transaction:entity-transaction entity-manager="#{em}" /> 
<persistence:entity-manager-factory name="BBS" /> 
<persistence:managed-persistence-context auto-create="true" 
  entity-manager-factory="#{BBS}" name="em" /> 
 
<security:identity 
  authenticate-method="#{authenticator.authenticate}" /> 
<core:pojo-cache 
  cfg-resource-name="#{facesContext.externalContext.context.getRealPath('/WEB-INF/cache.xml')}" /> 
</components> 


接着,我们写一个dao的接口Xml代码
1.  
 

注意 <transaction:entity-transaction entity-manager="#{em}" />
<persistence:entity-manager-factory name="BBS" />
<persistence:managed-persistence-context auto-create="true"
  entity-manager-factory="#{BBS}" name="em" /> 这几句,其中 <persistence:entity-manager-factory name="BBS" /> 要跟上面的context.xml中的《Resource name="jdbc/BBS" 》一致。



接着,我们写一个dao的接口



Java代码
1.public interface UserDAO {     
2.      public void saveUser(User user);     
3.}  
public interface UserDAO {  
      public void saveUser(User user);  
} Java代码
1.<PRE class=java name="code">@Name(" UserDAO ")     
2.@AutoCreate    
3.    
4.public class UserDAOImpl implements  UserDAO {     
5.     @In    
6.     private EntityManager em;      
7.     public void saveUser(User user) throws PersistenceException {     
8.               em.persist(user);     
9.      }     
10.}    
11.</PRE>  
12.   
Java代码 @Name(" UserDAO ")      @AutoCreate          public class UserDAOImpl implements  UserDAO {           @In          private EntityManager em;            public void saveUser(User user) throws PersistenceException {                     em.persist(user);            }      }    @Name(" UserDAO ")  
@AutoCreate 
 
public class UserDAOImpl implements  UserDAO {  
     @In 
     private EntityManager em;   
     public void saveUser(User user) throws PersistenceException {  
               em.persist(user);  
      }  


  Java代码
1.  
 

@In
     private EntityManager em;  之际就注入进来了,不需要在写数数据库连接的东西了。

在faces层:

@In

private UserDAO userDAO;

这样就可以引入DAO进行操作了
分享到:
评论

相关推荐

    使用JBoss Studio開發Seam框架專案(圖式教學)

    **使用JBoss Studio开发Seam框架项目图式教学** Seam框架是一款强大的Java EE集成框架,它简化了在企业级应用程序中的开发流程,特别是在使用EJB、JSF、CDI和JPA等技术时。而JBoss Studio是Red Hat公司推出的一款...

    Seam - 语境相关的组件

    在Seam框架中,每个组件都与特定的执行环境或“语境”相关联。这意味着组件可以根据当前的业务流程、用户会话或特定的上下文条件来提供服务。这种设计模式提高了代码的可重用性和灵活性,同时降低了组件之间的耦合度...

    Manning.Seam.in.Action.Sep.2008.pdf

    于2008年出版,旨在深入探讨Seam框架在Java EE 3环境中的应用与实践。本书不仅覆盖了Seam的核心概念和基本原理,还详细介绍了其状态管理、业务需求处理等高级主题。以下是基于该书标题、描述及部分内文所提取的关键...

    Hand on Seam

    最后,通过Seam框架,可以轻松地开发出基本的CRUD(Create, Read, Update, Delete)应用程序。Seam提供了一系列的工具和API,可以快速实现用户界面与后端服务之间的交互,包括数据的增删改查操作。 综上所述,Seam...

    Seam_Reference_Guide.pdf

    - **配置Seam功能设置**:为了充分利用Seam框架的功能,开发者需要了解如何正确配置Seam相关的设置。这包括启用特定的Seam组件、设置默认行为等。 #### 3. 生成项目的目录结构 - **WAR部署**:当项目构建完成后,...

    jsf+seam+jpa实例

    在现代Web应用开发中,JavaServer Faces (JSF)、Seam框架和Java Persistence API (JPA)是三个关键的技术组件。本实例将深入探讨如何利用这三者进行联合开发,帮助开发者实现高效、可维护的业务逻辑和用户界面。 **...

    Seam-gen生成基础项目骨架

    Seam-gen 是一款用于快速生成基于 Seam 框架的基础项目结构的工具,它通过简单的命令行交互式过程,帮助开发者构建项目的雏形,并且能够根据数据库信息自动生成管理数据库的 CRUD(Create, Read, Update, Delete)...

    Seam_开发工具配置手册.pdf

    - **创建CRUD数据库应用程序**:使用Seam框架可以快速搭建具有增删改查功能的应用程序,包括数据库设计、实体类生成、页面开发等步骤。 #### 九、CRUD应用程序实战演示 - **使用CRUD应用程序**:介绍如何使用已经...

    seam的文档

    《Seam 2.0 Reference》中文版的文档是学习和理解Seam框架的重要资源。 Seam 2.0 强调了组件化的开发方式,它允许开发者使用JSF的UI组件与EJB的业务逻辑无缝连接。JSF作为用户界面层的标准,擅长处理Web表单和事件...

    seam一些基本功能的实现方法

    使用Seam的`@Entity`和`@PersistenceContext`注解,开发者可以直接在组件中进行CRUD(创建、读取、更新、删除)操作,而无需编写大量的DAO(数据访问对象)代码。 Seam还支持AJAX(异步JavaScript和XML),通过Seam...

    seam node

    Seam框架是Java平台上一个功能强大的Web开发框架,它简化了许多常见的Web开发任务,并提供了许多高级特性,如会话管理、依赖注入、AJAX支持等。在Seam项目中,`seamgen`是一个用于自动生成代码的工具,它可以基于...

    Seam2.0学习文档

    对于初学者来说,它是一个宝贵的资源,可以帮助他们快速理解和掌握Seam框架,从而提高开发效率。 通过深入学习这个Seam 2.0学习文档,开发者可以了解到如何利用Seam简化Java EE应用开发,提升应用程序的可维护性和...

    seam+in+action+中文版

    通过 Seam 的集成,开发者可以直接在组件中使用 Hibernate 来执行 CRUD 操作,无需过多关心底层的数据库访问细节。 #### 六、Seam 在 JBoss 中的应用 1. **JBoss AS 上运行示例**:Seam 应用可以在 JBoss ...

    j-seam2.zip

    Seam与JPA的集成使得数据库操作变得更加简单,通过Seam的持久化服务,开发者可以轻松地在实体类和数据库表之间建立映射,实现数据的CRUD操作。Seam还提供了事务管理功能,确保了数据的一致性和完整性。 **Seam的...

    java+架构系列培训课程_JBOSS_SEAM开发

    在探讨JBOSS SEAM开发之前,我们首先理解为何SEAM框架成为Java Web应用开发中的优选。SEAM提供了诸多优势,使其在众多框架中脱颖而出: 1. **增加AJAX特性**:SEAM通过简化AJAX的使用,让开发者能够迅速在应用程序...

    jbossas7_seamremoting_jpa_小例子

    Seam Remoting是Seam框架的一部分,它是一个用于简化Java EE开发的全栈框架。Seam Remoting允许在客户端和服务器之间进行高效的远程调用,提供了对EJB、CDI(Contexts and Dependency Injection)以及JSF(Java...

    NetBeans下jboss seam开发入门

    在`persistence.xml`中配置数据源和实体类,然后在Seam组件中通过`@In`注解注入EntityManager,进行CRUD操作。 7. **EJB集成**: Seam同样支持EJB,可以在Seam组件中声明并使用EJB服务。通过`@EJB`注解,可以直接...

    jsf seam hibernate 初学者练习

    Seam是一个开源的应用框架,它整合了JSF、EJB、CDI(Contexts and Dependency Injection)、JPA(Java Persistence API)等技术,使得开发人员能够更加便捷地构建企业级的Java应用。Seam提供了一个统一的环境,减少...

    java培训课程-JBOSS-SEAM开发.pptx

    Java培训课程-JBOSS-SEAM开发主要涵盖了Java企业级应用开发中的关键技术和框架,特别是JBOSS SEAM的应用。SEAM是一个全面的Java EE框架,旨在简化开发过程,提高开发效率,同时提供了丰富的功能来处理复杂的业务逻辑...

Global site tag (gtag.js) - Google Analytics