多个条目

/*
*多条目加载
*/

  //只有文本
    private final int ONLY_TITLE=0;
    //有图片且在右边
    private final int ONLY_IMAGE_RIGHT=1;
    private final DisplayImageOptions options;


 //返回视图类型的个数
    @Override
    public int getViewTypeCount() {
        return 2;
    }

    //根据条目的下标,得到此条目到底应该是显示哪种类型视图,返回的是int
    @Override
    public int getItemViewType(int position) {
        //根据数据来判断,显示哪种类型
        List<String> picurls=results.get(position).getImages();
        if(picurls==null){
            return ONLY_TITLE;//返回文本类型
        }else if(picurls!=null && picurls.size()==1){//集合长度是1
            return  ONLY_IMAGE_RIGHT;//返回图片类型

        }else{
            return ONLY_TITLE;//返回文本类型
        }

    }


 @Override
                public View getView(int position, View convertView, ViewGroup parent) {
                    //判断条目的类型
                    int type=getItemViewType(position);
                    Log.d("zzz","type:"+type+" position:"+position);
                    if(type==ONLY_TITLE){


                        ViewHolderTitle holderTitle;
                        if(convertView==null){
                            holderTitle=new ViewHolderTitle();
                            convertView=View.inflate(context,R.layout.item_title,null);
                            holderTitle.tvTitle=(TextView) convertView.findViewById(R.id.tvtitle);

                            convertView.setTag(holderTitle);
                        }else{
                            holderTitle=(ViewHolderTitle) convertView.getTag();
                        }

                        //显示数据
                        holderTitle.tvTitle.setText(results.get(position).getDesc());
                        return  convertView;

                    }else if(type==ONLY_IMAGE_RIGHT){

                        ViewHolderImage holderImage;
                        if(convertView==null){
                            holderImage=new ViewHolderImage();
                            convertView=View.inflate(context,R.layout.item_image,null);
                            holderImage.tvTitle=(TextView) convertView.findViewById(R.id.tvtitle);
                            holderImage.img=(ImageView) convertView.findViewById(R.id.img);

                            convertView.setTag(holderImage);
            }else{
                holderImage=(ViewHolderImage) convertView.getTag();
            }

            //显示数据
            holderImage.tvTitle.setText(results.get(position).getDesc());
            //显示图片
            ImageLoader.getInstance().displayImage(results.get(position).getImages().get(0),holderImage.img,options);
            Log.d("zzz","type:"+type+"   "+results.get(position).getImages().get(0));

            return  convertView;



        }else{

        }
        return convertView;
    }

    class ViewHolderTitle{
        TextView tvTitle;
    }

    class ViewHolderImage{
        ImageView img;
        TextView tvTitle;



内容概要:本文系统阐述了Java Persistence API(JPA)的核心概念、技术架构、核心组件及实践应用,重点介绍了JPA作为Java官方定义的对象关系映射(ORM)规范,如何通过实体类、EntityManager、JPQLpersistence.xml配置文件实现Java对象与数据库表之间的映射与操作。文章详细说明了JPA解决的传统JDBC开发痛点,如代码冗余、对象映射繁琐、跨数据库兼容性差等问题,并解析了JPA与Hibernate、EclipseLink等实现框架的关系。同时提供了基于HibernateMySQL的完整实践案例,涵盖Maven依赖配置、实体类定义、CRUD操作实现等关键步骤,并列举了常用JPA注解及其用途。最后总结了JPA的标准化优势、开发效率提升能力及在Spring生态中的延伸应用。 适合人群:具备一定Java基础,熟悉基本数据库操作,工作1-3年的后端开发人员或正在学习ORM技术的中级开发者。 使用场景及目标:①理解JPA作为ORM规范的核心原理与组件协作机制;②掌握基于JPA+Hibernate进行数据库操作的开发流程;③为技术选型、团队培训或向Spring Data JPA过渡提供理论与实践基础。 阅读建议:此资源以理论结合实践的方式讲解JPA,建议读者在学习过程中同步搭建环境,动手实现文中示例代码,重点关注EntityManager的使用、JPQL语法特点以及注解配置规则,从而深入理解JPA的设计思想与工程价值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值