package com.lideedu.yame.test;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import junit.framework.TestCase;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.lideedu.yame.tree.dao.ProductCategoryDAO;
import com.lideedu.yame.tree.dao.ProductDAO;
import com.lideedu.yame.tree.db.HibernateSessionFactory;
import com.lideedu.yame.tree.pojos.Product;
import com.lideedu.yame.tree.pojos.ProductCategory;
public class TestMain extends TestCase {
private Session session = null;
private Transaction tx = null;
@Override
protected void setUp() throws Exception {
super.setUp();
session = HibernateSessionFactory.getSession();
tx = session.beginTransaction();
}
@SuppressWarnings("unchecked")
public void testInsert1(){
try {
/**
* 具体商品
*/
// 居家床品套件类具体商品
Product p1 = new Product();
p1.setProductName("摩登女孩-单人三件套");
p1.setProductPrice(103.5);
Product p2 = new Product();
p2.setProductName("床品斜纹四件套--香水百合");
p2.setProductPrice(200.6);
Product p3 = new Product();
p3.setProductName("出口丹麦超柔软纯棉高密斜纹2件套");
p3.setProductPrice(333.3);
// 儿童床品类具体商品
Product p4 = new Product();
p4.setProductName("迪斯尼顶级豪华公主床品四件套");
p4.setProductPrice(188.0);
// 烹饪锅具类具体商品
Product p5 = new Product();
p5.setProductName("心型煎蛋盘");
p5.setProductPrice(103.5);
Product p6 = new Product();
p6.setProductName("振能20CM奥尼复底汤锅");
p6.setProductPrice(80.5);
// 厨房刀具类具体商品
Product p7 = new Product();
p7.setProductName("砧板菜刀组合7件套");
p7.setProductPrice(46.8);
/**
* 商品类别
*/
// parent1_家居类
ProductCategory parent1 = new ProductCategory();
parent1.setCategoryName("家居");
// 家居类的子类-床上用品类
ProductCategory son1 = new ProductCategory();
son1.setCategoryName("床上用品");
// 床上用品类的子类-居家床品套件类
ProductCategory grandson1 = new ProductCategory();
grandson1.setCategoryName("居家床品套件");
// 床上用品类的子类-儿童床品类
ProductCategory grandson2 = new ProductCategory();
grandson2.setCategoryName("儿童床品");
// 家居类的子类-厨房及餐饮用品类
ProductCategory son2 = new ProductCategory();
son2.setCategoryName("厨房及餐饮用品");
// 厨房及餐饮用品类的子类-烹饪锅具类
ProductCategory grandson3 = new ProductCategory();
grandson3.setCategoryName("烹饪锅具");
// 厨房及餐饮用品类的子类-厨房刀具类
ProductCategory grandson4 = new ProductCategory();
grandson4.setCategoryName("厨房刀具");
/**
* 建立类别之间关系
*/
son1.setParentCategory(parent1);
son2.setParentCategory(parent1);
grandson1.setParentCategory(son1);
grandson2.setParentCategory(son1);
grandson3.setParentCategory(son2);
grandson4.setParentCategory(son2);
/**
* 商品归类
*/
grandson1.getProducts().add(p1);
p1.setProductCategory(grandson1);
grandson1.getProducts().add(p2);
p2.setProductCategory(grandson1);
grandson1.getProducts().add(p3);
p3.setProductCategory(grandson1);
grandson2.getProducts().add(p4);
p4.setProductCategory(grandson2);
grandson3.getProducts().add(p5);
p5.setProductCategory(grandson3);
grandson3.getProducts().add(p6);
p6.setProductCategory(grandson3);
grandson4.getProducts().add(p7);
p7.setProductCategory(grandson4);
// 持久化
session.save(grandson1);
session.save(grandson2);
session.save(grandson3);
session.save(grandson4);
tx.commit();
} catch (Exception e) {
e.printStackTrace();
if(tx != null)
tx.rollback();
}
}
@SuppressWarnings("unchecked")
public void testInsert2(){
try {
/**
* 具体商品
*/
// 武侠类具体商品
Product p1 = new Product();
p1.setProductName("诛仙6");
p1.setProductPrice(28.6);
Product p2 = new Product();
p2.setProductName("射雕英雄传(全四册)");
p2.setProductPrice(20.5);
Product p3 = new Product();
p3.setProductName("昆仑·天机卷");
p3.setProductPrice(30.8);
// 世界名著类具体商品
Product p4 = new Product();
p4.setProductName("麦田里的守望者");
p4.setProductPrice(10.0);
Product p5 = new Product();
p5.setProductName("少年维特之烦恼");
p5.setProductPrice(12.0);
// Java/J2EE类具体商品
Product p6 = new Product();
p6.setProductName("Java编程思想.第3版");
p6.setProductPrice(75.5);
Product p7 = new Product();
p7.setProductName("精通Struts:基于MVC的Java Web设计与开发");
p7.setProductPrice(39.5);
// ASP/ASP.NET类具体商品
Product p8 = new Product();
p8.setProductName("ASP.NET 2.0开发指南");
p8.setProductPrice(46.8);
Product p9 = new Product();
p9.setProductName("精通ASP.NET2.0企业级项目开发");
p9.setProductPrice(44.4);
/**
* 商品类别
*/
// parent1_图书类
ProductCategory parent1 = new ProductCategory();
parent1.setCategoryName("图书");
// 图书类的子类-小说类
ProductCategory son1 = new ProductCategory();
son1.setCategoryName("小说");
// 小说类的子类-武侠类
ProductCategory grandson1 = new ProductCategory();
grandson1.setCategoryName("武侠");
// 小说类的子类-世界名著类
ProductCategory grandson2 = new ProductCategory();
grandson2.setCategoryName("世界名著");
// 图书类的子类-计算机类
ProductCategory son2 = new ProductCategory();
son2.setCategoryName("计算机");
// 计算机类的子类-Java/J2EE类
ProductCategory grandson3 = new ProductCategory();
grandson3.setCategoryName("Java/J2EE");
// 计算机类的子类-ASP/ASP.NET类
ProductCategory grandson4 = new ProductCategory();
grandson4.setCategoryName("ASP/ASP.NET");
/**
* 建立类别之间关系
*/
son1.setParentCategory(parent1);
son2.setParentCategory(parent1);
grandson1.setParentCategory(son1);
grandson2.setParentCategory(son1);
grandson3.setParentCategory(son2);
grandson4.setParentCategory(son2);
/**
* 商品归类
*/
grandson1.getProducts().add(p1);
p1.setProductCategory(grandson1);
grandson1.getProducts().add(p2);
p2.setProductCategory(grandson1);
grandson1.getProducts().add(p3);
p3.setProductCategory(grandson1);
grandson2.getProducts().add(p4);
p4.setProductCategory(grandson2);
grandson2.getProducts().add(p5);
p5.setProductCategory(grandson2);
grandson3.getProducts().add(p6);
p6.setProductCategory(grandson3);
grandson3.getProducts().add(p7);
p7.setProductCategory(grandson3);
grandson4.getProducts().add(p8);
p8.setProductCategory(grandson4);
grandson4.getProducts().add(p9);
p9.setProductCategory(grandson4);
// 持久化
session.save(grandson1);
session.save(grandson2);
session.save(grandson3);
session.save(grandson4);
tx.commit();
} catch (Exception e) {
e.printStackTrace();
if(tx != null)
tx.rollback();
}
}
// 递归
private void printAllCategory(ProductCategory pc){
ProductDAO productDAO = new ProductDAO();
if(pc.getSubCategories().size()>0){
System.out.println(pc.getCategoryName()+":");
Set set = pc.getSubCategories();
for (Iterator iter = set.iterator(); iter.hasNext();) {
ProductCategory element = (ProductCategory) iter.next();
printAllCategory(element);
}
}else if(productDAO.queryByCategoryId(pc.getCategoryId()) != null){
List list = productDAO.queryByCategoryId(pc.getCategoryId());
System.out.println("\t"+pc.getCategoryName()+":");
for (Iterator iter = list.iterator(); iter.hasNext();) {
Product element = (Product) iter.next();
System.out.println("\t\t"+element.getProductName());
}
}else
System.ou
没有合适的资源?快使用搜索试试~ 我知道了~
Hibernate+Struts 无限级树形菜单(MSSQL).rar

共70个文件
tld:22个
xml:9个
java:9个


温馨提示
Struts+Hibernate+Javascript 实现无限级树形菜单 内含step by step 开发文档 一、说明: 1、开发环境: Eclipse3.2.1+MyEclipse5.1+Tomcat5.5+Microsoft SQL Server 2000 2、主要实现技术:Struts1.2+Hibernate3.0+JavaScript+JSTL1.1+自定义标签 3、页面的树形菜单的节点用 JavaScript进行控制 4、数据库中的商品类别表productCategory包含一个引用自身主键的外键,从而形成自身一对多关系 5、自定义标签实现类Recursion中主要用了递归实现节点的展开
资源推荐
资源详情
资源评论

格式:pdf 资源大小:51.6KB 页数:2






























收起资源包目录











































































































共 70 条
- 1
资源评论

- hou9zi2014-07-09试了一下,可以作为参照

pzpyp
- 粉丝: 1
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- Protobuf RPC是一种基于TCP协议的二进制RPC通信协议的GO实现. JAVA实现:https___github.com_baidu_Jprotobuf-rpc-socket.zip
- 基于Java的商城项目,包括前台商城(),后台管理系统
- PerfreeBlog是一款基于java开发的博客_CMS建站平台,丰富的主题支持及扩展插件功能,给您带来全新的创作体验~.zip
- 《RabbitMQ深度剖析:从基础到高级进阶实战》
- SQL语言到自然语言自动翻译的研究.caj
- 基于大语言模型的专属知识库
- 使用 Deno 代理大模型 API 至国内以突破地域限制
- 复杂数据仓库与知识发现的创新方法
- Python内存泄漏缺陷静态检测方法研究与实现.caj
- 基于ARM的Linux嵌入式视觉系统研究.pdf
- WebStorm中Vue3+TypeScript开发环境配置
- Apache IoTDB:大数据时代时序数据库选型的技术突围与实践指南
- 基于Matlab-OpenSim的上肢个体差异建模及肌肉力预测分析.caj
- 计算智能与特征选择:粗集与模糊方法
- 大模型模拟面试&面试提词器
- 讯飞星火认知大模型 API 的 Python 软件开发工具包
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
