`
115893520
  • 浏览: 142677 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

JPA自连接例子

JPA 
阅读更多
public class ProductType implements Serializable{
	private static final long serialVersionUID = 8106351120886053881L;
	/** 类别id **/
	private Integer typeid;
	/** 类别名称 **/
	private String name;
	/** 子类别 **/
	private Set<ProductType> childtypes = new HashSet<ProductType>();
	/** 所属父类 **/
	private ProductType parent;
	
	private Set<ProductInfo> products = new HashSet<ProductInfo>();
	
	@OneToMany(mappedBy="type", cascade=CascadeType.REMOVE)
	public Set<ProductInfo> getProducts() {
		return products;
	}

	public void setProducts(Set<ProductInfo> products) {
		this.products = products;
	}

	public ProductType() {}
	
	public ProductType(Integer typeid) {
		this.typeid = typeid;
	}

	public ProductType(String name, String note) {
		this.name = name;
		this.note = note;
	}
	@ManyToOne(cascade=CascadeType.REFRESH)
	@JoinColumn(name="parentid")
	public ProductType getParent() {
		return parent;
	}

	public void setParent(ProductType parent) {
		this.parent = parent;
	}
	@OneToMany(cascade={CascadeType.REFRESH,CascadeType.REMOVE},mappedBy="parent")
	public Set<ProductType> getChildtypes() {
		return childtypes;
	}

	public void setChildtypes(Set<ProductType> childtypes) {
		this.childtypes = childtypes;
	}

	@Column(length=36,nullable=false)
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}


	@Id @GeneratedValue(strategy=GenerationType.AUTO)
	public Integer getTypeid() {
		return typeid;
	}

	public void setTypeid(Integer typeid) {
		this.typeid = typeid;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((typeid == null) ? 0 : typeid.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		final ProductType other = (ProductType) obj;
		if (typeid == null) {
			if (other.typeid != null)
				return false;
		} else if (!typeid.equals(other.typeid))
			return false;
		return true;
	}
}
 
分享到:
评论

相关推荐

    基于JPA的CRUD例子

    在这个“基于JPA的CRUD例子”中,我们将深入探讨如何使用JPA进行创建(Create)、读取(Read)、更新(Update)和删除(Delete)等基本数据库操作。 首先,我们需要理解JPA的核心概念:实体(Entity)。在JPA中,...

    针对MySQL数据库做的JPA的小例子

    3. **编写Repository**: 创建接口继承自JPA提供的`JpaRepository`或自定义接口,定义需要的操作。 4. **数据操作**: 在业务逻辑中注入Repository,通过其方法执行对数据库的操作。 5. **事务管理**: 使用`@...

    JPA连接MySQL的例子

    这就是一个基本的JPA连接MySQL的例子。通过这个示例,你可以了解到如何配置JPA,创建实体类,定义Repository接口,以及如何在应用程序中使用这些组件来与MySQL数据库进行交互。当然,实际项目中可能还需要考虑事务...

    Spring Data JPA 入门例子极简代码

    **Spring Data JPA 入门详解** Spring Data JPA 是 Spring 框架的一个模块,它简化了数据库访问...以上是 Spring Data JPA 入门的例子,如果你想要深入了解,可以参考给定的博客地址或其他相关教程,持续学习和实践。

    jpa + hibernate 例子

    在**JPA + Hibernate**的例子中,通常会涉及以下几个核心概念: 1. **实体(Entity)**: 在JPA中,实体代表数据库中的表,通过`@Entity`注解标识。实体类通常是Java POJO(Plain Old Java Object),它的属性对应...

    JPA学习小例子

    然后,创建一个继承自`JpaRepository`的接口,如`UserRepository`,它提供了CRUD操作的基本方法: ```java public interface UserRepository extends JpaRepository, Long&gt; { } ``` 现在,我们可以在`TestJPA`测试...

    Open JPA2 employee 简单例子

    在这个“Open JPA2 employee简单例子”中,我们将深入理解如何使用OpenJPA2来处理数据库中的员工数据。这个示例将帮助初学者掌握基本的JPA概念和OpenJPA2的用法。 首先,我们需要了解JPA的核心概念。JPA允许开发者...

    java-jpa 连接mysql新增、修改例子

    在本示例中,我们将探讨如何使用JPA连接MySQL数据库进行新增和修改数据的操作。 首先,我们需要在项目中引入JPA和MySQL的驱动依赖。通常,这可以通过Maven或Gradle的依赖管理来完成。对于Maven,可以在pom.xml文件...

    spring mvc jpa单元测试例子

    总的来说,这个例子展示了如何在Spring MVC和JPA的环境中进行单元测试,特别是涉及事务管理的场景。通过合理运用Spring的测试注解和事务管理机制,我们可以编写出可靠且易于维护的单元测试,提高代码质量。

    jboss、eclipse的jpa连接mysql不成熟的例子

    在本例中,标题提到的"jboss、eclipse的jpa连接mysql不成熟的例子"可能指的是在尝试配置Eclipse开发环境,使用JPA与JBoss应用服务器连接MySQL数据库时遇到了问题。Eclipse是一个强大的Java集成开发环境,提供了对JPA...

    spring3.1 struts2.3 hibernate4.1 jpa集成小例子

    这个"spring3.1 struts2.3 hibernate4.1 jpa集成小例子"是一个典型的Java Web项目,它展示了如何将Spring 3.1、Struts 2.3、Hibernate 4.1和Java Persistence API (JPA) 这四大组件融合到一个应用中。接下来,我们将...

    spring data jpa 入门例子

    本入门例子将帮助你理解并掌握Spring Data JPA的核心概念和常用功能。 1. **什么是Spring Data JPA** Spring Data JPA是Spring框架的一部分,它为JPA提供了一种声明式的方法来处理数据访问层。通过使用Spring Data...

    JPA连接数据库,非常详细

    总的来说,这个例子展示了如何使用JPA通过Apache OpenJPA连接到Oracle数据库,并进行了基本的日志配置以及`EntityManager`的管理,这些都是在Java应用中进行数据库操作的基础。在实际开发中,这些配置和代码可以作为...

    jpa的crud例子。

    2. **配置实体管理工厂**:在Spring Boot中,我们通常使用`@SpringBootApplication`注解来启用JPA,并在`application.properties`文件中配置数据库连接信息。 3. **使用`EntityManager`**:在服务层,我们可以通过`...

    Spring使用JavaConfig集成JPA简单例子

    这个简单的例子有助于理解Spring与JPA的集成机制,便于在实际项目中灵活运用。更多关于Spring JPA的高级特性和最佳实践,可以在指定的博客链接(http://blog.csdn.net/wu_boy/article/details/72353608)中找到详细...

    jbossas7_seamremoting_jpa_小例子

    2. 配置JPA的persistence.xml文件,指定数据库连接信息和使用的持久化单元。 3. 使用Hibernate的Session或EntityManager进行数据的CRUD(创建、读取、更新、删除)操作。 4. 利用Seam Remoting在客户端和服务端之间...

    JPA常用关系实现例子

    在这个“JPA常用关系实现例子”中,我们将探讨四种主要的关系类型:一对一(OneToOne)、一对多(OneToMany)、多对一(ManyToOne)和多对多(ManyToMany)。这些关系定义了实体间的关联,有助于在数据库设计中创建...

    springmvc+jpa 例子

    2. **配置DataSource**:定义数据源,通常使用Spring的`BasicDataSource`或连接池如HikariCP。 3. **配置EntityManagerFactory**:通过`LocalContainerEntityManagerFactoryBean`创建EntityManagerFactory。 4. **...

    Spring集成JPA和MyBatis简单例子-20170622

    在IT行业中,Spring框架...在"Spring集成JPA和MyBatis简单例子-20170622"这个压缩包中,可能包含了示例代码,演示了如何在Spring项目中配置和使用这两种技术,这对于初学者理解和实践Spring的集成能力具有很大的帮助。

    Spring集成JPA和MyBatis简单例子

    例如,创建一个继承自JpaRepository的接口,Spring会自动为这个接口生成实现。 5. 注册实体管理工厂:在Spring配置类中,使用@EnableJpaRepositories注解来启用JPA仓库,并指定实体管理工厂。 接下来,我们将讨论...

Global site tag (gtag.js) - Google Analytics