`
fengfeng925
  • 浏览: 105213 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

内容失效

 
阅读更多
-----------内容被管理员屏蔽---------------------



分享到:
评论
44 楼 fengfeng925 2009-10-30  
tsyjswpu 写道
黑暗浪子 写道
tsyjswpu 写道
	@SuppressWarnings("unchecked")
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> QueryResult<T> getScrollData(Class<T> entityClass, int firstindex, int maxresult
			, String wherejpql, Object[] queryParams,LinkedHashMap<String, String> orderby) {
		QueryResult qr = new QueryResult<T>();
		String entityname = getEntityName(entityClass);
		Query query = em.createQuery("select o from "+ entityname+ " o "+(wherejpql==null? "": "where "+ wherejpql)+ buildOrderby(orderby));
		setQueryParams(query, queryParams);
		if(firstindex!=-1 && maxresult!=-1) query.setFirstResult(firstindex).setMaxResults(maxresult);
		qr.setResultlist(query.getResultList());
		query = em.createQuery("select count("+ getCountField(entityClass)+ ") from "+ entityname+ " o "+(wherejpql==null? "": "where "+ wherejpql));
		setQueryParams(query, queryParams);
		qr.setTotalrecord((Long)query.getSingleResult());
		return qr;
	}
	

	/**
	 * 组装order by语句
	 * @param orderby
	 * @return
	 */
	protected String buildOrderby(LinkedHashMap<String, String> orderby){
		StringBuffer orderbyql = new StringBuffer("");
		if(orderby!=null && orderby.size()>0){
			orderbyql.append(" order by ");
			for(String key : orderby.keySet()){
				orderbyql.append("o.").append(key).append(" ").append(orderby.get(key)).append(",");
			}
			orderbyql.deleteCharAt(orderbyql.length()-1);
		}
		return orderbyql.toString();
	}
	/**
	 * 获取实体的名称
	 * @param <T>
	 * @param entityClass 实体类
	 * @return
	 */
	protected <T> String getEntityName(Class<T> entityClass){
		String entityname = entityClass.getSimpleName();
		Entity entity = entityClass.getAnnotation(Entity.class);
		if(entity.name()!=null && !"".equals(entity.name())){
			entityname = entity.name();
		}
		return entityname;
	}
	
	protected <T> String getCountField(Class<T> clazz){
		String out = "o";
		try {
			PropertyDescriptor[] propertyDescriptors = Introspector.getBeanInfo(clazz).getPropertyDescriptors();
			for(PropertyDescriptor propertydesc : propertyDescriptors){
				Method method = propertydesc.getReadMethod();
				if(method!=null && method.isAnnotationPresent(EmbeddedId.class)){					
					PropertyDescriptor[] ps = Introspector.getBeanInfo(propertydesc.getPropertyType()).getPropertyDescriptors();
					out = "o."+ propertydesc.getName()+ "." + (!ps[1].getName().equals("class")? ps[1].getName(): ps[0].getName());
					break;
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
        return out;
	}
}


这就是黎活明老师的,怎么样很像吧,自尊受打击了吧。

你个人觉得这些代码写的很好吗?呵呵,建议用findbugs查查。

崩在那里装牛逼.

又开始骂人了,你这人太牛逼了。不知道是不是培训过如此能装。代码我已经传了替你。大家自己下下来比对吧。
43 楼 tsyjswpu 2009-10-30  
黑暗浪子 写道
tsyjswpu 写道
	@SuppressWarnings("unchecked")
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> QueryResult<T> getScrollData(Class<T> entityClass, int firstindex, int maxresult
			, String wherejpql, Object[] queryParams,LinkedHashMap<String, String> orderby) {
		QueryResult qr = new QueryResult<T>();
		String entityname = getEntityName(entityClass);
		Query query = em.createQuery("select o from "+ entityname+ " o "+(wherejpql==null? "": "where "+ wherejpql)+ buildOrderby(orderby));
		setQueryParams(query, queryParams);
		if(firstindex!=-1 && maxresult!=-1) query.setFirstResult(firstindex).setMaxResults(maxresult);
		qr.setResultlist(query.getResultList());
		query = em.createQuery("select count("+ getCountField(entityClass)+ ") from "+ entityname+ " o "+(wherejpql==null? "": "where "+ wherejpql));
		setQueryParams(query, queryParams);
		qr.setTotalrecord((Long)query.getSingleResult());
		return qr;
	}
	

	/**
	 * 组装order by语句
	 * @param orderby
	 * @return
	 */
	protected String buildOrderby(LinkedHashMap<String, String> orderby){
		StringBuffer orderbyql = new StringBuffer("");
		if(orderby!=null && orderby.size()>0){
			orderbyql.append(" order by ");
			for(String key : orderby.keySet()){
				orderbyql.append("o.").append(key).append(" ").append(orderby.get(key)).append(",");
			}
			orderbyql.deleteCharAt(orderbyql.length()-1);
		}
		return orderbyql.toString();
	}
	/**
	 * 获取实体的名称
	 * @param <T>
	 * @param entityClass 实体类
	 * @return
	 */
	protected <T> String getEntityName(Class<T> entityClass){
		String entityname = entityClass.getSimpleName();
		Entity entity = entityClass.getAnnotation(Entity.class);
		if(entity.name()!=null && !"".equals(entity.name())){
			entityname = entity.name();
		}
		return entityname;
	}
	
	protected <T> String getCountField(Class<T> clazz){
		String out = "o";
		try {
			PropertyDescriptor[] propertyDescriptors = Introspector.getBeanInfo(clazz).getPropertyDescriptors();
			for(PropertyDescriptor propertydesc : propertyDescriptors){
				Method method = propertydesc.getReadMethod();
				if(method!=null && method.isAnnotationPresent(EmbeddedId.class)){					
					PropertyDescriptor[] ps = Introspector.getBeanInfo(propertydesc.getPropertyType()).getPropertyDescriptors();
					out = "o."+ propertydesc.getName()+ "." + (!ps[1].getName().equals("class")? ps[1].getName(): ps[0].getName());
					break;
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
        return out;
	}
}


这就是黎活明老师的,怎么样很像吧,自尊受打击了吧。

你个人觉得这些代码写的很好吗?呵呵,建议用findbugs查查。

崩在那里装牛逼.
42 楼 fengfeng925 2009-10-30  
fengfeng925 写道
黑暗浪子 写道
slaser 写道
xqh1022 写道
个人感觉,这个东西也就是一般人的想法,大家都这么做的,理所当然,你可不可以脱离hibernate,hibernate没多少人用的,用它还不如自己封装jdbc照样能达到相同的效果

你封装得比hibernate好么?

看来你不清楚hibernate的“原罪”啊`

