前几天博主写了一篇在线生成二维码的文章,因为是在文件上传案例中的基础上写的Demo,所以使用的是Spring+springMVC框架写的。有小朋友说搭建框架太麻烦,所以博主特意把代码摘出来,使用最原始的servlet+ajax实现二维码在线生成不使用任何框架。

很久没写原生的servlet代码感觉有点难受...废话不多说,直接上代码。提醒一下博主用的是idea开发工具

因为是调用第三方在线生成二维码首先我们找到一个在线生成二维码的api接口,因为这样的api接口有许多,这里我提供一个参考链接接口:

http://www.liantu.com/pingtai/

第一步:创建一个web工程项目,项目名字自取也可以和我一样,我的是createQrCode倒入的jar包也是结构图中所示。

第二步:这里我直接将index.jsp页面改了,项目启动直接跳转到index页面,也就是二维码生成页面。

<%--Created by IntelliJ IDEA.User: YYBJDate: 2018/7/26Time: 17:22To change this template use File | Settings | File Templates.
--%><%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head><script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script><title>Title</title><script type="text/javascript">function getQrCode() {var shortUrl = document.getElementById("shortUrl").value;console.log(shortUrl)$.ajax({url:"/DemoQrCode",type:"GET",cache:false,data:{shortUrl:shortUrl},success:function (data) {alert(data);var ev = eval('(' + data + ')');document.getElementById("imgSrc").src=ev.imgSrc;}})}</script>
</head>
<body>
<h2>生成二维码</h2>
<form ><table><tr><td>请输入链接:</td><td><input type="text" name="shortUrl" id="shortUrl" value="${QrCode.shortUrl}"></td></tr><tr><img id="imgSrc"  src="${QrCode.imgSrc}" /></tr><tr><td><input type="button" value="生成二维码" onclick="getQrCode()"></td></tr></table>
</form>
</body>
</html>

注意:ajax的写法:后台返回的是json数据我们需要将json数据赋值到<img>标签中,这里怎么取值怎么赋值的建议你了解一下。这里博主自己写的时候也有点懵。因为没使用框架,数据的取出还是有点麻烦。

第三步:修改web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"version="3.1"><servlet><servlet-name>DemoQrCode</servlet-name><servlet-class>cn.yybj.action.DemoQrCode</servlet-class></servlet><servlet-mapping><servlet-name>DemoQrCode</servlet-name><url-pattern>/DemoQrCode</url-pattern></servlet-mapping>
</web-app>

第四步:创建实体类和controller类

实体类:

package cn.yybj.action;/*** Created by YYBJ on 2018/8/1.* ZCL*/
public class QrCode {private String shorUrl;private String imgSrc;public String getShorUrl() {return shorUrl;}public void setShorUrl(String shorUrl) {this.shorUrl = shorUrl;}public String getImgSrc() {return imgSrc;}public void setImgSrc(String imgSrc) {this.imgSrc = imgSrc;}@Overridepublic String toString() {return "QrCode{" +"shorUrl='" + shorUrl + '\'' +", imgSrc='" + imgSrc + '\'' +'}';}
}

为了方便实体类和controller类就放到一起了。

package cn.yybj.action;import com.google.gson.Gson;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;/*** Created by YYBJ on 2018/8/1.* ZCL*/
public class DemoQrCode extends HttpServlet {@Overridepublic void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {req.setCharacterEncoding("UTF-8");System.out.println("================");//获取请求参数String shortUrl = req.getParameter("shortUrl");System.out.println(shortUrl);String imgSrc = req.getParameter("imgSrc");//这里就是第三方api的调用和拼接了imgSrc="http://qr.liantu.com/api.php?text="+shortUrl;QrCode qrCode = new QrCode();//qrCode.setShorUrl(shortUrl);qrCode.setImgSrc(imgSrc);System.out.println(imgSrc);Gson gson = new Gson();String json = gson.toJson(qrCode);resp.getWriter().print(json);}@Overridepublic void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {super.doPost(req, resp);}
}

第五步:配置Tomcat,这个没什么 没什么可说的,主要是将项目放入Tomcat启动就行了。

第六步:启动测试:直接跳转到index页面也就是如下页面。若跳转不到看看Tomcat路径和action的请求及servlet路径是否正确

到此测试完成希望能帮助到你;

版权声明:本文为博主原创文章,转载请说明转载来源。https://blog.csdn.net/weixin_41092717/article/details/81333211

servlet+ajax在线生成二维码相关推荐

  1. 调用第三方api在线生成二维码

    我写过一篇文章是java代码后端自己传入链接由本地代码生成二维码图片并保存在本地,今天我们实现调用第三方在线生成二维码 首先我们找到一个在线生成二维码的api接口,因为这样的api接口有许多,这里我提 ...

  2. Asp.Net Core在线生成二维码

    前言: 原先用zxing Code写过基于Winfrom的批量生成二维码工具,以及单个生成二维码工具:批量生成二维码Gihub源代码 今天尝试用QRCoder 加 Asp.Net Core 写了一个在 ...

  3. 免费在线生成二维码网站,支持二维码自定义

    ToolBaox平台 工具盒子,一个专注于为用户提供 免费.工具.在线 服务的网站. ToolBaox平台:二维码生成器,免费在线生成二维码.可以支持二维码颜色.码眼.内容.logo自定义功能.支持批 ...

  4. 在线生成二维码(微信)很好用

    在线生成二维码(微信)很好用 http://cli.im/weixin posted @ 2016-12-06 15:34 Newman·Li 阅读( ...) 评论( ...) 编辑 收藏

  5. 图片、文本、文件如何在线生成二维码?

    二维码是现在生活中随处可见的一种展现方式,不管是支付,交友,获取信息,传递文件等等,都会采用这种方式.那么针对于不同的用途,如何制作相关类型的图片二维码呢?那么一款简单的二维码生成器https://w ...

  6. jquery二维码生成插件jquery.qrcode.js在线生成二维码

    一代巨匠金庸先生驾鹤西去,谢谢您的作品,陪我度过儿时的时光 –2018.10.31 一.场景再现 由于业务需求,经常会将访问链接分享给别人,方便其他客户访问我们的业务.在本周的需求中,我们需要根据地址 ...

  7. 视频如何在线生成二维码?视频转二维码的2种方法

    现在很多小伙伴都喜欢将视频转二维码,通过这种方式来分享传递内容,那么如何将视频生成二维码更加的简单快捷呢?大家可以用一下小编分享的这款在线二维码生成工具来制作二维码,通过浏览器在线生成二维码,更加的简 ...

  8. 怎么将图文、视频生成一个二维码?多内容在线生成二维码的方法

    现在很多幼儿园在招生.宣传时经常会使用二维码的方式来让家长快速了解幼儿园的信息,那么大多采用的方式也是通过文字.图片.视频等类型的内容来做宣传推广,那么如何将这些类型的内容同时放到一个二维码中呢?怎么 ...

  9. 在线生成二维码API接口

    转自:在线生成二维码API接口 1.http://s.jiathis.com/qrcode.php?url=http://www.yhrc8.com 2.http://qr.liantu.com/ap ...

最新文章

  1. python 提交表单登录不成功_Python http requests模拟登录与提交表单的实现问题
  2. 华东交通大学计算机调剂,华东交通大学2018考研调剂信息
  3. docker——kafka-manager安装
  4. arcgis导入excel数据_导入Excel数据到ArcGIS属性表的两种实用方法
  5. Lambda01 编程范式、lambda表达式与匿名内部类、函数式接口、lambda表达式的写法...
  6. python程序分析,用Python编写分析Python程序性能的工具的教程
  7. 正则表达式查找字符串_如何简单理解正则表达式?只需1分钟就可以看到她优美的舞姿...
  8. c语言各种头文件函数解释,c语言头文件及其函数
  9. 使用js实现简单的动画效果
  10. postman|接口测试 | pre-request script 场景应用
  11. 在大学城开一间宾馆能挣多少钱?
  12. python生成二维码_使用python生成二维码
  13. Linux5.9下DHCP服务器的配搭建
  14. Linux远程联机服务器SSH VNC XDMCP RDP
  15. NFA到DFA的转换及DFA的简化
  16. ​嘉楠往事:浮沉八载,如今剑指美股
  17. 什么是域什么是工作组
  18. SSM项目————整合微信支付
  19. React实现动画效果
  20. 全球云服务商对比:阿里云,太贵了

热门文章

  1. 安卓开发下载图片保存到手机后图片没在相册看到的问题
  2. MetroGAN: Simulating Urban Morphology with Generative Adversarial Network
  3. 制作html表白页面,HTML+CSS入门 表白页面实例讲解
  4. 使用开源软件和Tectonic,摆脱云服务供应商的锁定
  5. WorkNC批处理功能使人机结合——批量计算工作目录应用
  6. 智慧职教云课堂计算机答案,2020智慧职教云课堂计算机数学答案最新最全单元测试答案...
  7. 软件测试周刊(第34期):一岁有一岁的味道,一站有一站的风景
  8. 从零开发区块链应用(十五)--以太坊交易匹配查询
  9. HDFS数据的读写过程
  10. 创建Vue项目时遇到的问题与错误