Java web 笔记 application&富文本编辑器&文件上传
一. appilcation
1. application概述
JSP application 对象用于保存应用程序的公用数据,服务器启动并自动创建 application 对象后,只要没有关闭服务器,application 对象就一直存在,所有用户共享 application 对象
它是jsp 4个存储对象里面最大的,它存储的数据可以在整个项目中调用
可以拿快递员和快递柜和你来形容
快递员把快递–>放在快递柜–>你可以去取快递
它是jsp内置对象之一
2. application使用
<%
/**
* Integer是int的封装类
* int 的默认值是0
* Integer 的默认值是null
*
* application
*/
Integer count = 0;
//从application里面获取当前在线人数
Integer c=(Integer) application.getAttribute("count");
//如果在线人数不为空 赋给变量count
if (c!=null){
count=c;
}
count++;//把当前的用户加进去
//然后把更改的用户数量保存到application
application.setAttribute("count",count);
%>
你是第<h1><%=application.getAttribute("count")%></h1>
二. 富文本编辑器
1.下载插件
可以去官网下载插件ckeditor
下载完之后直接拖入项目中
2. 使用方法
非常简单
然后写一个文本域,它的class属性是必须的,name属性值可以随便写但是name属性必须得有
然后这是效果图
三. 文件上传
1. 导入jar包
这是文件上传的jar包
提取码:6666
2.上传步骤
package com.zking.servlet;
import com.jspsmart.upload.File;
import com.jspsmart.upload.SmartUpload;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.SQLException;
public class SmartServlet extends HttpServlet {
String path;//文件保存的路径
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
//文件上传
try {
//创建smartupload对象
SmartUpload su=new SmartUpload();
//设置smartupload编码
su.setCharset("utf-8");
//初始化
su.initialize(this.getServletConfig(),req,resp);
//设置文件上传类型
su.setAllowedFilesList("jpg,gif,png");
//设置文件不能上传类型
su.setDeniedFilesList("exe,mp3");
//设置上传文件大小为1mb
su.setMaxFileSize(1024*1024);//单位为byte
//准备上传
su.upload();
//得到第一个上传的文件 多文件上传,这里写的是单文件上传
File file = su.getFiles().getFile(0);
//如果选择了文件
if (!file.isMissing()){
//定义上传路径
path="upload\\"+file.getFileName();
}
//开始上传文件(上传到服务器里面)
file.saveAs(path);
} catch (Exception e) {
e.printStackTrace();
}
}
}
别忘了在jsp界面调用servlet
效果图:
我这只有界面的效果图,只要能存进去就代表可以了