我的代码里有这些东西吗?好像没吧。不想和你争这些问题了。我帮你把黎活民的代码发上来。大家下下来自己比对吧。是不是一点都没有变呢。如果说他dao层里的一些代码不错,我拿来用就是完全copy那随便你把。


引用错了。
41 楼 fengfeng925 2009-10-30  
黑暗浪子 写道
slaser 写道
xqh1022 写道
个人感觉,这个东西也就是一般人的想法,大家都这么做的,理所当然,你可不可以脱离hibernate,hibernate没多少人用的,用它还不如自己封装jdbc照样能达到相同的效果

你封装得比hibernate好么?

看来你不清楚hibernate的“原罪”啊`

我的代码里有这些东西吗?好像没吧。不想和你争这些问题了。我帮你把黎活民的代码发上来。大家下下来自己比对吧。是不是一点都没有变呢。如果说他dao层里的一些代码不错,我拿来用就是完全copy那随便你把。
40 楼 黑暗浪子 2009-10-30  
tsyjswpu 写道
	@SuppressWarnings("unchecked")
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> QueryResult<T> getScrollData(Class<T> entityClass, int firstindex, int maxresult
			, String wherejpql, Object[] queryParams,LinkedHashMap<String, String> orderby) {
		QueryResult qr = new QueryResult<T>();
		String entityname = getEntityName(entityClass);
		Query query = em.createQuery("select o from "+ entityname+ " o "+(wherejpql==null? "": "where "+ wherejpql)+ buildOrderby(orderby));
		setQueryParams(query, queryParams);
		if(firstindex!=-1 && maxresult!=-1) query.setFirstResult(firstindex).setMaxResults(maxresult);
		qr.setResultlist(query.getResultList());
		query = em.createQuery("select count("+ getCountField(entityClass)+ ") from "+ entityname+ " o "+(wherejpql==null? "": "where "+ wherejpql));
		setQueryParams(query, queryParams);
		qr.setTotalrecord((Long)query.getSingleResult());
		return qr;
	}
	

	/**
	 * 组装order by语句
	 * @param orderby
	 * @return
	 */
	protected String buildOrderby(LinkedHashMap<String, String> orderby){
		StringBuffer orderbyql = new StringBuffer("");
		if(orderby!=null && orderby.size()>0){
			orderbyql.append(" order by ");
			for(String key : orderby.keySet()){
				orderbyql.append("o.").append(key).append(" ").append(orderby.get(key)).append(",");
			}
			orderbyql.deleteCharAt(orderbyql.length()-1);
		}
		return orderbyql.toString();
	}
	/**
	 * 获取实体的名称
	 * @param <T>
	 * @param entityClass 实体类
	 * @return
	 */
	protected <T> String getEntityName(Class<T> entityClass){
		String entityname = entityClass.getSimpleName();
		Entity entity = entityClass.getAnnotation(Entity.class);
		if(entity.name()!=null && !"".equals(entity.name())){
			entityname = entity.name();
		}
		return entityname;
	}
	
	protected <T> String getCountField(Class<T> clazz){
		String out = "o";
		try {
			PropertyDescriptor[] propertyDescriptors = Introspector.getBeanInfo(clazz).getPropertyDescriptors();
			for(PropertyDescriptor propertydesc : propertyDescriptors){
				Method method = propertydesc.getReadMethod();
				if(method!=null && method.isAnnotationPresent(EmbeddedId.class)){					
					PropertyDescriptor[] ps = Introspector.getBeanInfo(propertydesc.getPropertyType()).getPropertyDescriptors();
					out = "o."+ propertydesc.getName()+ "." + (!ps[1].getName().equals("class")? ps[1].getName(): ps[0].getName());
					break;
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
        return out;
	}
}


这就是黎活明老师的,怎么样很像吧,自尊受打击了吧。

你个人觉得这些代码写的很好吗?呵呵,建议用findbugs查查。
39 楼 黑暗浪子 2009-10-30  
slaser 写道
xqh1022 写道
个人感觉,这个东西也就是一般人的想法,大家都这么做的,理所当然,你可不可以脱离hibernate,hibernate没多少人用的,用它还不如自己封装jdbc照样能达到相同的效果

你封装得比hibernate好么?

看来你不清楚hibernate的“原罪”啊`
38 楼 黑暗浪子 2009-10-30  
aaa5131421 写道
粗略的看了一下,还可以,呵呵,不过根据我看过的尚学堂的oa视频,其实你的这个分页还会有好多需要改进的地方
1、刚才有人说前台分页可以用标签来做,其实已经有现成的标签实现了,pagertaglib, pagertaglib  可以和你后台的hibernate代码完全整合,少去很多重复的jsp代码
2、 firstindex, maxresult这些可以用filter和threadlocal结合使用,将参数从业务层方法中去除,业务方法里面不会出现分页参数这些和业务逻辑无关的东西
~~~具体的不写了,建议大家去看看我说的相关资料哈

