第三方控件

//导入相关的包

<%@page import="java.io.*,java.util.*,org.apache.commons.fileupload.*" %>
<%@page import="org.apache.commons.fileupload.disk.DiskFileItemFactory" %>
<%@page import="org.apache.commons.fileupload.servlet.ServletFileUpload" %>

boolean bRet = false;
boolean bUpload = false;
String uploadFileName = "";
String fieldName = "";
News news = new News();//实例化封装属性的News对象
news.setCreatedate(new Date());//新闻创建时间
//读取request请求,判断是否 是多部分表达提交(二进制进行数据传输,可能是普通表单,也可能是包含文件表单)
boolean isMultipart=ServletFileUpload.isMultipartContent(request);
//获得文件夹的位置(上传的图片保存在该文件夹中)
String uploadFilePath = request.getSession().getServletContext().getRealPath("/upload/" );
if (isMultipart == true) {
    //创建FileItemFactory实例
    FileItemFactory factory = new DiskFileItemFactory();
    //创建ServletFileUpload实例
    ServletFileUpload upload = new ServletFileUpload(factory);
    try {
        //解析Request请求中的数据(返回一个集合)获取客户端提交过来的所有表单元素
        List<FileItem> items = upload.parseRequest(request);
        for(FileItem item:items){
            //判断表单元素类型,true为普通表单元素,false为文件
            if (item.isFormField()){
                //获取表单元素名字
                fieldName = item.getFieldName();
                //如果表单元素名字为title(判断元素 名称 与表单元素的对应关系)
                if (fieldName.equals("title")){
                    //设置编码为UTF-8
                    news.setTitle(item.getString("UTF-8"));
                }else if(fieldName.equals("id")){
                    String id = item.getString();
                    if (id != null && !id.equals("")){
                        //转换为Int类型
                        news.setId(Integer.parseInt(id));
                    }

                }else if (fieldName.equals("categoryId")){
                    news.setCateforyId(Integer.parseInt(item.getString()));
                }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("author")){
                    news.setAuthor(item.getString("UTF-8"));
                }
            }else{
                //读取文件元素的名称
                String fileName = item.getName();
                if (fileName != null && !fileName.equals("")) {
                    //获取上传文件的名称,并通过名称创建一个新File实例
                    File fullFile = new File(item.getName());
                    //从路径中提取文件本身名称,并构建一个新的file实例
                    File saveFile = new File(uploadFilePath, fullFile.getName());
                    //写入文件,开始 上传
                    item.write(saveFile);
                    //获取上传文件名称
                    uploadFileName = fullFile.getName();
                    //新闻对象中保存上传文件名称
                    news.setPicpath(uploadFileName);
                    //上传图片
                    bUpload = true;
                }
            }

        }
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
System.out.println("上传成功后的文件名是::"+news.getPicpath());

    //调用后台方法,将新闻信息插入数据库
    bRet=newsService.addNews(news);
%>

<%
if (bRet) {
    //新闻添加成功跳转新闻列表页
    response.sendRedirect("newsDetailList.jsp");
} else {
    //失败跳转到新闻添加的页面
    response.sendRedirect("newsDetailCreate.jsp");
}
%>
时间: 2024-10-14 00:51:23

第三方控件的相关文章

iOS第三方控件

一.SIAlertView https://github.com/Sumi-Interactive/SIAlertView 感言: 扁平化设计的对话框(UIAlertView),对话框的弹出与消失的动画很不错,可以自定义对话框的外观 iOS第三方控件

C#编写第三方控件,实现窗体控件的一键取值

上篇博客中讲到了利用编写第三方控件的方法,实现给窗体控件的Text属性赋值,比如说:TextBox,Combox等.有赋值,当然也有取值操作.从窗体的控件中取值,然后存入变量或者实体属性当中,传入到数据访问层进行添加,更新等操作也是我们经常使用的.如何实现一键取值呢? 使用的方法在上篇博客中已经做了详细说明,这里就不再累述了. 代码写在这里: 该方法的作用是,遍历传入窗体中的控件,并且获取其值赋给实体类的相应属性. /// <summary> /// 从窗体控件取值,填充到学生实体类中 ///

C#编写第三方控件,实现窗体控件的一键赋值

. 事出有因 在写程序的时候,经常会写上面这样的代码,把查询的结果显示到窗体上,我们怎么做的呢? 一行一行的进行赋值,这样的代码写起来最枯燥,而且还容易出错.大家有没有发现,上面的代码都在做相同的事情-赋值.相类似的代码写了三遍以上,就要考虑是不是能对这个过程进行封装.封装出一个方法,帮我们自动完成这些重复性的操作. 思考过程 所接触项目中也有写好的类似方法.只是它涉及到了很多其它的方法,一个套一个,抽离出来特别不方便.而且还有几个令人不爽的地方: 第一是,控件在命名的时候必须和相对应实体属性相

第三方控件引起的"类型Universe无法解析程序集"的血案

前一阵子在项目中添加了IrisSkin2皮肤控件,今天用VS打开悲剧了. 提示"类型Universe无法解析程序集:System.Design,Version=2.0.0.0,Culture=neutral,PublickeyToken=b03f5f7f11d50a3a".这是因为vs2010新建工程时应用程序默认目标框架为.Net Framework 4 Client Profile,该选项为微软对.NET Class Library的减肥版,缺少第三方控件需要的组件引用. 解决方案

牛腩新闻发布系统———如何在开发中使用第三方控件

开发的项目多了以后,很多时候系统自带控件根本不能满足我们的需要,所以有时候就需要我们使用第三方控件来让我们的系统更加Perfect! 下面 ,我记录一下牛腩是如何添加第三方控件的 比如我们要使用 FreeTextBox控件 第一步:先把第三方控件(某个DLL或者其他文件)下载下来 第二步:然后添加对该文件的引用(右击自己的启动项目-添加–引用) 第三步:看到VS左边的工具箱了吗,在空白处右击选择 选择项 第四步:然后会看到如下界面,在单击 浏览,找到自己要添加的第三方控件,确定. 第五步:依次单

Delphi中代替WebBrowser控件的第三方控件

原文地址:http://blog.csdn.net/nanfeiyannan/article/details/7341492 这几天,接触到在delphi中内嵌网页,用delphi7自带的TWebBrowser控件,显示的内容与本机IE8显示的不一样,但是跟装IE8之前的IE6显示一个效果.现在赶脚是下面两个原因中的一个: 1.Navigate这个方法用的有点问题,里面的参数不同及Navigate2等不同方法,调用的IE内核版本不同 2.这个自带的控件用着不爽,直接换一个第三方控件 对于第一点,

iOS开发不借助第三方控件实现侧边栏效果

最近在研究iOS程序的侧边栏,因为发现渐渐的iOS的程序也开始走侧边栏的风格了,QQ,今日头条,Path(Path算最早出现侧边栏的app了,所以也把侧边栏效果说成是Path效果),所以就研究了下. 然后发现Git Hub上有很多侧边栏的控件,这些控件效果也都挺玄的,但是我想找到不用第三方控件自己实现侧边栏呢?后来参照这篇blog,然后自己搞了下,算搞清楚了.下面详细介绍一下吧. 1. 首先我们需要在storyboard里面新建3个view controlle,这里也可以是navigation

WPF第三方控件盘点

WPF统一的编程模型.语言和框架,实现了界面设计人员和开发人员工作可以分离的境界,鉴于WPF强大的优势,且一直是开发者关注的地方,下面和大家分享基于WPF项目开发需要用到的第三方控件,包括业界最受好评的网格控件.图表控件.停靠窗口和文本编辑器. 网格控件 1. Mindscape WPF Property Grid 这款表格控件是100%原生WPF表格控件,是Mindscape公司旗下WPF Elements用户界面套包里的一个商业子控件,当前已经更新到了5.1版本,新的版本在属性表格的性能以及

Delphi第三方控件安装卸载指南

基本安装1.对于单个控件,Componet-->install component..-->PAS或DCU文件-->install; 2.对于带*.dpk文件的控件包,File-->Open(下拉列表框中选*.dpk)-->install即可: 3.对于带*.bpl文件的控件包,Install Packages-->Add-->bpl文件名即可: 4.如果以上Install按钮为失效的话,试试Compile按钮: 5.是run time lib则在option下的

iOS开发无第三方控件的援助达到的效果侧边栏

最近的研究iOS程序侧边栏.渐渐的发现iOS该方案还开始采取风侧边栏格该,QQ,今日头条,Path(Path运营商最早的侧边栏app该,效果说成是Path效果),所以就研究了下. 然后发现Git Hub上有非常多側边栏的控件,这些控件效果也都挺玄的.可是我想找到不用第三方控件自己实现側边栏呢?后来參照这篇blog,然后自己搞了下,算搞清楚了.以下具体介绍一下吧. 1. 首先我们须要在storyboard里面新建3个view controlle,这里也能够是navigation controlle