`
zhoujinxiong
  • 浏览: 25777 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类

Android GridView 图片和文字结合

阅读更多

 

package cc.pic;

 

import java.io.BufferedInputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.util.ArrayList;

 

import android.app.Activity;

import android.content.Context;

import android.content.Intent;

import android.database.Cursor;

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

import android.graphics.drawable.BitmapDrawable;

import android.net.Uri;

import android.os.AsyncTask;

import android.os.Bundle;

import android.provider.MediaStore;

import android.view.Display;

import android.view.KeyEvent;

import android.view.View;

import android.view.ViewGroup;

import android.view.Window;

import android.view.WindowManager;

import android.widget.AdapterView;

import android.widget.BaseAdapter;

import android.widget.GridView;

import android.widget.ImageView;

import android.widget.AdapterView.OnItemClickListener;

 

 

public class LoadImagesFromSDCardActivity extends Activity implements

OnItemClickListener {

 

    /**

     * Grid view holding the images.

     */

    private GridView sdcardImages;

    /**

     * Image adapter for the grid view.

     */

    private ImageAdapter imageAdapter;

    /**

     * Display used for getting the width of the screen. 

     */

    private Display display;

 

    /**

     * Creates the content view, sets up the grid, the adapter, and the click listener.

     * 

     * @see android.app.Activity#onCreate(android.os.Bundle)

     */

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);        

        // Request progress bar

        requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);

        setContentView(R.layout.main1);

 

        display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();

 

        setupViews();

        setProgressBarIndeterminateVisibility(true); 

        loadImages();

    }

 

    /**

     * Free up bitmap related resources.

     */

    protected void onDestroy() {

        super.onDestroy();

        final GridView grid = sdcardImages;

        final int count = grid.getChildCount();

        ImageView v = null;

        for (int i = 0; i < count; i++) {

            v = (ImageView) grid.getChildAt(i);

            ((BitmapDrawable) v.getDrawable()).setCallback(null);

        }

    }

    /**

     * Setup the grid view.

     */

    private void setupViews() {

        sdcardImages = (GridView) findViewById(R.id.sdcard);

        sdcardImages.setNumColumns(display.getWidth()/95);

        sdcardImages.setClipToPadding(false);

        sdcardImages.setOnItemClickListener(LoadImagesFromSDCardActivity.this);

        imageAdapter = new ImageAdapter(getApplicationContext()); 

        sdcardImages.setAdapter(imageAdapter);

    }

    /**

     * Load images.

     */

    private void loadImages() {

        final Object data = getLastNonConfigurationInstance();

        if (data == null) {

            new LoadImagesFromSDCard().execute();

        } else {

            final LoadedImage[] photos = (LoadedImage[]) data;

            if (photos.length == 0) {

                new LoadImagesFromSDCard().execute();

            }

            for (LoadedImage photo : photos) {

                addImage(photo);

            }

        }

    }

    /**

     * Add image(s) to the grid view adapter.

     * 

     * @param value Array of LoadedImages references

     */

    private void addImage(LoadedImage... value) {

        for (LoadedImage image : value) {

            imageAdapter.addPhoto(image);

            imageAdapter.notifyDataSetChanged();

        }

    }

 

    /**

     * Save bitmap images into a list and return that list. 

     * 

     * @see android.app.Activity#onRetainNonConfigurationInstance()

     */

    @Override

    public Object onRetainNonConfigurationInstance() {

        final GridView grid = sdcardImages;

        final int count = grid.getChildCount();

        final LoadedImage[] list = new LoadedImage[count];

 

        for (int i = 0; i < count; i++) {

            final ImageView v = (ImageView) grid.getChildAt(i);

            list[i] = new LoadedImage(((BitmapDrawable) v.getDrawable()).getBitmap());

        }

 

        return list;

    }

    /**

     * Async task for loading the images from the SD card. 

     * 

     * @author Mihai Fonoage

     *

     */

    class LoadImagesFromSDCard extends AsyncTask<Object, LoadedImage, Object> {

 

        /**

         * Load images from SD Card in the background, and display each image on the screen. 

         *  

         * @see android.os.AsyncTask#doInBackground(Params[])

         */

        @Override

        protected Object doInBackground(Object... params) {

            //setProgressBarIndeterminateVisibility(true); 

            Bitmap bitmap = null;

            Bitmap newBitmap = null;

            Uri uri = null;            

 

            // Set up an array of the Thumbnail Image ID column we want

            String[] projection = {MediaStore.Images.Thumbnails._ID};

            // Create the cursor pointing to the SDCard

            Cursor cursor = managedQuery( MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI,

                    projection, // Which columns to return

                    null,       // Return all rows

                    null,       

                    null); 

            int columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Thumbnails._ID);

            int size = cursor.getCount();

            // If size is 0, there are no images on the SD Card.

            if (size == 0) {

                //No Images available, post some message to the user

            }

            int imageID = 0;

            for (int i = 0; i < size; i++) {

                cursor.moveToPosition(i);

                imageID = cursor.getInt(columnIndex);

                uri = Uri.withAppendedPath(MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, "" + imageID);

                try {

                    bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uri));

                    if (bitmap != null) {

                        newBitmap = Bitmap.createScaledBitmap(bitmap, 70, 70, true);

                        bitmap.recycle();

                        if (newBitmap != null) {

                            publishProgress(new LoadedImage(newBitmap));

                        }

                    }

                } catch (IOException e) {

                    //Error fetching image, try to recover

                }

            }

            cursor.close();

            return null;

        }

        /**

         * Add a new LoadedImage in the images grid.

         *

         * @param value The image.

         */

        @Override

        public void onProgressUpdate(LoadedImage... value) {

            addImage(value);

        }

        /**

         * Set the visibility of the progress bar to false.

         * 

         * @see android.os.AsyncTask#onPostExecute(java.lang.Object)

         */

        @Override

        protected void onPostExecute(Object result) {

            setProgressBarIndeterminateVisibility(false);

        }

    }

 

    /**

     * Adapter for our image files. 

     * 

     * @author Mihai Fonoage

     *

     */

    class ImageAdapter extends BaseAdapter {

 

        private Context mContext; 

        private ArrayList<LoadedImage> photos = new ArrayList<LoadedImage>();

 

        public ImageAdapter(Context context) { 

            mContext = context; 

        } 

 

        public void addPhoto(LoadedImage photo) { 

            photos.add(photo); 

        } 

 

        public int getCount() { 

            return photos.size(); 

        } 

 

        public Object getItem(int position) { 

            return photos.get(position); 

        } 

 

        public long getItemId(int position) { 

            return position; 

        } 

 

        public View getView(int position, View convertView, ViewGroup parent) { 

            final ImageView imageView; 

            if (convertView == null) { 

                imageView = new ImageView(mContext); 

            } else { 

                imageView = (ImageView) convertView; 

            } 

            imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);

            imageView.setPadding(8, 8, 8, 8);

            imageView.setImageBitmap(photos.get(position).getBitmap());

            return imageView; 

        } 

    }

 

    /**

     * A LoadedImage contains the Bitmap loaded for the image.

     */

    private static class LoadedImage {

        Bitmap mBitmap;

 

        LoadedImage(Bitmap bitmap) {

            mBitmap = bitmap;

        }

 

        public Bitmap getBitmap() {

            return mBitmap;

        }

    }

    /**

     * When an image is clicked, load that image as a puzzle. 

     */

    public void onItemClick(AdapterView<?> parent, View v, int position, long id) {        

        int columnIndex = 0;

        String[] projection = {MediaStore.Images.Media.DATA};

        Cursor cursor = managedQuery( MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI,

                projection,

                null, 

                null, 

                null);

        if (cursor != null) {

            columnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);

            cursor.moveToPosition(position);

            String imagePath = cursor.getString(columnIndex); 

 

            FileInputStream is = null;

            BufferedInputStream bis = null;

            try {

                is = new FileInputStream(new File(imagePath));

                bis = new BufferedInputStream(is);

                Bitmap bitmap = BitmapFactory.decodeStream(bis);

                Bitmap useThisBitmap = Bitmap.createScaledBitmap(bitmap, parent.getWidth(), parent.getHeight(), true);

                bitmap.recycle();

                //Display bitmap (useThisBitmap)

 

                Bundle data = new Bundle();

                                data.putString("imagepath", imagePath);

 

                                Intent intent = new Intent();

                                intent.setClass(getApplicationContext(), selectPhoto.class);

                                intent.putExtras(data);

                                startActivity(intent);

            } 

            catch (Exception e) {

                //Try to recover

            }

            finally {

                try {

                    if (bis != null) {

                        bis.close();

                    }

                    if (is != null) {

                        is.close();

                    }

                    cursor.close();

                    projection = null;

                } catch (Exception e) {

                }

            }

        }

    }

    public boolean onKeyDown(int keyCode, KeyEvent event) {

                if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {

                        Intent intent = new Intent(LoadImagesFromSDCardActivity.this, picActivity.class);

                        setResult(RESULT_OK, intent);

                        finish();

                        overridePendingTransition(R.anim.slide_up_in, R.anim.slide_down_out);

                        return false;

                }

                return false;

}

}

分享到:
评论

相关推荐

    Java程序员面试必备知识点总结

    内容概要:本文涵盖了一系列重要的Java基础知识与进阶概念的面试问题及其详细解答,其中包括JVM的工作原理,垃圾回收的实施细节,多线程的解决方案,以及诸如单例设计模式、异常处理和线程安全集合等实际应用中的编程技巧介绍。 适合人群:旨在为准备面试或希望提高Java编程技能的专业人士提供有用指南,无论是对于初级程序员还是资深开发者都有所帮助。 使用场景及目标:适用于Java学习阶段,帮助理解和记忆相关的关键术语和复杂理论;作为快速查阅资料的宝典应对技术评估或职业机会考察。 阅读注意点:强烈建议在研读解答的同时,进行相应的编程实验和实操练习,以便于深化对每个专题的理解和巩固知识点的应用能力。

    一个基于健身的社交App,内含跑步轨迹绘制,数据可视化展示,即时通讯,看新闻等模块(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    基于java的考研指导平台设计与实现.docx

    基于java的考研指导平台设计与实现.docx

    asp网上办公管理系统设计(源代码+论文).zip

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下 4载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。

    Aurora情绪树洞是面向大学生为其提供心理健康辅助和情绪宣泄的网站。(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    Springboot+Vue实现批量文件上传(pdf、word、excel)并支持在线预览功能(毕设&课设&实训&大作业&竞赛&

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    基于java的家政服务中介网设计与实现.docx

    基于java的家政服务中介网设计与实现.docx

    运动页,一个基于社交的体育类APP.zip(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    【带视频教程】任务地推分销推广拉新系统-任务分销神器

    推地推拉新任务分销系统源码是一款任务拉新悬赏系统,可用于地推任务拉新和任务分销, 会员管理,分销设置,订单管理,财务管理,文章资讯管理。它的运行环境为PHP+MySQL+TP。

    学校大创竞赛管理系统,学生上报项目内容,学院、教务处、评审专家评审。(毕设&课设&实训&大作业&竞赛&项目)

    学校大创竞赛管理系统,学生上报项目内容,学院、教务处、评审专家评审。SpringBoot、SpringCloud、SpringSecurity、redis、Mysql、swagger、fastdfs、maven、vue、webpack.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    Python是一种高级的、动态类型的编程语言.docx

    Python是一种高级的、动态类型的编程语言,其设计注重代码的可读性和简洁性。以下是对Python的详细介绍: 一、基本概述 中文名:Python 创始人:吉多·范罗苏姆(Guido van Rossum) 首次发布时间:1991年(Python 0.9.0) 主要版本:Python 2.0(2000年发布)、Python 3.0(2008年发布,为主要修订版) 语言特性:解释型、高级、通用编程语言 二、主要特点 简单易学:Python的语法简洁明了,易于理解和学习。其设计哲学强调代码的可读性和简洁的语法,使得编程变得更加直观和简单。 面向对象:Python既支持面向过程的编程也支持面向对象的编程。在面向对象的语言中,程序是由数据和功能组合而成的对象构建起的,这有助于提高代码的可重用性和可维护性。 可移植性:Python是开源的,因此已经被移植在许多平台上,包括Linux、Windows、macOS等。这使得Python程序可以在不同的操作系统上运行,提高了开发的便利性和灵活性。 解释性:Python是一种解释型语言,编写的程序不需要编译成二进制代码,而是可以直接从源代码执行。Pyt

    asp图书管理系统设计与实现(源代码+论文+开题报告+答辩PPT).zip

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。

    基于java的课程智能组卷系统设计与实现.docx

    基于java的课程智能组卷系统设计与实现.docx

    基于java的农产品网上销售系统设计与实现.docx

    基于java的农产品网上销售系统设计与实现.docx

    基于SpringBoot仿天猫购物系统.zip(毕设&课设&实训&大作业&竞赛&项目)

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。

    java毕业设计源码ssm853宏苑社区图书借阅系统的设计与实现+vue程序数据库含论文.rar

    前端采用的Vue框架,后端采用java语言,ssm框架,mybatis操作数据源,使用软件:idea,eclipse、MySQL。完成了用户登录管理等模块的设计与实现。完成了系统数据库的设计,并基于MySQL数据库管理系统 本系统基于SSM(Spring+SpringMVC+MyBatis)框架,适用于毕业设计, 基于B/S模式, mysql数据库,感兴趣的朋友们可以下载研究一下。 jdk版本:jdk1.8+ 前端:vue.js+ElementUI 开发工具:IDEA 或者eclipse都支持 编程语言: java 框架支持:ssm 数据库: mysql 版本不限 数据库工具:Navicat/SQLyog都可以 详细技术:java+ssm+vue+MYSQL+MAVEN

    基于Koopman算子的凸公式来解决数据驱动的最优控制问题matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    基于java的家用电器销售网站设计与实现.docx

    基于java的家用电器销售网站设计与实现.docx

    基于java的临大机械学院毕业设计管理系统设计与实现.docx

    基于java的临大机械学院毕业设计管理系统设计与实现.docx

    java基于ssm+vue网上房屋中介管理系统源码 带毕业论文

    【资源说明】 1、开发环境:ssm框架;内含Mysql数据库;VUE技术 2、项目代码都经过严格调试,代码没有任何bug!下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 4、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。

Global site tag (gtag.js) - Google Analytics