有没有通用支持各种ORM和JDBC的分页标签呢?有的话,请这位兄弟指点一下,目前我正好有这么一个需求。我以前做的分页比较差,正想Update一个通用的分页标签呢。
37 楼 tsyjswpu 2009-10-30  
package com.itcast.service.base;

import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Method;
import java.util.LinkedHashMap;

import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import com.itcast.bean.QueryResult;

@Transactional
public abstract class DaoSupport implements DAO{
	@PersistenceContext protected EntityManager em;
	
	public void clear(){
		em.clear();
	}

	public <T> void delete(Class<T> entityClass,Object entityid) {
		delete(entityClass, new Object[]{entityid});
	}

	public <T> void delete(Class<T> entityClass,Object[] entityids) {
		for(Object id : entityids){
			em.remove(em.getReference(entityClass, id));
		}
	}
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> T find(Class<T> entityClass, Object entityId) {
		return em.find(entityClass, entityId);
	}

	public void save(Object entity) {
		em.persist(entity);
	}
	
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> long getCount(Class<T> entityClass) {
		return (Long)em.createQuery("select count("+ getCountField(entityClass) +") from "+ getEntityName(entityClass)+ " o").getSingleResult();
	}
	
	public void update(Object entity) {
		em.merge(entity);
	}
	
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> QueryResult<T> getScrollData(Class<T> entityClass,
			int firstindex, int maxresult, LinkedHashMap<String, String> orderby) {
		return getScrollData(entityClass,firstindex,maxresult,null,null,orderby);
	}
	
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> QueryResult<T> getScrollData(Class<T> entityClass,
			int firstindex, int maxresult, String wherejpql, Object[] queryParams) {
		return getScrollData(entityClass,firstindex,maxresult,wherejpql,queryParams,null);
	}
	
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> QueryResult<T> getScrollData(Class<T> entityClass, int firstindex, int maxresult) {
		return getScrollData(entityClass,firstindex,maxresult,null,null,null);
	}
	
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> QueryResult<T> getScrollData(Class<T> entityClass) {
		return getScrollData(entityClass, -1, -1);
	}

