`

ejb3学习笔记4

    博客分类:
  • ejb3
 
阅读更多

1数据源: 详细定义

    <jndi-name>MSSQLDS</jndi-name>
    <connection-url>jdbc:sqlserver://localhost:1433;DatabaseName=EJB</connection-url>
    <driver-class>com.microsoft.sqlserver.jdbc.SQLServerDriver</driver-class>
    <user-name>sa</user-name>
    <password>123456</password>

 

2 配置实体bean

 

  1. @SuppressWarnings("serial")  
  2. @Entity  
  3. @Table(name="person")  
  4. public class Person implements Serializable{  
  5.       
  6.     private Integer id;  
  7.     private String name;  
  8.       
  9.     public Person(){  
  10.     }  
  11.       
  12.     public Person(String name){  
  13.         this.name = name;  
  14.     }  
  15.       
  16.     @Id @Column(name="id") @GeneratedValue(strategy=GenerationType.IDENTITY)  
  17.     public Integer getId() {  
  18.         return id;  
  19.     }  
  20.     public void setId(Integer id) {  
  21.         this.id = id;  
  22.     }  
  23.       
  24.     @Column(name="name", length=20, nullable=false)  
  25.     public String getName() {  
  26.         return name;  
  27.     }  
  28.     public void setName(String name) {  
  29.         this.name = name;  
  30.     }  
  31.       
  32.     @Override  
  33.     public int hashCode() {  
  34.         final int prime = 31;  
  35.         int result = 1;  
  36.         result = prime * result + ((id == null) ? 0 : id.hashCode());  
  37.         return result;  
  38.     }  
  39.     @Override  
  40.     public boolean equals(Object obj) {  
  41.         if (this == obj)  
  42.             return true;  
  43.         if (obj == null)  
  44.             return false;  
  45.         if (getClass() != obj.getClass())  
  46.             return false;  
  47.         final Person other = (Person) obj;  
  48.         if (id == null) {  
  49.             if (other.id != null)  
  50.                 return false;  
  51.         } else if (!id.equals(other.id))  
  52.             return false;  
  53.         return true;  
  54.     }  
  55.       
  56. }  

  

 

 

3 在jar META-INF 创建persistence.xml

 

  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <persistence xmlns="http://java.sun.com/xml/ns/persistence"  
  3.             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">  
  5.     <persistence-unit name="itcast" transaction-type="JTA">  
  6.         <jta-data-source>java:MSSQLDS</jta-data-source>  
  7.         <properties>  
  8.             <property name="hibernate.hbm2ddl.auto" value="update"/>  
  9.             <property name="hibernate.show_sql" value="true"/>  
  10.             <property name="hibernate.format_sql" value="true"/>  
  11.         </properties>  
  12.     </persistence-unit>  
  13. </persistence>  

  

4 dao

 

  1. @Stateless  
  2. @Remote(PersonService.class)  
  3. public class PersonServiceBean implements PersonService{  
  4.     @PersistenceContext(unitName="itcast") EntityManager em;  
  5.       
  6.     public void delete(Integer personId) {  
  7.         em.remove(em.getReference(Person.class, personId));  
  8.         //返回而 代理对象   
  9.     }  
  10.   
  11.     public Person getPerson(Integer personId) {  
  12.         return em.find(Person.class, personId);  
  13.     }  
  14.   
  15.     @SuppressWarnings("unchecked")  
  16.     public List<Person> getPersons() {  
  17.         return (List<Person>) em.createQuery(" select p from Person p ").getResultList();  
  18.     }  
  19.   
  20.     public void save(Person person) {  
  21.         em.persist(person);  
  22.     }  
  23.   
  24.     public void update(Person person) {  
  25.         em.merge(person);  
  26.     }  
  27. }  

 

在dao 中:

@PersistenceContext(unitName="foshanshop") protected EntityManager em;

 

属性:

@Transient 实体bean默认全体成员都会持久, 该注释表示不持久某项

@Enumerated(EnumType.STRING)

public CommentType getType(){

}

 

public enum CommentType{

     NEWS{public String getName(){reutrn "新闻";}},

     PRODUCT{public String getName(){reutrn "产品";}};

     public abstract String getName();

}

 

@Lob 映射Blob  Clob

@Basic(fetch=FetchType.LAZY) 加在lob大文件时 延迟加载

@Temporal 指定时间类型

@Embedded

分享到:
评论

相关推荐

    ejb3课堂笔记,适合初学者

    ### EJB3课堂笔记知识点概览 #### 一、EJB 概述 - **EJB 定义**: Enterprise JavaBeans (EJB),即企业级Java Bean,是一种用于开发、部署服务器端分布式组件的标准(规范),它采用了Java语言进行编写。 - **EJB ...

    EJB3 学习笔记

    学习EJB3过程中自己总结的一些关于学习EJB3的技术点,以及可能遇到的问题

    Weblogic Ejb 学习笔记

    WebLogic EJB学习笔记主要涵盖了企业级Java Bean(Enterprise JavaBeans,简称EJB)在Oracle WebLogic Server中的应用和管理。EJB是Java EE(Java Platform, Enterprise Edition)平台的核心组件,用于构建可扩展、...

    ejb 学习笔记6

    ### EJB学习笔记第六部分详解 #### 一、EJB之间的调用 EJB (Enterprise JavaBeans) 是Java EE平台中用于开发分布式企业应用程序的重要组件。在实际开发过程中,经常需要一个EJB调用另一个EJB来实现更复杂的业务...

    EJB3.0 学习笔记

    **EJB3.0 学习笔记** EJB(Enterprise JavaBeans)是Java EE平台中的核心组件,用于构建可扩展的、安全的、事务处理的分布式应用程序。EJB3.0是EJB的一个重大更新,引入了许多改进,使得开发过程更为简化,降低了...

    ejb学习笔记

    在深入探讨《ejb学习笔记》这一主题之前,我们首先需要理解什么是EJB(Enterprise JavaBeans)。EJB是Java平台为企业级应用开发提供的一套组件模型,它属于J2EE(Java 2 Platform, Enterprise Edition)的一部分,...

    ejb 学习笔记4

    ### EJB学习笔记4:深入理解实体与JPA #### 实体的概念与作用 实体,在企业级Java开发中,特别是EJB(Enterprise JavaBeans)框架下,指的是具有持久化能力的POJO(Plain Old Java Object)类。不同于实体Bean...

    EJB概述 学习笔记

    **EJB概述** Enterprise JavaBeans(EJB)是Java平台企业版(Java EE)的核心组成部分,主要用于构建可扩展、安全且事务处理...学习EJB可以帮助理解企业级应用的复杂性,同时也能更好地评估和选择现代化的开发方案。

    Weblogic EJB 学习笔记

    Weblogic EJB 学习笔记主要涵盖了EJB(Enterprise JavaBeans)的基础知识,包括无状态会话bean、有状态会话bean和实体bean这三种主要的EJB类型,以及EJB在Weblogic服务器中的配置和事务管理。 1. **无状态会话bean*...

    EJB入门学习笔记,很多实例说明

    EJB简单入门,是自己在学习过程做好的笔记。里面有很多具体的实例。

    EJB学习笔记2

    【EJB学习笔记2】 EJB,全称Enterprise JavaBeans,是Java EE(现在被称为Jakarta EE)平台的一部分,主要用于构建可复用的、安全的、可伸缩的服务器端应用程序。EJB标准定义了一组规范,使得开发者可以创建分布式...

    EJB学习笔记.doc

    【EJB学习笔记】 EJB,全称为Enterprise Java Beans,是Java平台上的一个标准,用于开发和部署服务器端的分布式组件。它基于Java语言,为创建高效能、安全且可扩展的企业级应用提供了框架。EJB规范由Java ...

    ejb 学习笔记5

    ### 深入解析《ejb学习笔记5》——消息驱动Bean详解 #### 消息驱动Bean概述 消息驱动Bean(MDB,Message Driven Bean)是Enterprise JavaBeans(EJB)框架中的一个重要组成部分,主要用于接收并处理来自消息中间件...

    ejb 学习笔记7

    ### EJB学习笔记7知识点详解 #### 实体(消息)- 重点篇章解析 ##### 继承映射策略深入理解 在实体继承映射中,我们主要探讨了三种不同的策略,每种策略都有其特定的应用场景及优缺点。 1. **所有继承结构一张表...

    EJB学习笔记、运行机制

    【EJB学习笔记、运行机制】 企业级程序(Enterprise Application)是围绕商业目的设计的,具有分布分层的程序架构。这种类型的程序旨在满足大型企业的复杂需求,通常涉及多个组件和层,确保系统的稳定性和可扩展性...

    ejb 学习笔记3

    经典资料+个人心得,希望大家能喜欢

    ejb 学习笔记8

    ### EJB学习笔记8:深入理解事务处理机制 #### 一、事务的背景知识 **事务**是指一系列操作,这些操作作为一个不可分割的工作单元来执行,即要么全部完成,要么完全不执行。事务的主要特性包括: - **原子性...

    EJB学习笔记.rar

    4. **并发控制**:EJB容器管理多个客户端对组件的并发访问,避免数据冲突。 5. **生命周期管理**:EJB容器负责Bean的创建、初始化、激活、钝化、销毁等过程,开发者只需关注业务逻辑。 6. **资源注入**:通过依赖...

    EJB3笔记代码

    本笔记代码主要涵盖了EJB3的一些核心特性,包括定时任务(timer)、会话bean(session)、实体bean(entity)、拦截器(interceptor)、领域模型(domain)、客户端(client)、事务管理(transaction)、消息传递...

Global site tag (gtag.js) - Google Analytics