最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ssm框架上傳圖片保存到本地和數(shù)據(jù)庫示例

 更新時間:2017年03月06日 14:32:22   作者:啊啊斯蒂芬  
本篇文章主要介紹了ssm框架上傳圖片保存到本地和數(shù)據(jù)庫示例,主要使用了Spring+SpringMVC+MyBatis框架集合,有興趣的可以了解一下。

本文介紹了ssm框架上傳圖片保存到本地和數(shù)據(jù)庫示例,主要使用了Spring+SpringMVC+MyBatis框架,實現(xiàn)了ssm框架上傳圖片的實例,具體如下:

1、前臺部分

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
<head> 
  <meta charset="UTF-8"> 
  <title>Title</title> 
  <script src="resources/jquery/jquery-3.0.0.js"></script> 
</head> 
<body> 
<img id="image"src=""/> 
<br/> 
<input type="file"onchange="selectImage(this);"/> 
<br/> 
<input type="button"onclick="uploadImage();"value="提交"/> 
<script> 
  var image = ''; 
  function selectImage(file){ 
    if(!file.files || !file.files[0]){ 
      return; 
    } 
    var reader = new FileReader(); 
    reader.onload = function(evt){ 
      document.getElementById('image').src = evt.target.result; 
      image = evt.target.result; 
    } 
    reader.readAsDataURL(file.files[0]); 
  } 
  function uploadImage(){ 
    image = JSON.stringify(image) 
    $.ajax({ 
 
      type:'POST', 
 
      url: '/blog/test', 
 
      data: {base64: image 
      }, 
 
      async: false, 
 
      dataType: 'json', 
 
      success: function(data){ 
alert(data.success) 
        if(data.success){ 
 
          alert('上傳成功'); 
 
        }else{ 
 
          alert('上傳失敗'); 
 
        } 
 
      }, 
 
      error: function(err){ 
 
        alert('網(wǎng)絡(luò)故障'); 
 
      } 
 
    }); 
 
  } 
</script> 
<script src="jquery-1.11.1.min.js"></script> 
</body> 
</html> 

2、controller

@Inject 
  private IUserService userService; 
  @RequestMapping(value="test") 
  @ResponseBody 
  public ConsoleResult test(String base64){ 
//   自定義返回前臺數(shù)據(jù)格式 
    ConsoleResult res = new ConsoleResult(); 
//   去掉base64數(shù)據(jù)頭部data:image/png;base64,和尾部的” " “ 
    String[] ww= base64.split(","); 
    base64 = ww[1]; 
    String[] aa = base64.split("\""); 
    base64 = aa[0]; 
    try { 
//     將圖片插入數(shù)據(jù)庫 
      userService.base64test(base64); 
//     圖片保存到本地 
      String path = "D:/asdfasdf.jpg"; 
      Base64File file = new Base64File(); 
      file.decoderBase64File(base64, path); 
//     成功標(biāo)識 
      res.setStatus(ConsoleResult.successStatus); 
    } catch (Exception e) { 
      res.setStatus(ConsoleResult.faultStatus); 
    } 
    return res; 
  } 

3、base64

/** 
   * 將base64字符解碼保存文件 
   * 
   * @param base64Code 
   * @param targetPath 
   * @throws Exception 
   */ 
 
  public static void decoderBase64File(String base64Code, String targetPath) { 
    byte[] buffer; 
    FileOutputStream out = null; 
    try { 
      buffer = new BASE64Decoder().decodeBuffer(base64Code); 
      out = new FileOutputStream(targetPath); 
      out.write(buffer); 
    } catch (IOException e) { 
      e.printStackTrace(); 
    } finally { 
      try { 
        if (out != null) { 
          out.close(); 
        } 
      } catch (IOException e) { 
        e.printStackTrace(); 
      } 
    } 
  } 

4、mapper.xml

<update id="base64Test" parameterType="String"> 
  update t_user set U_ABOUT = #{base64} where u_name = '971171444' 
 </update> 

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Springboot @Value使用代碼實例

    Springboot @Value使用代碼實例

    這篇文章主要介紹了Springboot @Value使用代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Springboot源碼 TargetSource解析

    Springboot源碼 TargetSource解析

    這篇文章主要介紹了Springboot源碼 TargetSource解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Java執(zhí)行可執(zhí)行文件的三種方法詳解

    Java執(zhí)行可執(zhí)行文件的三種方法詳解

    這篇文章主要為大家詳細介紹了Java中執(zhí)行可執(zhí)行文件的三種方法,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的小伙伴可以參考一下
    2024-02-02
  • ManyToMany單向、雙向:@JoinTable的使用

    ManyToMany單向、雙向:@JoinTable的使用

    這篇文章主要介紹了ManyToMany單向、雙向:@JoinTable的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • springboot中手動提交事務(wù)的實現(xiàn)方法

    springboot中手動提交事務(wù)的實現(xiàn)方法

    手動提交事務(wù)可以提供更靈活的控制,以便在分布式環(huán)境中處理事務(wù)的提交和回滾,本文就來介紹一下springboot中手動提交事務(wù)的實現(xiàn)方法,感興趣的可以了解一下
    2024-01-01
  • Spring為何需要三級緩存解決循環(huán)依賴詳解

    Spring為何需要三級緩存解決循環(huán)依賴詳解

    這篇文章主要給大家介紹了關(guān)于Spring為何需要三級緩存解決循環(huán)依賴,而不是二級緩存的相關(guān)資料,這個也是一個Spring的高頻面試題,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-02-02
  • Java多線程的同步優(yōu)化的6種方案

    Java多線程的同步優(yōu)化的6種方案

    大家使用多線程無非是為了提高性能,在Java中,有多線程并發(fā)時,我們可以使用多線程同步的方式來解決內(nèi)存一致性的問題。本文就詳細的介紹了Java多線程同步優(yōu)化,感興趣的可以了解一下
    2021-05-05
  • Springboot如何讀取resources下的json配置文件

    Springboot如何讀取resources下的json配置文件

    這篇文章主要介紹了Springboot如何讀取resources下的json配置文件問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Spring?Boot如何實現(xiàn)統(tǒng)一數(shù)據(jù)返回

    Spring?Boot如何實現(xiàn)統(tǒng)一數(shù)據(jù)返回

    這篇文章主要介紹了Spring?Boot如何實現(xiàn)統(tǒng)一數(shù)據(jù)返回,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • 解讀@SpringBootApplication注解有什么用

    解讀@SpringBootApplication注解有什么用

    @SpringBootApplication是SpringBoot的核心注解,主要包含@SpringBootConfiguration、@EnableAutoConfiguration和@ComponentScan三個注解,這些注解共同簡化了Spring應(yīng)用的配置工作,并使得通過主程序類就可以啟動SpringBoot應(yīng)用
    2024-09-09

最新評論

湖口县| 台东市| 霍城县| 乌兰察布市| 刚察县| 得荣县| 农安县| 林芝县| 泉州市| 马龙县| 石景山区| 曲靖市| 黄骅市| 沙洋县| 嘉峪关市| 响水县| 韶关市| 永平县| 永吉县| 化州市| 梓潼县| 耿马| 北京市| 明溪县| 麦盖提县| 孙吴县| 松阳县| 庆元县| 颍上县| 垦利县| 五华县| 佛山市| 宁津县| 原阳县| 乳山市| 石城县| 阿尔山市| 黄浦区| 抚顺市| 出国| 三原县|