	@SuppressWarnings("unchecked")
	@Transactional(readOnly=true,propagation=Propagation.NOT_SUPPORTED)
	public <T> QueryResult<T> getScrollData(Class<T> entityClass, int firstindex, int maxresult
			, String wherejpql, Object[] queryParams,LinkedHashMap<String, String> orderby) {
		QueryResult qr = new QueryResult<T>();
		String entityname = getEntityName(entityClass);
		Query query = em.createQuery("select o from "+ entityname+ " o "+(wherejpql==null? "": "where "+ wherejpql)+ buildOrderby(orderby));
		setQueryParams(query, queryParams);
		if(firstindex!=-1 && maxresult!=-1) query.setFirstResult(firstindex).setMaxResults(maxresult);
		qr.setResultlist(query.getResultList());
		query = em.createQuery("select count("+ getCountField(entityClass)+ ") from "+ entityname+ " o "+(wherejpql==null? "": "where "+ wherejpql));
		setQueryParams(query, queryParams);
		qr.setTotalrecord((Long)query.getSingleResult());
		return qr;
	}
	
	protected void setQueryParams(Query query, Object[] queryParams){
		if(queryParams!=null && queryParams.length>0){
			for(int i=0; i<queryParams.length; i++){
				query.setParameter(i+1, queryParams[i]);
			}
		}
	}
	/**
	 * 组装order by语句
	 * @param orderby
	 * @return
	 */
	protected String buildOrderby(LinkedHashMap<String, String> orderby){
		StringBuffer orderbyql = new StringBuffer("");
		if(orderby!=null && orderby.size()>0){
			orderbyql.append(" order by ");
			for(String key : orderby.keySet()){
				orderbyql.append("o.").append(key).append(" ").append(orderby.get(key)).append(",");
			}
			orderbyql.deleteCharAt(orderbyql.length()-1);
		}
		return orderbyql.toString();
	}
	/**
	 * 获取实体的名称
	 * @param <T>
	 * @param entityClass 实体类
	 * @return
	 */
	protected <T> String getEntityName(Class<T> entityClass){
		String entityname = entityClass.getSimpleName();
		Entity entity = entityClass.getAnnotation(Entity.class);
		if(entity.name()!=null && !"".equals(entity.name())){
			entityname = entity.name();
		}
		return entityname;
	}
	
	protected <T> String getCountField(Class<T> clazz){
		String out = "o";
		try {
			PropertyDescriptor[] propertyDescriptors = Introspector.getBeanInfo(clazz).getPropertyDescriptors();
			for(PropertyDescriptor propertydesc : propertyDescriptors){
				Method method = propertydesc.getReadMethod();
				if(method!=null && method.isAnnotationPresent(EmbeddedId.class)){					
					PropertyDescriptor[] ps = Introspector.getBeanInfo(propertydesc.getPropertyType()).getPropertyDescriptors();
					out = "o."+ propertydesc.getName()+ "." + (!ps[1].getName().equals("class")? ps[1].getName(): ps[0].getName());
					break;
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
        return out;
	}
}

package com.itcast.bean;

import java.util.List;

public class QueryResult<T> {
	private List<T> resultlist;
	private long totalrecord;
	
	public List<T> getResultlist() {
		return resultlist;
	}
	public void setResultlist(List<T> resultlist) {
		this.resultlist = resultlist;
	}
	public long getTotalrecord() {
		return totalrecord;
	}
	public void setTotalrecord(long totalrecord) {
		this.totalrecord = totalrecord;
	}
}

这就是黎活明老师的,怎么样很像吧,自尊受打击了吧。
36 楼 fengfeng925 2009-10-30  
tsyjswpu 写道
fengfeng925 写道
tsyjswpu 写道
javaeye是一个比较高端的java论坛,我们需要的是原创和创新,像楼主这样把别人的程序发布到这里来,却偏偏要说是自己写的,有点可笑,这明明是黎活明老师巴巴运动网里面的程序啊,一点都没有变动啊,你要发别人的程序也应该创新一下吧,比如说修改一下不完美的地方,你这样原封不动的照抄下来没有任何意义。

你们老师的代码是用什么写的?是struts2,还是struts1?是hibernate?还是jpa?是mysql,还是oracle?
分页做成链接了,还是按钮了,别在这里鼓捣培训机构的东西?分了几层?我都懒的说你。

COPY黎活明老师的,说的够清楚了三。

发不上来就别扯淡了啊。巴巴运动网用的什么架构,自己去查查,白痴。
35 楼 tsyjswpu 2009-10-30  
fengfeng925 写道
tsyjswpu 写道
javaeye是一个比较高端的java论坛,我们需要的是原创和创新,像楼主这样把别人的程序发布到这里来,却偏偏要说是自己写的,有点可笑,这明明是黎活明老师巴巴运动网里面的程序啊,一点都没有变动啊,你要发别人的程序也应该创新一下吧,比如说修改一下不完美的地方,你这样原封不动的照抄下来没有任何意义。

你们老师的代码是用什么写的?是struts2,还是struts1?是hibernate?还是jpa?是mysql,还是oracle?
分页做成链接了,还是按钮了,别在这里鼓捣培训机构的东西?分了几层?我都懒的说你。

COPY黎活明老师的,说的够清楚了三。
34 楼 fengfeng925 2009-10-30  
tsyjswpu 写道
fengfeng925 写道
tsyjswpu 写道
javaeye是一个比较高端的java论坛,我们需要的是原创和创新,像楼主这样把别人的程序发布到这里来,却偏偏要说是自己写的,有点可笑,这明明是黎活明老师巴巴运动网里面的程序啊,一点都没有变动啊,你要发别人的程序也应该创新一下吧,比如说修改一下不完美的地方,你这样原封不动的照抄下来没有任何意义。

你们老师的代码是用什么写的?是struts2,还是struts1?是hibernate?还是jpa?是mysql,还是oracle?
分页做成链接了,还是按钮了,别在这里鼓捣培训机构的东西?分了几层?我都懒的说你。

你不用在那里狡辩了,别人的东西就是别人的东西.有一点自尊好不好,我知道你现在已经很不好受了,因为你抄袭别人的东西被我发现了.垃圾。

简直是个2孩子。代码发上来,我们看看再做辩论啊,没代码光说有什么用呢?
33 楼 tsyjswpu 2009-10-30  
fengfeng925 写道
tsyjswpu 写道
javaeye是一个比较高端的java论坛,我们需要的是原创和创新,像楼主这样把别人的程序发布到这里来,却偏偏要说是自己写的,有点可笑,这明明是黎活明老师巴巴运动网里面的程序啊,一点都没有变动啊,你要发别人的程序也应该创新一下吧,比如说修改一下不完美的地方,你这样原封不动的照抄下来没有任何意义。

你们老师的代码是用什么写的?是struts2,还是struts1?是hibernate?还是jpa?是mysql,还是oracle?
分页做成链接了,还是按钮了,别在这里鼓捣培训机构的东西?分了几层?我都懒的说你。

你不用在那里狡辩了,别人的东西就是别人的东西.有一点自尊好不好,我知道你现在已经很不好受了,因为你抄袭别人的东西被我发现了.垃圾。
32 楼 fengfeng925 2009-10-30  
tsyjswpu 写道
javaeye是一个比较高端的java论坛,我们需要的是原创和创新,像楼主这样把别人的程序发布到这里来,却偏偏要说是自己写的,有点可笑,这明明是黎活明老师巴巴运动网里面的程序啊,一点都没有变动啊,你要发别人的程序也应该创新一下吧,比如说修改一下不完美的地方,你这样原封不动的照抄下来没有任何意义。

你们老师的代码是用什么写的?是struts2,还是struts1?是hibernate?还是jpa?是mysql,还是oracle?
分页做成链接了,还是按钮了,别在这里鼓捣培训机构的东西?分了几层?我都懒的说你。
31 楼 fengfeng925 2009-10-30  
tsyjswpu 写道
说白了,楼主就是一个新手,把这种比较优雅的代码发上来冒充一下高手

简直太可笑了,你找出来我把谁的代码发上来了?还有,我说过我是高手吗?莫名其妙啊。你最好找出来我copy的谁的代码?找不出来就别在这里乱放P
30 楼 slaser 2009-10-30  
xqh1022 写道
个人感觉,这个东西也就是一般人的想法,大家都这么做的,理所当然,你可不可以脱离hibernate,hibernate没多少人用的,用它还不如自己封装jdbc照样能达到相同的效果

你封装得比hibernate好么?
29 楼 xqh1022 2009-10-30  
import java.util.ArrayList;
import java.util.List;

/**
* 分页
* @author no
*
*/
public class Page {

private int pageCount; //总页数

private int nowPage; //当前页编号

private int pageSize; //页面大小

private int infoCount; //总记录数

private boolean hasPre;//是否有上一页
   
private boolean hasNext;//是否有下一页
   
private boolean isFirst;//是否是第一页
   
private boolean isLast;//是否是最后一页

private List page=new ArrayList();//数据集

public List getPage() {
return page;
}

public void setPage(List page) {
this.page = page;
}

public int getPageCount() {
return pageCount;
}

public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}

public int getNowPage() {
if(nowPage>pageCount)
return pageCount;
else
return nowPage;
}

public void setNowPage(int nowPage) {
this.nowPage = nowPage;
}

public int getPageSize() {
return pageSize;
}

public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}

public int getInfoCount() {
return infoCount;
}

public void setInfoCount(int infoCount) {
this.infoCount = infoCount;
}



public boolean isHasPre() {
if(nowPage!=1)
return true;
else
return false;
}

public void setHasPre(boolean hasPre) {
this.hasPre = hasPre;
}

public boolean isHasNext() {
  if(nowPage!=pageCount)
return true;
else
return false;
}

public void setHasNext(boolean hasNext) {
this.hasNext = hasNext;
}


public boolean isFirst() {
if(nowPage==1)
return true;
else
return false;
}

public void setFirst(boolean isFirst) {
this.isFirst = isFirst;
}

public boolean isLast() {
if(nowPage==pageCount)
return true;
else
return false;
}

public void setLast(boolean isLast) {
this.isLast = isLast;
}

}
28 楼 tsyjswpu 2009-10-30  
说白了,楼主就是一个新手,把这种比较优雅的代码发上来冒充一下高手
27 楼 tsyjswpu 2009-10-30  
javaeye是一个比较高端的java论坛,我们需要的是原创和创新,像楼主这样把别人的程序发布到这里来,却偏偏要说是自己写的,有点可笑,这明明是黎活明老师巴巴运动网里面的程序啊,一点都没有变动啊,你要发别人的程序也应该创新一下吧,比如说修改一下不完美的地方,你这样原封不动的照抄下来没有任何意义。
26 楼 aaa5131421 2009-10-29  
粗略的看了一下,还可以,呵呵,不过根据我看过的尚学堂的oa视频,其实你的这个分页还会有好多需要改进的地方
1、刚才有人说前台分页可以用标签来做,其实已经有现成的标签实现了,pagertaglib, pagertaglib  可以和你后台的hibernate代码完全整合,少去很多重复的jsp代码
2、 firstindex, maxresult这些可以用filter和threadlocal结合使用,将参数从业务层方法中去除,业务方法里面不会出现分页参数这些和业务逻辑无关的东西
~~~具体的不写了,建议大家去看看我说的相关资料哈
25 楼 keer2345 2009-10-29  
weich_1211 写道
I hate hibernate!!!!!


What's your like? Can you share for us?

相关推荐

    工业软件,航空航天,新能源汽车+软件失效分析和预防+失效模式分析,危害定级+提供软件鲁棒性,安全性以及预防软件失效

    Software FMEA 软件失效分析内容: 1.软件失效分析介绍: 1.1 软件失效逐年增多, 1.2 SW FEMAs的益处 1.3 软件失效分析中不应该做的事 1.4 共有的软件失效根本原因 2.软件失效分析的准备和输入内容 3.软件失效模式...

    EOS失效分析原理及方法简述

    "EOS失效分析原理及方法简述" 本文将详细介绍EOS失效分析的原理和方法,旨在帮助读者了解EOS失效分析的整个过程和多种失效分析工具。 EOS失效分析是评估过电应力(EOS)失效的重要过程,旨在找到失效的根本原因,并...

    FMEA教材(潜在失效模式及后果分析)

    潜在失效模式及后果分析: 利用表格方式协助工程师进行工程分析,使其在工程设计早期发现潜在缺陷及其影响...对每一个失效模式,依其严重等级和发生几率综合评估并予以分类,以便确定预防或改正措施的内容和优先顺序。

    JAVA 生成二维码并设置失效机制

    3.通常的二维码都不能满足开发需求,大多数都要设置二维码有效时间来保证安全性,提供2种常见的二维码失效思路,简单易上手 4.提供通过QRCode.jar生成二维码的全部生产线上代码,可直接运行,含有关键注释

