实现一个简单 JAP 例子
需要学习 JPA,首先需要把环境搭起来,这里选择实现 JPA 规范的持久层框架是 Hibernate,版本为 5.0.7.Final,并且采用 maven 进行依赖包的管理,具体步骤如下:
- 创建 Maven 项目,这一步比较简单,可以直接在 IDE 创建。
- 添加 hibernate-entitymanager 依赖包:使用 Hibernate 来进行实体的管理,实现实体的 CRUD 操作,我们只需要引入这个 hibernate-entitymanager依赖包即可,其它需要依赖的包将由 maven 自动引入,这样我们就不用关系具体需要依赖哪些 jar 包了。当然,junit 和数据库驱动也是必不可少的。
1.创建一个 maven 的 java 工程
2.创建数据库 jpademo,导入数据
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for customer_product
-- ----------------------------
DROP TABLE IF EXISTS `customer_product`;
CREATE TABLE `customer_product` (
`customer_id` int(11) NULL DEFAULT NULL COMMENT '客户编号',
`product_id` int(11) NULL DEFAULT NULL COMMENT '产品编号'
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT
= Dynamic;
-- Records of customer_product
-- ----------------------------
INSERT INTO `customer_product` VALUES (1, 3);
INSERT INTO `customer_product` VALUES (2, 1);
INSERT INTO `customer_product` VALUES (3, 1);
INSERT INTO `customer_product` VALUES (4, 2);
INSERT INTO `customer_product` VALUES (2, 2);
INSERT INTO `customer_product` VALUES (3, 5);
INSERT INTO `customer_product` VALUES (3, 4);
-- ----------------------------
-- Table structure for tb_customer
-- ----------------------------
DROP TABLE IF EXISTS `tb_customer`;
CREATE TABLE `tb_customer` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`remark` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`telephone` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`address` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`typeId` int(11) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING