日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

SpringMVC生成的驗證碼圖片不顯示問題及解決方法

瀏覽:200日期:2023-09-13 16:28:02

近期用SSM框架寫一個項目,登錄模塊需要生成驗證碼圖片,我把相關的代碼寫好了之后傳到 jsp ,但是圖片不顯示,查看控制臺顯示404,反復查詢了一下代碼并沒有發現任何問題,代碼如下:

@Controllerpublic class ValidateCodeController { private static final long serialVersionUID = 1L; private static int WIDTH = 70;// 驗證碼圖片的寬度 private static int HEIGHT = 35; // 驗證碼圖片的高度 @RequestMapping('/validateCode') public void validateCode(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); response.setContentType('image/jpeg'); ServletOutputStream sos = response.getOutputStream(); // 設置瀏覽器不要緩存該圖片 response.setHeader('Pragma', 'No-cache'); response.setHeader('Cache-Control', 'no-cache'); response.setDateHeader('Expires', 0); // 創建圖片緩存區 BufferedImage image = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB); Graphics g = image.getGraphics(); // 獲取畫筆 char [] rands = generateCheckCode(); // 產生隨機的驗證碼 // 產生圖像 drawBackground(g); drawRands(g, rands); // 結束繪畫過程,完成圖像 g.dispose(); // 將圖像輸出到客戶端 ByteArrayOutputStream bos = new ByteArrayOutputStream(); ImageIO.write(image, 'JPEG', bos); byte [] buf = bos.toByteArray(); response.setContentLength(buf.length); sos.write(buf); bos.close(); sos.close(); // 將當前驗證碼存入 Session 中 session.setAttribute('valicode', new String(rands)); //System.out.println('1:'+request.getSession().getId()); System.out.println(session.getAttribute('valicode')); } private void drawRands(Graphics g, char[] rands) { g.setColor(new Color(41, 41, 41)); g.setFont(new Font(null, Font.ITALIC|Font.BOLD, 18)); g.drawString('' + rands[0], 2, 17); g.drawString(' ' + rands[1], 16, 20); g.drawString(' ' + rands[2], 31, 13); g.drawString(' ' + rands[3], 46, 18); //System.out.println(rands); } private void drawBackground(Graphics g) { g.setColor(new Color(255, 255, 255)); g.fillRect(0, 0, WIDTH, HEIGHT); // 隨機產生 120 個干擾點 for(int i = 0; i < 120; i++) { int x = (int) (Math.random() * WIDTH); int y = (int) (Math.random() * HEIGHT); int red = (int) (Math.random() * 255); int green = (int) (Math.random() * 255); int blue = (int) (Math.random() * 255); g.setColor(new Color(red, green, blue)); g.drawOval(x, y, 1, 0); } } // 生成四個字符的驗證碼 private char[] generateCheckCode() { String chars = '0123456789abcdefghijklmnopqrstuvwxyz'; char [] rands = new char[4]; for(int i = 0; i <4; i++) { int rand = (int) (Math.random() * 36); rands[i] = chars.charAt(rand); } return rands; }}

jsp 獲取驗證碼圖片的關鍵代碼如下:

<img src='http://www.b3g6.com/bcjs/validateCode' />

后來就給validateCode方法加了一個注解 @ResponseBody 圖片就顯示出來了。然后看了 這篇博客,才得知:

1、responseBody一般是作用在方法上的,加上該注解表示該方法的返回結果直接寫到Http response Body中,常用在ajax異步請求中,

2、在RequestMapping中 return返回值默認解析為跳轉路徑,如果你此時想讓Controller返回一個字符串或者對象到前臺 就會報404 not response的錯誤。

3、當加上@ResponseBody注解后不會解析成跳轉地址 會解析成相應的json格式的對象 集合 字符串或者xml等直接返回給前臺 可以通過 ajax 的“success”:fucntion(data){} data直接獲取到。

總結

到此這篇關于SpringMVC生成的驗證碼圖片不顯示的文章就介紹到這了,更多相關spring mvc 驗證碼圖片不顯示內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲欧美日本国产专区一区| 欧美日韩在线网站| 国产日韩中文在线中文字幕| 欧美日韩在线网站| 韩国一区二区三区视频| 日产欧产美韩系列久久99| 亚洲电影有码| 国产精品第一国产精品| 亚洲欧洲免费| 日韩精品久久久久久久软件91| 99国产精品久久久久久久 | 性色一区二区| 伊人精品视频| 好吊日精品视频| 激情婷婷亚洲| 激情欧美国产欧美| 国产九九精品| 日韩欧美美女在线观看| 综合日韩在线| 美女国产一区| 亚洲一区国产| 日韩专区欧美专区| 午夜在线播放视频欧美| 久久精品二区亚洲w码| 国产精品美女午夜爽爽| 国产不卡精品在线| 精品72久久久久中文字幕| 精品一区二区三区中文字幕视频| 日韩中文字幕一区二区高清99| 亚洲精品三级| 日韩精品三区四区| 日韩在线观看一区二区| 久久午夜精品| 亚洲精品系列| 美国欧美日韩国产在线播放| 免费在线日韩av| 韩国一区二区三区视频| 国产精品99一区二区三| av高清不卡| 久久九九99| 国产婷婷精品| 97久久超碰| 国产精品2区| 国内精品亚洲| 亚洲一级影院| 日本视频一区二区| 国产九九精品| 国产精品原创| 日韩午夜高潮| 亚洲精品系列| 久久亚洲精品中文字幕| 精品久久电影| 久久久久国产| 亚洲激情av| 青草国产精品| 精品视频免费| 久久久久久久久久久妇女| 中文字幕亚洲影视| 欧美一区=区三区| 国产在线视频欧美一区| 88久久精品| 国产精品久久| 午夜精品成人av| 一区二区三区四区在线观看国产日韩| 日韩激情中文字幕| 日韩a一区二区| 国内精品福利| 91嫩草精品| 蜜桃tv一区二区三区| 婷婷综合福利| 久久一区精品| 在线成人动漫av| 婷婷精品在线| 国产精品大片| 欧美日韩国产在线观看网站| 日韩精品福利一区二区三区| 国产精品a级| 999久久久亚洲| 亚洲精品大片| 亚洲欧美网站在线观看| 精品伊人久久久| 欧美日韩四区| 欧美精品中文| 国产精品99免费看| 日本欧美韩国一区三区| 三上悠亚国产精品一区二区三区 | 日韩国产欧美一区二区| 一区二区国产在线观看| 欧美激情日韩| 国产精品91一区二区三区| 国产精品入口久久| 精品一区二区三区的国产在线观看| 久久国产中文字幕| 欧美亚洲二区| 亚洲精品一区二区妖精| 美女在线视频一区| 一区二区亚洲精品| 麻豆精品久久久| 老鸭窝毛片一区二区三区| 国产成人精品福利| 亚洲aⅴ网站| 久久中文亚洲字幕| 18国产精品| 999久久久亚洲| 麻豆久久久久久久| 在线看片日韩| 久久国产主播| 国产欧美日韩精品一区二区三区| 亚洲午夜在线| 精品午夜视频| 日本va欧美va瓶| 欧美精品一区二区久久| 日韩不卡一区二区三区 | 国产高清亚洲| 亚洲v天堂v手机在线| 久久男女视频| 欧美aaaaaa午夜精品| 日韩在线不卡| 国产伦乱精品| 四虎精品一区二区免费| 亚州精品视频| 91午夜精品| 91成人福利| 久久精品99国产精品| 国产乱码精品一区二区三区四区 | 精品中文字幕一区二区三区四区| 国产亚洲高清一区| 日韩av在线免费观看不卡| 日韩手机在线| 欧美日韩在线精品一区二区三区激情综合| 日韩国产精品久久久久久亚洲| 日韩专区视频网站| 日韩av影院| 欧美极品一区二区三区| 精品三级av| 蜜桃成人精品| 99热精品久久| 一本一道久久a久久精品蜜桃| 影音先锋国产精品| 亚洲另类av| 国产欧美日韩在线一区二区| 国产精品流白浆在线观看| 久久av导航| 日韩电影在线视频| 欧美女激情福利| 日韩一区精品| 久久一区亚洲| 久久人人88| 亚洲性视频在线| 国产精品久久亚洲不卡| 福利一区二区| 亚洲网站视频| 亚洲精品麻豆| 久久精品网址| 九九在线精品| 亚洲精品乱码| 国产不卡av一区二区| 视频福利一区| 蜜臀久久99精品久久久久宅男| 视频一区中文字幕精品| 国产精品自在| av免费不卡国产观看| 午夜精品免费| 88久久精品| 午夜精品久久久久久久久久蜜桃| 亚洲一卡久久| 国产精品videossex| 日韩av福利| 欧美专区一区二区三区| 久久国产精品免费精品3p| 福利一区二区免费视频| 影音国产精品| 91精品国产自产精品男人的天堂| 高清一区二区三区av| 亚洲少妇在线| 久久福利在线| 一区在线观看| 麻豆传媒一区二区三区| 久久国产主播| 欧美日韩黄网站| 久久高清免费| 国产探花一区二区| 国产精品91一区二区三区| 欧美一区久久| 久久久久国产一区二区| 日本中文字幕一区二区视频| a日韩av网址| 久久亚洲国产精品一区二区| 精品国产一级| 中文字幕日本一区二区| 成人国产精选| 亚洲精品麻豆| 三级在线看中文字幕完整版| 中文字幕一区二区三区四区久久 | 国产精品一区二区中文字幕| 99成人超碰| 久久在线91| 蜜臀久久久久久久| 日韩一区三区| 国产日韩一区二区三区在线播放|