    半导体器件失效分析

    主要包括半导体器件失效分析,表面失效机理,体内失效机理,核辐射失效及抗核加固等内容。

    最最新淘宝28街美化修改版程序(淘宝达人店铺街源码091225圣诞版)

    http://www.taobaodaren.com/zhuanti/zhuanti_a1.html ,即使以后这个海报的内容失效了,我们可以换其他的海报链接,但是URL还是不变的,减低了对搜索引擎的不好处罚 (6).主页带旺旺和QQ联系方式,方便淘友们和...

    淘宝28最新修改版淘宝达人店铺街09年121月4源码

    http://www.taobaodaren.com/zhuanti/zhuanti_a1.html ,即使以后这个海报的内容失效了,我们可以换其他的海报链接,但是URL还是不变的,减低了对搜索引擎的不好处罚 6.主页带旺旺的联系方式和QQ联系方式,方便...

    PCB与PCBA失效分析及应对措施

    主要内容: 影响PCBA质量的几个主要要素 印制板面临的挑战 PCB及PCBA失效分析流程 PCB及PCBA失效分析技术 PCB及PCBA失效案例及应对措施

    齿轮失效分析实例(20200515105940).pdf

    机械设计中齿轮失效案例分析 内容 可以学习参考

    旋挖钻机的桅杆失效分析

