项目开发集锦-----jar包怎么用?(一)

本文以学生管理系统为例,深入解析Java项目中jar包的应用,涵盖数据库操作、分页查询、文件上传等功能,介绍mysql、c3p0、beanutils等关键jar包的作用及使用场景。

Java项目开发集锦-----jar包怎么用?(一)

接下来我将以学生管理系统为例,逐个具体分析该项目的实现的难点和业务逻辑,其中包含很重要的功能点:分页;分页查询;按条件查询,登录中的模糊查询;文件上传(照片上传);以及学生(用户)的crud操作。
下图是学生管理系统的首页界面;接下来先分析最关键的一步:导入相应的jar包

在这里插入图片描述

那么,实现以上功能点需要哪些jar包呢?为什么要导入这些jar包呢?这些jar包的作用是什么?
我们的做项目的过程当中,经常会报很多莫名其妙的错误,或者从别处导入的项目都无法正常使用,绝大部分原因是因为jar包导入错误或者缺少相应jar包,所以有时候会敲很多代码不如会用jar包,用对jar包很关键
下图是本项目所需jar包
在这里插入图片描述

这是lib下的jar包

在这里插入图片描述

1.那么,首先是mysql·包,这个大家应该都清楚,数据库操作必需jar包。
2.接下来是c3p0的两个包,本项目中,我所用的是c3p0连接池来配置mysql·文件,需要导入
这两个包链接数据库技术,c3p0方便数库管理,大型项目使用该技术,效率显著提高。
3Beanutils下的这三个包以及commous-dbutils这两项中的包,主要是方便程序员对Bean类能够进行简便的操作。或者对javabean的操作。
在这里插入图片描述

举例说明:
.try {
//将map中相对应的key值赋值给 student的对应属性
BeanUtils.populate(student,map);
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}

这个方法中:通过beanutils的populate方法直接就可以将student实体类中的值,也即是
将map中相对应的key值赋值给 student的对应属性。从而省去了大量的不便代码

4.jstl下的这两个包:首先得清楚
JSP标准标签库(JSP Standard Tag Library)是Java EE网络应用程序开发平台的组成部分。它是在JSP规范的基础上,扩充了一个JSP的标签库来完成一些通用任务,比如XML数据处理、条件执行、数据库访问、循环和国际化。jstl详解 所以使用这两个包也是主要为条件执行和数据库访问等。

5.这里的servlet包是文件上传的核心:
通过`fileupload这个类就可以得出文件上传的DiskFileItemFactory是创建FileItem对象的工厂包括方法:
1.public void setSizeThreshold(int?sizeThreshold)
设置内存缓冲区的大小,默认值为10K,如果文件大于10K,将使用临时文件缓存上传文件.
2.public void setRepository(Java.io.File repository)指定临时文件目录
3.public DiskFileItemFactory();
接下来看一下jar包源码:

public class FileUpload extends FileUploadBase {
    private FileItemFactory fileItemFactory;

    public FileUpload() {
    }

    public FileUpload(FileItemFactory fileItemFactory) {
        this.fileItemFactory = fileItemFactory;
    }

    public FileItemFactory getFileItemFactory() {
        return this.fileItemFactory;
    }

    public void setFileItemFactory(FileItemFactory factory) {
        this.fileItemFactory = factory;
    }
}

FileItem类中特别需要注意的是:

在HTML页面input 必须有 name

表单如果包含一个文件上传输入项的话,这个表单的enctype属性就必须设置为multipart/form-data

浏览器表单的类型如果为multipart/form-data,那么浏览器在提交表单数据时,它将采用MIME协议对数据进行封装后提交,在服务器这端也将不能采用

5.最后分析的这两个jar包比较容易理解,根据jar包截图内容显示,他主要是为支持jsp动态页面和http协议等,这里就不做过多介绍了。

在这里插入图片描述

总结:凡是涉及到以上功能点还在用法,优先考虑这些jar包的使用,会大大提高编码效率

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值