指维科技P2P网贷平台的上传图片功能代码分享

private File file; 
private String fileFileName; 
private String picture; 
InputStream is = new FileInputStream(file); 
//引入一个IO流的输入流
String root = ServletActionContext.getRequest() 
.getRealPath("/bookpicture"); 
//通过REQUEST来得到相对地址,并在后面加上/bookpicture
File f = new File(root, this.getFileFileName()); 
//定义一个FILE文件,第一个参数是文件的路径,第二个是文件的名字

picture="."+"\\"+"bookpicture"+"\\"+this.getFileFileName();
//为PICTURE字符串赋值,/地址/文件名 
System.out.println 
("======picture====="+picture); 
//从控制台输出Picture

OutputStream os = new FileOutputStream(f); 
//第一个文件的输出流
byte[] buffer = new byte[1024];
//定义一个bufer的字符串,长度为1024
 
int len = 0; 
while ((len = is.read(buffer)) > 0) { 
//如果从制定文件中读取到的信息为结束就继续循环
os.write(buffer, 0, len); 
//将文件读出的内容写入到指定的文件中

}

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import com.jspsmart.upload.*;

public class uploadfiles extends HttpServlet
{
	public void doGet(HttpServletRequest request,HttpServletResponse response)
					throws ServletException,IOException
	{
		//使用了一个第三方的组件,存放在web-inf/lib下
       		response.setContentType("text/html;charset=GB2312");
       	
       		//由于SmartUpload的初始化方法需要pageContext,所以我们在servlet中得到他
       		//为了得到pageConext要首先得到JspFactory的实例
       		//通过JspFactory的实例的getPageContext方法得到pageConext的实例
		JspFactory jf = null;
		
		//得到JspFactory的实例
		jf=JspFactory.getDefaultFactory();
				
		/*
		getPageContext(Servlet servlet, 
					   ServletRequest request, 
					   ServletResponse response, 
					   java.lang.String errorPageURL, 
					   boolean needsSession, 
					   int buffer, 
					   boolean autoflush)
       	*/       	
		PageContext pageContext=jf.getPageContext(this,request,response,null,true,8192,true);
		
		try
		{
			//实例化SmartUpload
			SmartUpload mySmartUpload=new SmartUpload();
			
			//初始化SmartUpload的实例,需要PageContext的实例
			mySmartUpload.initialize(pageContext);
			
			//设定最大上传的字节数,其实可以不进行设定,表示上传的文件没有大小限制
			//mySmartUpload.setTotalMaxFileSize(10000000);
			mySmartUpload.upload();
			
			//下面是单文件上传
			//上传的文件以com.jspsmart.upload.File 代表,如果文件名称重复,则进行覆盖
			com.jspsmart.upload.File file=mySmartUpload.getFiles().getFile(0);
			String upLoadFileName=file.getFileName();
			
			//调用com.jspsmart.upload.File实例的saveas的方法保存文件,此时的文件名即是
			//保存到服务器上的文件名
			file.saveAs("/upload/"+upLoadFileName);
			Request req = 
			Text t = .....;
			t.setUpload(upLoadFileName);
			t.set.....(req);
		}
		catch(SmartUploadException e)
		{
			System.out.println(e.getMessage());
		}

	}
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, java.io.IOException
	{
		doGet(request,response);
	}
}

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。

java-选择排序 - 2016-09-15 14:09:03

public class ChoiceSort {//选择排序public static void choiceSort(int[] a){int i,j,temp;int min=0;for(i=0; ia.length;i++){min=i; //将当前下标定义为最小值下标for(j=i+1;ja.length;j++){if(a[min]a[j]){/* 如果有小于当前最小值的关键字 */ min=j;/* 将此关键字的下标赋值给min */ }}if(i!=min){/* 若min不等于i,说明找

java-插入排序 - 2016-09-15 14:09:03

1、基本思想:每步将一个待排序的记录,按其顺序码大小插入到前面已经排序的字序列的合适位置(从后向前找到合适位置后),直到全部插入排序完为止。 /** * 插入排序 * * 从第一个元素开始,该元素可以认为已经被排序 * 取出下一个元素,在已经排序的元素序列中从后向前扫描 * 如果该元素(已排序)大于新元素,将该元素移到下一位置 * 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置 * 将新元素插入到该位置中 * 重复步骤2 * @param numbers 待排序数组 */ public stati

JAVA和C++区别 - 2016-09-15 14:09:03

Java和C++都是面向对象语言。也就是说,它们都能够实现面向对象思想(封装,继乘,多态)。而由于c++为了照顾大量的C语言使用者, 而兼容了C,使得自身仅仅成为了带类的C语言,多多少少影响了其面向对象的彻底性!JAVA则是完全的面向对象语言,它句法更清晰,规模更小,更易学。它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了c++的固有缺陷。 Java和c++的相似之处多于不同之处,但两种语言问几处主要的不同使得Java更容易学习,兄弟连JavaEE培训  ,并且编

配置文件的读取与写入 - 2016-09-15 14:09:03

读取配置文件: public static void main(String[] args) {Properties prop = new Properties();try {InputStream in = new BufferedInputStream(new FileInputStream("src/test/test.properties"));// 读取属性文件a.propertiesprop.load(in); // /加载属性列表System.out.println(prop.getPrope

android eclipse错误集合 - 2016-09-15 14:09:03

   1.  devices.xml 错误      [2016-09-14 15:20:11 - Android SDK] Error when loading the SDK:   Error: Error parsing D:\Users\shouzhuo3\AppData\Local\Android\sdk\system-images\android-22\android-wear\x86\devices.xml cvc-complex-type.2.4.d: 发现了以元素 'd:skin' 开头
这篇文章已经是有数年“网龄”的老文,不过在今天看来仍然经典。如何学习Java?本篇文章可以说也是面对编程初学者的一篇指导文章,其中对于如何学习Java的步骤的介绍,很多也适用于开发领域其他技能的学习。 【在原先《学好Java之我见》的基础上重新整理而成】 Java - 近10年来计算机软件发展过程中的传奇,其在众多开发者心中的地位就如“屠龙刀”、“倚天剑”。 我去年加入了一个java培训班,好在人品比较不错,没有被坑,学到了很多东西,也让我少走了很多弯路,Java是个平台,我只想说说我对学好Java的一点
今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑问无法得到正确的解释,为什么我们现在做java的web开发,会选择struts2或者springMVC这样的框架,而不是使用servlet加jsp这样的技术呢?特别是现在我们web的前端页面都是使用velocity这样的模板语言进行开发,抛弃了jsp,这样的选择又会给我们java的web开发带来什么样的好处,延

简单的poi导出 - 2016-09-14 14:09:04

@Override     public void exportXlsNotBill(HttpServletResponse response, TSBaseUser user) throws UnsupportedEncodingException {         // 第一步,创建一个webbook,对应一个Excel文件         HSSFWorkbook wb = new HSSFWorkbook();         // 第二步,在webbook中添加一个sheet,对应Excel文件
JEECG-P3微服务框架         Jeecg-P3是一款轻量的 Java 微服务框架,类似spring-boot,采用Springmvc+Velicity实现,插件开发与容器技术最佳实现,目前已开发“在线聊天”“我的邮箱”“ 微信 企业号”“网站CMS”等插件,可单独运行,也可轻松无缝集成jeecg平台。         特点: 提供强大代码生成器,提高开发效率,插件开发模式、松耦合、可插拔、支持独立部署,也可以无缝集成Jeecg平台中 版本升级日志 支持minidao拦截器,添加自动注入创建时

JavaWEB中读取配置信息 - 2016-09-13 17:09:03

第一种方法是使用java.io和java.util包,缺点是路径的概念要清晰, 例子:   Properties prop = new Properties(); InputStream in = getClass().getResourceAsStream("/common.properties"); try { prop.load(in); pool = new JedisPool(config, prop.getProperty("pay.redis.url")); } catch (IOExcep