Terry.Li-彬

虚其心,可解天下之问;专其心,可治天下之学;静其心,可悟天下之理;恒其心,可成天下之业。

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  143 随笔 :: 344 文章 :: 130 评论 :: 0 Trackbacks

前两天看了一个flex摄像头拍照的程序感觉不错不过是C#

代码的,有点遗憾,今天给他改成了java代码的。

java 代码:

  1. public   void  processRequest(HttpServletRequest request,  
  2.             HttpServletResponse response)  throws  ServletException, IOException {  
  3.         response.setContentType( "text/html;charset=UTF-8" );  
  4.         response.setHeader( "Pragma" "No-cache" );  
  5.         response.setHeader( "Cache-Control" "no-cache" );  
  6.         response.setDateHeader( "Expires" 0 );  
  7.               String bitmap_data = request.getParameter( "bitmap_data" );  
  8.           
  9.          int  width = commons.getRequestInt(request.getParameter( "width" ), 0 );  
  10.          int  height = commons.getRequestInt(request.getParameter( "height" ), 0 );  
  11.           
  12.         BufferedImage img =  new  BufferedImage(width, height,  
  13.                 BufferedImage.TYPE_INT_RGB);  
  14.                  try  {  
  15.               
  16.              int  w = width;  
  17.              int  h = height;  
  18.              int [] pixels =  new   int [w * h];  
  19.             String[] m_tempPics = bitmap_data.split( "," );  
  20.              for  ( int  x =  0 ; x < w; x++) {  
  21.                  for  ( int  y =  0 ; y < h; y++) {  
  22.                                     Long pic_argb = Long.parseLong(m_tempPics[x * h + y]);  
  23.                                          int  a = ( int ) (pic_argb >>  24  &  0xFF );  
  24.                      int  r = ( int ) (pic_argb >>  16  &  0xFF );   //右移16位 ,取后8位;   
  25.                      int  g = ( int ) (pic_argb >>  8  &  0xFF );  
  26.                      int  b = ( int ) (pic_argb &  0xFF );  
  27.                                         pixels[y * w + x] =  new  Color(r, g, b, a).getRGB();  
  28.                       
  29.                 }  
  30.             }  
  31.             img.setRGB( 0 0 , w, h, pixels,  0 , w);  
  32.             img.flush();  
  33.             ByteArrayOutputStream bao =  new  ByteArrayOutputStream();  
  34.               
  35.             ImageIO.write(img,  "jpg" , bao);  
  36.              byte [] data = bao.toByteArray();  
  37.             Personimage user =  new  Personimage();  
  38.             user.setFileContent(data);  
  39.             PersonimageDAO hm =  new  PersonimageDAO();  
  40.             hm.save(user);  
  41.             PersonrelationDAO prm =  new  PersonrelationDAO();  
  42.             Personrelation pr = prm.findById( new  Long(personRelationId));  
  43.             pr.setPersonimageid(user.getId());  
  44.             pr.setImageflag( "1" );  
  45.             prm.update(pr);  
  46.             str.append( "保存成功" );  
  47.         }  catch  (Exception e) {  
  48.             e.printStackTrace();  
  49.             str.append( "保存失败" );  
  50.         }  
  51.         response.setContentType( "text/xml" );  
  52.         response.getWriter().write(str.toString());  
  53.     }  
  54.   

posted on 2011-08-05 22:32 礼物 阅读(3014) 评论(2)  编辑  收藏

评论

# re: flex摄像头拍照 java上传到数据库 . 2012-08-31 13:48 霞之大梦
你好,flex的需要引什么包吗  回复  更多评论
  

# re: flex摄像头拍照 java上传到数据库 . 2014-04-13 11:04 123yedddd
//连接WebService失败事件
private function __onSavePictureFault(event:FaultEvent):void
{
//Alert.show(event.fault.toString(),"提示",Alert.OK);
Alert.show("连接WebService失败。","提示",Alert.OK);
}
我把提示改连接WebService失败123。 怎么没反映啊。。还是连接WebService失败。  回复  更多评论
  


只有注册用户登录后才能发表评论。

网站导航: