• 第三方控件


    用commons-fileupload向数据库中添加图片

    <%@page import="java.util.*,java.io.*,org.apache.commons.fileupload.*"%>
    <%@page import="org.apache.commons.fileupload.disk.DiskFileItemFactory"%>
    <%@page import="org.apache.commons.fileupload.servlet.ServletFileUpload"%>
    <%@page import="java.util.Date"%>
    <%@page import="com.pb.news.entity.News"%>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <%@include file="../common/common.jsp"%>
    <%
    request.setCharacterEncoding("utf-8");
    String fieldName="";
    boolean flag=false;
    String uploadFileName="";
    boolean bupload=false;
    
    News news =new News();
    news.setCreateDate(new Date());
    boolean isMultipart=ServletFileUpload.isMultipartContent(request);
    //获取文件夹的位置保存上传后的文件
    String uploadFilePath=request.getSession().getServletContext().getRealPath("/upload/");
    if(isMultipart==true){
        //FileItemFactory 用于构建FileItem实例的工厂
        FileItemFactory factory=new DiskFileItemFactory();
        //ServletFileUpload类是Apache 文件上传组件中,用于处理文件上传的一个核心类。
        //它的作用是以List形式返回每一个被封装成FileItem类型的表单元素集合。
        
        ServletFileUpload upload=new ServletFileUpload(factory);
        try{
        List<FileItem> items=upload.parseRequest(request);
        //获得集合的迭代器
        Iterator<FileItem> iter=items.iterator();
        while(iter.hasNext()){
            FileItem item=(FileItem)iter.next();
            //判断字段是否是普通字段
            if(item.isFormField()){
                fieldName=item.getFieldName();
                if(fieldName.equals("title")){
                    news.setTitle(item.getString("utf-8"));
                }else if(fieldName.equals("summary")){
                    news.setSummary(item.getString("utf-8"));
                }else if(fieldName.equals("newscontent")){
                    news.setContent(item.getString("utf-8"));
                }else if(fieldName.equals("picPath")){
                    news.setPicPath(item.getString("utf-8"));
                }else if(fieldName.equals("author")){
                    news.setAuthor(item.getString("utf-8"));
                }else if(fieldName.equals("categoryId")){
                    news.setCategoryid(Integer.parseInt(item.getString()));            
                }
            }else{
                String fileName=item.getName();
                     if(!fileName.equals("")&&fileName!=null)
                     {
                    File fullFile=new File(item.getName());
                    File saveFile=new File(uploadFilePath,fullFile.getName());
                    item.write(saveFile);
                    uploadFileName=fullFile.getName();
                    news.setPicPath(uploadFileName);
                    bupload=true;
                    }
                
                }
        }
            }catch(Exception e){
        e.printStackTrace();    
            }
    }
        
    //调用方法
    
    flag=newsService.addNews(news);
    if(flag){
        %>
    <jsp:forward page="admin.jsp" />
    <%
    }else{
        %>
    <jsp:forward page="newsDetailList.jsp" />
    <%
    }
    %>
    View添加图片

    CKEditor
    使用CKEditor的步骤

    1。下载CKEditor

    2.解压并复制CKEditor到项目中

    3.在页面中加入CKEditor

    3-1.

    <Script type="text/javascript" src="<%=request.getContextPath()%/ckeditor/ckeditor.js>"
    </Script>

    3-2.在"内容"textarea标签中加入class=“ckeditor”

    通过config.js配置CKEditor

    CKEDITOR.editorConfig=funtion(config)
    {
          config.language='zh-cn';//配置语言。zh-cn代表中文
          config.uiColor='#AASC6E';//背景颜色
        config.width='auto';//宽度
        config.height='300px';//高度
        config.skin='office2003';//皮肤i:v2,kama,office2003
    }    

    CKEdito文件夹

    _samples :存放官方的Demo

    lang;存放多国语言文件

    skins:皮肤文件

    4.使用CKEditor编辑内容

    5.提交CKEditor编辑的内容。

    CKEditor

  • 相关阅读:
    vue-scroller
    封装toast组件挂载到插件上,仿vux的插件调用toast
    js 滚动加载
    vue
    object.difineProperty
    vue-computed 计算属性
    数组去重
    css布局,左边的滚动时右边不随着滚动
    【洛谷 P5162】 WD与积木(生成函数+NTT)
    【2020省选模拟】题解
  • 原文地址:https://www.cnblogs.com/wanghongjie/p/4597995.html
Copyright © 2020-2023  润新知