@ManyToMany(targetEntity="",cascade="CascadeType.ALL|MERGE|PERSIST|REFRESH|REMOVE",
fetch="FetchType.EAGER|LAZY", mappedBy="",optional="true|false")
@JoinTable标注是标识多对多中间表的中对应的信息的
例:
@JoinTable(
name="CUST_PHONE"//中间表表名,
joinColumns=
@JoinColumn(name="CUST_ID", referencedColumnName="ID"),
//指明本方id关联的列名及引用自哪一列
inverseJoinColumns=
@JoinColumn(name="PHONE_ID", referencedColumnName="ID")
//指明关联方id所对应的列名及引用自哪一列
)
关联的两个类Customer用户,和用户的电话号码PhoneNumber
例 1:
In Customer class:
@ManyToMany
@JoinTable(name="CUST_PHONES")
public Set getPhones() { return phones; }
In PhoneNumber class:
@ManyToMany(mappedBy="phones")
public Set getCustomers() { return customers; }
例 2:
In Customer class:
@ManyToMany(targetEntity=com.acme.PhoneNumber.class)
public Set getPhones() { return phones; }
In PhoneNumber class:
@ManyToMany(targetEntity=com.acme.Customer.class, mappedBy="phones")
public Set getCustomers() { return customers; }
例 3:
In Customer class:
@ManyToMany
@JoinTable(name="CUST_PHONE",
joinColumns=
@JoinColumn(name="CUST_ID", referencedColumnName="ID"),
inverseJoinColumns=
@JoinColumn(name="PHONE_ID", referencedColumnName="ID")
)
public Set getPhones() { return phones; }
In PhoneNumberClass:
@ManyToMany(mappedBy="phones")
public Set getCustomers() { return customers; }
在实体中,两种类型的属性需要进行特殊标注,也就是Date和Calendar
需要使用@Temporal(Date),@Temporal(Calendar)
EJB QL
EJB3.0中的QL,可以使用order by和having字句,对得出的结果进行分组处理。
EJB3.0中的QL关联查询和hibernate的HQL的写法基本相同。
例:
Query query = em.createQuery("select o from Order o left join o.orderItems where o.ower.age=26 order by o.orderid");
EJB QL也可以使用构造器查找。
例:
Query query = em.createQuery("select new com.foshanshop.ejb3.bean.SimplePerson(p.name,p.sex) from Person p order by p.personid desc");
EJB事务处理
事务解决了两大问题,原子操作,数据共享
原子操作,是由不可分操作组成的,使这些不可分的操作,一同操作成功或者一同失败。
分享到:
相关推荐
Java认证是全球认可的Java程序员技能评估标准,2009年的Java认证辅导资料涵盖了当时最新的Java技术,旨在帮助考生顺利通过考试并提升其Java编程能力。这些资料可能包括了Oracle Certified Associate (OCA), Oracle ...
JavaEE(Java Platform, Enterprise Edition)是一个用于开发企业级应用程序的框架,它提供了多种服务和组件模型,如Servlet、JSP、EJB等,以支持分布式、多层架构的应用程序开发。在这个辅导员管理项目中,JavaEE...
### 最新系统分析师考试复习资料知识点汇总 #### 一、开发技术:语言与平台 - **JavaBean组件模型特点** - JavaBean 是一种 Java 类,它遵循特定的编写规范,通常用来封装业务逻辑或数据。 - **封装性**:...
Curso_Java Curso de Java,POO,JDBC,Servlets,JavaEE,Web服务,JSF,EJB,JPA,PrimeFaces,Hibernate,Spring,Struts-全球辅导公司。乌巴尔多·阿科斯塔(Ubaldo Acosta)
在这个系统中,模型可能由JavaBeans或EJB实现,视图主要由JSP页面完成,控制器可能是自定义的Servlet或Spring MVC的DispatcherServlet。 3. **数据库管理**:系统中包含数据库文件,可能是MySQL、Oracle或其他关系...
这个压缩包显然包含了针对该考试的复习资料,包括考试说明、理论题复习题以及操作题复习题。以下将详细阐述Java编程语言的一些核心知识点,以及如何根据这些文件进行有效的备考。 1. **基础语法**:作为Java学习的...
本压缩包包含的“高技能鉴定辅导材料java”很可能是针对Java Web开发人员的考试复习资料,旨在帮助他们掌握核心概念、技术和最佳实践。 1. **Servlet与JSP**: - Servlet是Java服务器端编程的基础,它扩展了Web...
系统的主要功能是教师的工作量统计,这包括但不限于记录教师的教学任务(如课程数量、学生人数)、科研活动、辅导任务等。系统可能提供数据录入界面,让教师自行申报,也可以自动化抓取相关数据,如教务系统中的...
MyEclips开发工具有很强大的力量,它对JavaServlet,AJAX,JSP,Struts,JSF,Spring、Hibernate等的支持使得开发变得非常容易,同时还具备了EJB3的功能,JDBC数据库连接的功能。所以说MyEclipse是所有开源工具开发...
论文资料部分可能详述了系统的设计理念、架构选择、功能模块、实现技术以及性能评估等方面,对于理解整个项目有重要的参考价值。通过阅读论文,可以学习到如何将理论知识应用到实际开发中。 项目截图展示了系统的...
项目文档资料包括项目报告和答辩PPT,详细记录了系统的功能需求、设计思路、实现技术和测试结果。项目辅导视频则进一步解释了系统的开发过程和解决的问题,对于学习和复用该系统非常有帮助。 总结,这个基于JSP的...
项目辅导视频和文档资料是学习和实施该项目的重要资源。它们可能包含系统需求分析、设计思路、开发过程、调试技巧等内容,帮助开发者理解和复现整个项目。数据库设计文档、系统架构图、用户手册等都是确保项目成功...
7. **项目辅导视频**:这部分内容可能是对系统开发过程的记录,包括如何配置开发环境、编写代码、调试问题以及如何进行系统部署等步骤,对于学习者来说是一份宝贵的教程资源。 8. **系统部署**:项目部署涉及服务器...
2. **轻量级**:与EJB容器相比,Spring的IOC容器更轻便,适合各种规模的项目。 3. **技术整合**:Spring集成了多种技术和框架,如ORM、logging、J2EE等,简化了开发工作。 4. **模块化设计**:开发者可以根据需求...
- **项目辅导视频、论文等资料**:可能包含项目开发过程的教程、设计文档、相关论文等,帮助理解和学习项目。 - **数据库**:包含数据库脚本或已有的数据库文件,用于恢复和操作系统的数据环境。 - **源代码**:...
这份《2013年软考高级信息系统项目管理师考试计算机部分考点汇总表资料》是一份针对信息系统项目管理师考试的辅导材料,涵盖了计算机领域的多个知识点,其中涉及了信息系统的基础知识、软件工程、面向对象方法、各种...
7. **项目辅导视频**:这部分资源通常会包含系统的搭建步骤、功能实现、问题解决等内容,对于初学者来说,通过视频教程可以更直观地学习和理解项目开发过程。 8. **文档资料**:可能包含需求分析文档、系统设计文档...
4. **EJB(Enterprise JavaBeans)**:虽然JSP可以处理简单的业务逻辑,但复杂的商业应用可能需要EJB来提供更高级的服务,如事务管理、安全性和分布式服务。不过,现代Web应用更倾向于使用轻量级框架,如Spring,以...
4. **EJB或Spring框架**:虽然未明确提及,但为了提高代码复用性和模块化,可能使用了Enterprise JavaBeans(EJB)或Spring框架。这些框架可以简化事务管理、对象持久化和依赖注入,提升系统的可维护性。 5. **前端...
1. **JavaEE基础**:JavaEE(Java Enterprise Edition)是用于开发企业级应用程序的平台,它包括一系列服务和API,如Servlet、JSP、EJB(Enterprise JavaBeans)、JMS(Java Message Service)等,这些技术在本系统...