-
菜鸟写的代码如何优化 性能太慢 。5
public Paginate getBookInfoByPublishDateAndPublisher(Paginate paginate, String unionSiteID,String publisher, Date fromDate, Date toDate, String bookName, Double price1, Double price2, String vendor, String bookCategory) { // TODO Auto-generated method stub StringBuffer whereCause =new StringBuffer( "not exists(select l from UnionSiteProductList l where l.unionSiteID=? and b.bookID =l.productID)"); Vector paras = new Vector(); paras.add(unionSiteID); if (publisher != null && publisher.trim().length() > 0) { whereCause.append( (whereCause.length() > 0 ? " and " : "") + "b.publisherName like ?"); paras.add("%" + publisher + "%"); } if (fromDate != null) { whereCause.append( (whereCause.length() > 0 ? " and " : "") + "b.publishDate >= ?"); paras.add(fromDate); } if (toDate != null) { whereCause.append( (whereCause.length() > 0 ? " and " : "") + "b.publishDate <= ?"); paras.add(toDate); } if (bookName != null && bookName.trim().length() > 0) { whereCause.append((whereCause.length() > 0 ? " and " : "") + "b.bookName like ?"); paras.add("%" + bookName + "%"); } if (price1 != null) { whereCause.append( (whereCause.length() > 0 ? " and " : "") + "pp.productPrice >= ?"); paras.add(price1); } if (price2 != null) { whereCause.append( (whereCause.length() > 0 ? " and " : "") + "pp.productPrice <= ?"); paras.add(price2); } if (vendor != null && vendor.trim().length() > 0) { whereCause.append((whereCause.length() > 0 ? " and " : "") + "v.vendorName like ?"); paras.add("%" + vendor + "%"); } if (bookCategory != null && bookCategory.trim().length() > 0) { whereCause.append( (whereCause.length() > 0 ? " and " : "") + "bcv.bookCategoryName like ?"); paras.add("%" + bookCategory + "%"); } String hql = "select b,pp,v,bcv from Book b,ProductItem i,Product p, " + "ProductPrice pp,Vendor v,BookCategoryView bcv " + " where b.bookID=i.entityID and b.deleteFlag=0 and b.flag=4 " + " and i.entityType=1 and i.deleteFlag=0" + " and i.productID=p.productId and p.productType=1 and p.deleteFlag=0 and p.isValid=1" + " and p.productId=pp.productId and pp.deleteFlag=0" + " and b.vendorID = v.vendorID " + " and b.bookCategoryCode=bcv.bookCategoryCode "; if (whereCause.length() > 0) { hql = hql + " and " + whereCause; } paginate = this.pagedQuery(hql, paginate, paras.toArray()); return paginate; }
半年javaweb开发 ,接受拍砖
性能很慢,请各位帮忙看下如何优化。 小弟在此谢过了2011年5月03日 11:09
6个答案 按时间排序 按投票排序
-
stringbuffer 使用的时候应该先开辟空间 否则直接使用string去累加好了,
我以前总结的一点点代码可读性的东西:
http://evn.iteye.com/blog/866171
这样的代码性能上不会有太大问题的, 性能问题要从大方面开始考虑 然后再考虑这些细节
借助代码性能工作 我也有总结过,可以去看看.
一定是从大的开始解决 然后解决小的代码问题2011年5月07日 01:50
-
whereCase的时候用StringBuffer了,为什么String hql = xxxx的时候不用呢?另外,如果几行字符串的拼装就能让你明显感觉性能下降了,那么这个系统问题真就大了(虽然字符串的操作开销很大,但我不认为楼主这个系统存在这个问题),所以还是从别的地方分析下影响性能的原因,例如sql语句本身。
2011年5月03日 22:05
-
这怎么设计OO的,hibernate给初学者,真是害死人了,配置好映射关系就不需要写关联查询了,会自动生成
# String hql = "select b,pp,v,bcv from Book b,ProductItem i,Product p, "
# + "ProductPrice pp,Vendor v,BookCategoryView bcv "
# + " where b.bookID=i.entityID and b.deleteFlag=0 and b.flag=4 "
# + " and i.entityType=1 and i.deleteFlag=0"
# + " and i.productID=p.productId and p.productType=1 and p.deleteFlag=0 and p.isValid=1"
# + " and p.productId=pp.productId and pp.deleteFlag=0"
# + " and b.vendorID = v.vendorID "
# + " and b.bookCategoryCode=bcv.bookCategoryCode ";
这个hql改成sql吧2011年5月03日 16:58
相关推荐
c语言菜鸟必看代码c语言菜鸟必看c语言菜鸟必看代码代码
【标题】与【描述】提及的是关于农村菜鸟驿站的运营现状及优化分析,具体以安徽省利辛县为研究对象。这个话题涉及到我国农村地区物流服务的发展、电子商务在农村的普及以及农村经济与现代服务业的融合。 一、农村...
4. **安全性与性能优化**: - **HTTPS安全通信**:保护用户数据传输过程中的安全性。 - **API限流与权限控制**:防止恶意攻击,保护系统稳定。 - **数据库索引优化**:提高查询速度,减少数据库性能瓶颈。 - **...
ubuntu常用命令集合(菜鸟写给很菜很菜的鸟)_cg516_新浪博客.mhtubuntu常用命令集合(菜鸟写给很菜很菜的鸟)_cg516_新浪博客.mhtubuntu常用命令集合(菜鸟写给很菜很菜的鸟)_cg516_新浪博客.mhtubuntu常用命令...
在这个"菜鸟教程设计模式之工厂模式代码整理"中,我们将深入探讨工厂模式的基本概念、结构以及如何在实际编程中应用。 工厂模式的核心思想是通过一个专门的工厂类来创建对象,而不是让客户端代码直接实例化具体的...
菜鸟自写打包,多文件打包zip(main)测试程序只限于菜鸟阅读,大牛飘过即可
编程代码优化纠错器是一款强大的工具,它旨在帮助程序员在编写代码时发现并纠正错误,同时还能将不规范的代码自动转化为符合标准的格式,提升代码的可读性和维护性。这款工具支持JAVA、PYTHON和C++这三种主流的编程...
"菜鸟斯诺克代码"是一个面向初学者的项目,它包含了一个斯诺克游戏的完整源代码,旨在帮助学习者理解和掌握编程技能,特别是与游戏开发相关的技术。在这个项目中,开发者使用了WPF(Windows Presentation Foundation...
《JQuery菜鸟到忍者》是一本专门为有一定英语基础并希望深入学习网页开发,特别是jQuery技术的读者准备的书籍。这本书由Sitepoint出版,旨在帮助初学者从零基础快速成长为熟练掌握jQuery的开发者,实现从“菜鸟”到...
这是本人刚入职作的作业,因为刚毕业,所以写的代码基本不能看,也希望各位能点评一下,自己刚学习,哎,还有好多考虑到,希望大家可以帮我找下bug和优化下代码,谢谢了! 自己是刚毕业工作的学生,所以写得很laji...
【电脑优化技巧】对于电脑新手来说,掌握一些基础的电脑优化技巧是十分必要的,这不仅可以提升电脑的运行效率,还能有效防止潜在的安全风险。本文主要讲述了两种针对木马的防范措施以及Windows XP系统的优化设置。 ...
高性能计算(HPC)是一项集合了众多处理器单元,或者通过集群系统中的多台...随着技术的发展,HPC系统正变得越来越复杂,对于系统工程师和计算科学家来说,掌握这些知识点对于设计、部署和优化高性能计算系统至关重要。
菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作WINDOWS大全菜鸟操作...
ASP.NET是微软公司开发的..."菜鸟的最爱aspnet代码.doc"可能包含了适合初学者的ASP.NET代码示例,涵盖了上述一些基础概念和实践操作。通过学习这些代码,新手可以更好地理解和运用ASP.NET,逐步成长为熟练的Web开发者。
"Python菜鸟教程学习相关代码"这一标题表明,这个压缩包包含了一些针对初学者的Python学习资料,可能包括基础语法、数据结构、函数、模块等内容的代码示例。下面将详细阐述Python的基础知识,以及如何通过这些教程...
"111.zipC语言菜鸟保姆级代码"这个压缩包文件显然是为那些正在踏入C语言大门的新手们准备的,旨在帮助他们逐步理解并掌握这门强大的编程语言。 首先,让我们来探讨C语言的基础知识。C语言是由Dennis Ritchie在20...
本文将介绍四款针对菜鸟级别的系统优化工具:深度系统优化工具、雨林木风优化工具、无忧系统优化工具以及注册表修改工具电脑报专用版。 1. 深度系统优化工具: 深度技术是一家知名的系统维护软件开发商,其推出的...
本文将详细介绍四个被广泛推荐的菜鸟级系统优化工具:深度系统优化工具、雨林木风优化工具、无忧系统优化工具以及电脑报专用的注册表修改工具。这些工具的特点是操作简便,无需深入了解计算机系统知识就能轻松使用。...
10. **性能优化**:为了提升用户体验,开发者还需要关注小程序的加载速度和运行效率,例如减少网络请求、优化图片资源、合理使用缓存、避免内存泄漏等。 总之,这个源码的学习可以帮助你深入理解小程序开发的各个...
在“小菜鸟系列-Oracle的优化器与hint”这个主题中,我们将深入探讨Oracle数据库的查询优化器以及如何通过使用hint来引导优化器进行更高效的执行计划选择。 Oracle的优化器是数据库引擎的核心组件,它负责分析SQL...