    旋挖钻机的桅杆失效分析,赵晓龙,,本文以SR150型旋挖钻机桅杆为主要研究内容,根据旋挖钻机桅杆的失效情况,分析了桅杆断裂事故产生的原因,采用三维建模软件Solidworks

    汽车尾门失效分析.pdf

    本资源摘要信息将详细介绍汽车尾门失效分析的相关知识点,包括汽车尾门腐蚀失效的背景介绍、实验分析、耐久试验、经验反馈和改善措施等方面的内容。 背景介绍 汽车尾门腐蚀失效是汽车行业的一大挑战,随着汽车市场...

    论文研究-供应链失效风险识别与评估.pdf

    供应链风险是影响供应链实践应用的关键因素之一,供应链风险管理是供应链管理的重要内容。采用故障树理论和模糊理论对供应链风险进行了分析,构造了供应链失效风险故障树,该故障树由供应商、制造商、分销商三部分...

    零点站点管理系统 v2.6 梦想美化版

    更新内容: 修订评论内容失效链接 修订图片频道,使之适多种场合的需要。 修订文章分页导致类别失效 修订后台添加会员前台登录出错提示 修订部份用户在线统计无法启用 修订首页调用分类无法显示 修订鼠标移至标题时,...

    编号4-8 DFMEA——产品潜在失效模式及效应分析.doc

    在本课程中,我们将结合丰富的实际应用案例,针对性极强地讲解 DFMEA 的内容、要求、内部逻辑、实施步骤和方法。同时,我们还将特别介绍日本丰田公司成功的 DRBFM(基于失效模式的设计评估)在变更带来的潜在失效...

    零点站点管理系统 v2.2

     修订评论内容失效链接  修订图片频道,使之适多种场合的需要。  修订文章分页导致类别失效  修订后台添加会员前台登录出错提示  修订部份用户在线统计无法启用  修订首页调用分类无法显示  修订鼠标移至标题...

    linux0.12源码+linux源码剖析0.12PDF+linux源码注释0.11PDF 百度云链接

    最近学习了一下,共享给大家。里面是linux0.12源码+linux源码剖析0.12PDF+linux源码注释0.11PDF 的百度云链接。实际内容超出上传限制,大家理解一下,内容失效可百度云私信我。

    基于霍夫曼树的内容寻址网络失效区域恢复机制

    针对内容寻址网络多区域失效导致的覆盖网结构破坏与子网割裂问题,提出了基于霍夫曼树的内容寻址网络失效恢复机制。采用霍夫曼树对覆盖网逻辑空间重新进行组织与优化,在失效结点检测机制的基础上,提出了单个区域与...

    BA无标度网络级联失效模型-python

    完成的内容包括:构造了两个BA无标度网络的耦合模型、并基于此构造了网络级联失效模型 耦合模型的建立方法为同配耦合、节点一一对应(或异配耦合、节点一一对应) 级联失效流程:首先确定攻击的节点,移除该节点和其...

    零失效数据的可靠度计算与区间估计 (1999年)

    计列7个主要内容:(1)建立点可靠度的初估公式,并分析其性质;(2)建立区间估计方法;(3)建立分布曲线的拟合方法;(4)提出贴近度作为选择最优拟合的指标;(5)以实例验证此分析方法的可行性与正确性;(6)...

    VueStudey

    v-html:设置元素的内部HTML,该指令会导致元素的模板内容失效 v-on:注册事件 该指令由于十分常见,因此提供了简写@ 事件支持一些指令修饰符,如.prevent , .stop等 事件参数会自动传递( $event ) v-bind:绑定...

Global site tag (gtag.js) - Google Analytics