您的位置:首页 > 编程语言 > Java开发

java实现上传图片

2017-06-08 13:40 344 查看
1.将图片上传到tomcat下

2.将相对路径存放到数据库中

1 @RequestMapping(params="upLoadPicture")
2     @ResponseBody
3     public String addFilemsgPic(MultipartFile file,HttpServletRequest request) throws Exception{
4
5         String path="../Manage_ssm/upLoadPicture";
6
7         //创建文件
8         File dir=new File(path);
9         if(!dir.exists()){
10             dir.mkdirs();
11         }
12
13         String username=(String) request.getSession().getAttribute("userName");
14         //返回原来在客户端的文件系统的文件名
15         String fileName=file.getOriginalFilename();
16         //username+后缀名
17
18         String img=username+fileName.substring(fileName.lastIndexOf("."));//zhao.jpg
19         FileOutputStream imgOut=new FileOutputStream(new File(dir,img));//根据 dir 抽象路径名和 img 路径名字符串创建一个新 File 实例。
20
21         imgOut.write(file.getBytes());//返回一个字节数组文件的内容
22         imgOut.close();
23         Map<String, String> map=new HashMap<String, String>();
24
25         String rpath = path+"/"+img;
26         map.put("rPath",rpath);
27         JSONObject jsonObject = JSONObject.fromObject(map);//将json字符串转换为json对象
28         String r=jsonObject.toString();
29         String s=URLEncoder.encode(r, "utf-8");//加密
30         return s;
31     }


1 @RequestMapping(params="pictureToDb")
2     @ResponseBody
3     public int pictureToDb(String src,HttpServletRequest request){
4
5
6         String newSrc = src.replace(" ", "+");
7         int flag=ConnOrcl.connToTable(newSrc,request);
8         if(flag==1)
9             return 1;
10         else
11             return 2;
12     }


1 public class ConnOrcl {
2
3         private static Connection conn;
4         private static Statement stat;
5         private static String driver = "oracle.jdbc.driver.OracleDriver";
6         private static int SUCCESS=1;
7         private static int FILE=2;
8         public static int connToTable(String file,HttpServletRequest request)
9         {
10             try
11             {
12                 //数据库连接
13                 Class.forName(driver);
14                 conn = java.sql.DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl", "GKBMFZXT", "GKBMFZXT");
15                 stat = conn.createStatement();
16
17                 String username=(String) request.getSession().getAttribute("userName");
18                 String sql="update user_table set picture='"+file+"' where user_name='"+username+"'";
19                 stat.execute(sql.toString());
20
21                 return SUCCESS;
22             }
23             catch(ClassNotFoundException e)
24             {
25                 e.printStackTrace();
26             }
27             catch(SQLException e)
28             {
29                 e.printStackTrace();
30             }
31             finally
32             {
33                 if(null != stat)
34                 {
35                     try
36                     {
37                         stat.close();
38                     }
39                     catch (SQLException e)
40                     {
41                         e.printStackTrace();
42                     }
43                 }
44                 if(null != conn)
45                 {
46                     try
47                     {
48                         conn.close();
49                     }
50                     catch (SQLException e)
51                     {
52                         e.printStackTrace();
53                     }
54                 }
55             }
56             return FILE;
57         }
58
59 }


1 <script src="js/ajaxfileupload.js"></script>
2 <script type="text/javascript">
3 function upload(){
4
5     var file="file";
6     var picElement=document.getElementById(file).value;
7
8     var picFormat=picElement.substring(picElement.lastIndexOf('.')+1,picElement.length);
9     if(picFormat!="jpg"){
10         alert("请选择jpg 格式的文件!");
11         return;
12     }
13
14     $.ajaxFileUpload({
15              url:"user.do?upLoadPicture",
16            secureuri: false,
17            fileElementId:file,
18            dataType: 'JSON',
19            success:function(data){
20                   data=decodeURIComponent(data);//解码
21                   var arr=JSON.parse(data);//JSON.parse() 方法解析一个JSON字符串
22                 $("#fsrc").val(arr.rPath);
23                  $.post(
24                         "user.do?pictureToDb&src="+$("#fsrc").val(),
25                         function(data){
26                             //data=decodeURIComponent(data);
27                             //var arr=JSON.parse(data);
28                             if(data==1){
29                             alert("上传成功!");
30                             }else{
31                             alert("上传失败!");
32                             }
33
34                         }
35                     );
36         },
37         error: function (){
38                alert("上传失败!当前时间为:"+new Date().toLocaleTimeString());
39
40        }
41     });
42 };
43
44 function findFile(){
45     document.getElementById("file").click();
46 }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: