首页 > 代码库 > mybatis插入图片处理--mysql

mybatis插入图片处理--mysql

  1. 1. 数据库Scheme
1.数据库Scheme
  1. DROP TABLE IF EXISTS `user_graphic_t`;  
  2. /*!40101 SET @saved_cs_client     = @@character_set_client */;  
  3. /*!40101 SET character_set_client = utf8 */;  
  4. CREATE TABLE `user_graphic_t` (  
  5.   `id` int(11) NOT NULL AUTO_INCREMENT,  
  6.   `graphic_data` blob,  
  7.   PRIMARY KEY (`id`)  
  8. ) ENGINE=InnoDB AUTO_INCREMENT=360 DEFAULT CHARSET=utf8; 
2.Mapper配置文件
  1. <resultMap id="userGraphicMap" type="userGraphicVo">  
  2.         <id column="id" property="id" jdbcType="DECIMAL" />  
  3.         <span style="color: #ff0000;"><result column="graphic_data" property="graphicData" jdbcType="BLOB" /></span>  
  4.   
  5.   
  6.   
  7. </resultMap>  
  8.   
  9. <sql id="resultColumn">  
  10.         id,graphic_data  
  11. </sql>  
  12.       
  13. <insert id="insertUserGraphic" parameterType="userGraphicVo">  
  14.         INSERT INTO user_graphic_t (  
  15.         <include refid="resultColumn" />  
  16.         )  
  17.         values (  
  18.         #{id},,#{graphicData}  
  19.         )  
  20. </insert>  
  21.       
  22. <select id="selectUserGraphic" parameterType="java.lang.Long" resultMap="userGraphicMap">  
  23.         SELECT  
  24.         <include refid="resultColumn" />  
  25.         from user_graphic_t WHERE  
  26.         id=#{id}   
  27.         order by id desc  
  28. </select>  
3.Java bean
  1. public class UserGraphicVo {  
  2.   
  3.     private Long id;  
  4.       
  5.     private byte[] graphicData;  
  6.   
  7.        //get/set方法  
  8. }  
4.Action 处理
  1. public void showReportImage() {  
  2.                 response.setContentType("image/jpeg");  
  3.   
  4.                 if (!"".equals(id)) {  
  5.             List<UserGraphicVo> list = userGraphicService.findUserGraphicVoById(id);  
  6.             if(null != list && !list.isEmpty()){  
  7.                 OutputStream os = null;  
  8.                 try {  
  9.                     os = response.getOutputStream();  
  10.                     os.write(list.get(0).getGraphicData());  
  11.                     os.flush();  
  12.                 } catch (IOException e) {  
  13.                     Log.info("读取文件出错!" + e.getMessage());  
  14.                 } finally {  
  15.                     if(null != os){  
  16.                         try {  
  17.                             os.close();  
  18.                         } catch (IOException e) {  
  19.                             Log.info("关闭文件输出流出错!" + e.getMessage());  
  20.                         }  
  21.                     }  
  22.                 }                 
  23.             }  
  24.         }  
  25.     }  


mybatis插入图片处理--mysql