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进行创建(Create)、读取(Read)、更新(Update)和删除(Delete)等基本数据库操作。 首先,我们需要理解JPA的核心概念:实体(Entity)。在JPA中,...
3. **编写Repository**: 创建接口继承自JPA提供的`JpaRepository`或自定义接口,定义需要的操作。 4. **数据操作**: 在业务逻辑中注入Repository,通过其方法执行对数据库的操作。 5. **事务管理**: 使用`@...
这就是一个基本的JPA连接MySQL的例子。通过这个示例,你可以了解到如何配置JPA,创建实体类,定义Repository接口,以及如何在应用程序中使用这些组件来与MySQL数据库进行交互。当然,实际项目中可能还需要考虑事务...
**Spring Data JPA 入门详解** Spring Data JPA 是 Spring 框架的一个模块,它简化了数据库访问...以上是 Spring Data JPA 入门的例子,如果你想要深入了解,可以参考给定的博客地址或其他相关教程,持续学习和实践。
在**JPA + Hibernate**的例子中,通常会涉及以下几个核心概念: 1. **实体(Entity)**: 在JPA中,实体代表数据库中的表,通过`@Entity`注解标识。实体类通常是Java POJO(Plain Old Java Object),它的属性对应...
然后,创建一个继承自`JpaRepository`的接口,如`UserRepository`,它提供了CRUD操作的基本方法: ```java public interface UserRepository extends JpaRepository, Long> { } ``` 现在,我们可以在`TestJPA`测试...
在这个“Open JPA2 employee简单例子”中,我们将深入理解如何使用OpenJPA2来处理数据库中的员工数据。这个示例将帮助初学者掌握基本的JPA概念和OpenJPA2的用法。 首先,我们需要了解JPA的核心概念。JPA允许开发者...
在本示例中,我们将探讨如何使用JPA连接MySQL数据库进行新增和修改数据的操作。 首先,我们需要在项目中引入JPA和MySQL的驱动依赖。通常,这可以通过Maven或Gradle的依赖管理来完成。对于Maven,可以在pom.xml文件...
总的来说,这个例子展示了如何在Spring MVC和JPA的环境中进行单元测试,特别是涉及事务管理的场景。通过合理运用Spring的测试注解和事务管理机制,我们可以编写出可靠且易于维护的单元测试,提高代码质量。
在本例中,标题提到的"jboss、eclipse的jpa连接mysql不成熟的例子"可能指的是在尝试配置Eclipse开发环境,使用JPA与JBoss应用服务器连接MySQL数据库时遇到了问题。Eclipse是一个强大的Java集成开发环境,提供了对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的核心概念和常用功能。 1. **什么是Spring Data JPA** Spring Data JPA是Spring框架的一部分,它为JPA提供了一种声明式的方法来处理数据访问层。通过使用Spring Data...
总的来说,这个例子展示了如何使用JPA通过Apache OpenJPA连接到Oracle数据库,并进行了基本的日志配置以及`EntityManager`的管理,这些都是在Java应用中进行数据库操作的基础。在实际开发中,这些配置和代码可以作为...
2. **配置实体管理工厂**:在Spring Boot中,我们通常使用`@SpringBootApplication`注解来启用JPA,并在`application.properties`文件中配置数据库连接信息。 3. **使用`EntityManager`**:在服务层,我们可以通过`...
这个简单的例子有助于理解Spring与JPA的集成机制,便于在实际项目中灵活运用。更多关于Spring JPA的高级特性和最佳实践,可以在指定的博客链接(http://blog.csdn.net/wu_boy/article/details/72353608)中找到详细...
2. 配置JPA的persistence.xml文件,指定数据库连接信息和使用的持久化单元。 3. 使用Hibernate的Session或EntityManager进行数据的CRUD(创建、读取、更新、删除)操作。 4. 利用Seam Remoting在客户端和服务端之间...
在这个“JPA常用关系实现例子”中,我们将探讨四种主要的关系类型:一对一(OneToOne)、一对多(OneToMany)、多对一(ManyToOne)和多对多(ManyToMany)。这些关系定义了实体间的关联,有助于在数据库设计中创建...
2. **配置DataSource**:定义数据源,通常使用Spring的`BasicDataSource`或连接池如HikariCP。 3. **配置EntityManagerFactory**:通过`LocalContainerEntityManagerFactoryBean`创建EntityManagerFactory。 4. **...
在IT行业中,Spring框架...在"Spring集成JPA和MyBatis简单例子-20170622"这个压缩包中,可能包含了示例代码,演示了如何在Spring项目中配置和使用这两种技术,这对于初学者理解和实践Spring的集成能力具有很大的帮助。
例如,创建一个继承自JpaRepository的接口,Spring会自动为这个接口生成实现。 5. 注册实体管理工厂:在Spring配置类中,使用@EnableJpaRepositories注解来启用JPA仓库,并指定实体管理工厂。 接下来,我们将讨论...