1.

 <?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<!-- 配置哪些包下的类需要自动扫描 -->
<context:component-scan base-package="com.sanqing"/> <!-- 这里的jun要与persistence.xml中的 <persistence-unit name="jun" transaction-type="RESOURCE_LOCAL">
中的name值要一致,这样才能找到相关的数据库连接
-->
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">
<property name="persistenceUnitName" value="jun"/>
</bean>
<!-- 配置事物管理器 -->
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>
<!-- 配置使用注解来管理事物 -->
<tx:annotation-driven transaction-manager="transactionManager"/> </beans>

2.

 package com.sanqing.po;

 import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity @Table(name="tb_customer")
public class Customer { //客户信息类
@Id @Column(length=20)
private String customerNO; //客户编号
@Column(length=15)
private String customerName;//客户名称
@Column(length=15)
private String phone; //客户电话
@Column(length=30)
private String address; //客户地址
@Column(length=15)
private String relationman; //客户联系人
@Column(length=30)
private String otherInfo; //其他信息
public Customer(){}
public Customer(String customerNO) {
this.customerNO = customerNO;
}
public String getCustomerNO() {
return customerNO;
}
public void setCustomerNO(String customerNO) {
this.customerNO = customerNO;
} public String getCustomerName() {
return customerName;
}
public void setCustomerName(String customerName) {
this.customerName = customerName;
} public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
} public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
} public String getRelationman() {
return relationman;
}
public void setRelationman(String relationman) {
this.relationman = relationman;
} public String getOtherInfo() {
return otherInfo;
}
public void setOtherInfo(String otherInfo) {
this.otherInfo = otherInfo;
}
}

3.

 package com.sanqing.po;

 import java.util.Date;

 import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType; @Entity @Table(name="tb_order")
public class Order { //订单信息类
@Id @Column(length=10)
private String orderNO; //订单编码
@ManyToOne(cascade=CascadeType.REFRESH)
@JoinColumn(name="customerNO")
private Customer customer; //客户
@ManyToOne(cascade=CascadeType.REFRESH)
@JoinColumn(name="productNO")
private Product product; //产品
@Column(length=10)
private int quantity; //产品数量
@Temporal(TemporalType.DATE)
private Date orderTime; //订单的时间
@Column(length=50)
private String otherInfo; //其他信息
public String getOrderNO() {
return orderNO;
}
public void setOrderNO(String orderNO) {
this.orderNO = orderNO;
} public Customer getCustomer() {
return customer;
}
public void setCustomer(Customer customer) {
this.customer = customer;
} public Product getProduct() {
return product;
}
public void setProduct(Product product) {
this.product = product;
} public int getQuantity() {
return quantity;
}
public void setQuantity(int quantity) {
this.quantity = quantity;
} public Date getOrderTime() {
return orderTime;
}
public void setOrderTime(Date orderTime) {
this.orderTime = orderTime;
} public String getOtherInfo() {
return otherInfo;
}
public void setOtherInfo(String otherInfo) {
this.otherInfo = otherInfo;
}
}

4.

 package com.sanqing.po;

 import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table; @Entity @Table(name="tb_product")
public class Product { //产品信息类
@Id @Column(length=15)
private String productNO; //产品编号
@ManyToOne(cascade=CascadeType.REFRESH)
@JoinColumn(name="producttypeNO")
private ProductType productType;//产品类型
@Column(length=20)
private String productName; //产品名称
@Column(length=20)
private String producingArea; //产品所在区域
@Column(length=20)
private String productOwner; //产品所有者
@Column(length=20)
private String unit; //产品单位
@Column
private double price; //产品价格
@Column
private int quantity; //产品数量
@Column(length=50)
private String otherInfo; //其他信息 public String getProductNO() {
return productNO;
}
public void setProductNO(String productNO) {
this.productNO = productNO;
} public String getProductName() {
return productName;
}
public void setProductName(String productName) {
this.productName = productName;
} public String getProducingArea() {
return producingArea;
}
public void setProducingArea(String producingArea) {
this.producingArea = producingArea;
} public String getProductOwner() {
return productOwner;
}
public void setProductOwner(String productOwner) {
this.productOwner = productOwner;
} public String getUnit() {
return unit;
}
public void setUnit(String unit) {
this.unit = unit;
} public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
} public int getQuantity() {
return quantity;
}
public void setQuantity(int quantity) {
this.quantity = quantity;
} public String getOtherInfo() {
return otherInfo;
}
public void setOtherInfo(String otherInfo) {
this.otherInfo = otherInfo;
} public ProductType getProductType() {
return productType;
}
public void setProductType(ProductType productType) {
this.productType = productType;
}
}

5.

 package com.sanqing.po;

 import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table; @Entity @Table(name="tb_producttype")
public class ProductType { //产品类别信息
private String producttypeNO; //产品类别编号
private String producttypeName; //产品类别名称
public ProductType(){} //默认构造方法
public ProductType(String producttypeNO) {//自定义构造方法
this.producttypeNO = producttypeNO;
}
@Id @Column(length=15)
public String getProducttypeNO() {//获得产品类别编号
return producttypeNO;
}
public void setProducttypeNO(String producttypeNO) {//设置产品类别编号
this.producttypeNO = producttypeNO;
}
@Column(length=20)
public String getProducttypeName() {//获得产品类别名称
return producttypeName;
}
public void setProducttypeName(String producttypeName) {//设置产品类别名称
this.producttypeName = producttypeName;
}
}

6.

 package com.sanqing.po;

 import java.util.Date;

 import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType; @Entity @Table(name="tb_quotation")
public class Quotation { //报价信息类
@Id @Column(length=15)
private String quotationNO; //报价编号
@Column(length=15)
private String quotationMan; //报价人
@Temporal(TemporalType.DATE)
private Date quotationTime; //报价时间
@Column(length=50)
private String otherInfo; //其他信息
@ManyToOne(cascade=CascadeType.REFRESH)
@JoinColumn(name="productNO")
private Product product ; //产品
@ManyToOne(cascade=CascadeType.REFRESH)
@JoinColumn(name="customerNO")
private Customer customer; //客户 public String getQuotationNO() {
return quotationNO;
}
public void setQuotationNO(String quotationNO) {
this.quotationNO = quotationNO;
} public String getQuotationMan() {
return quotationMan;
}
public void setQuotationMan(String quotationMan) {
this.quotationMan = quotationMan;
} public Date getQuotationTime() {
return quotationTime;
}
public void setQuotationTime(Date quotationTime) {
this.quotationTime = quotationTime;
} public String getOtherInfo() {
return otherInfo;
}
public void setOtherInfo(String otherInfo) {
this.otherInfo = otherInfo;
} public Product getProduct() {
return product;
}
public void setProduct(Product product) {
this.product = product;
} public Customer getCustomer() {
return customer;
}
public void setCustomer(Customer customer) {
this.customer = customer;
}
}

7.

 package com.sanqing.po;

 import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.Id;
import javax.persistence.Table; @Entity @Table(name="tb_user")
public class User { //用户信息类
@Id @Column(length=18)
private String username; //用户名
@Column(length=18)
private String password; //用户密码
@Column
private int grade; //用户级别 public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} public int getGrade() {
return grade;
} public void setGrade(int grade) {
this.grade = grade;
}
}