Gson(解析json)
作用:在servlet层中解析json
1:导入jar包
gson-2.2.4.jar
例如:Gson gson = new Gson();
// JsonArray : []
// JsonObject: {}
return gson.fromJson(responseData, JsonObject.class)
.getAsJsonObject("alibaba_aliqin_fc_sms_num_send_response")
.getAsJsonObject("result")
.get("success")
.getAsBoolean();
Poi(excel导入导出)
作用:实现excel批量导入与导出
POI: Point Of Interest 信息点
-- http://poi.apache.org
下载 poi-bin-3.14.zip
POI框架:
工作簿 --> HSSFWorkbook
工作单 --> HSSFSheet
行 --> HSSFRow
列 --> HSSFCell
拷贝jar: poi-3.14-20160307.jar
主要方法:
一、写Excel:
第一步:创建工作簿。
HSSFWorkbook workbook = new HSSFWorkbook();
第二步:通过工作簿创建工作单
HSSFSheet sheet = workbook.createSheet(java.lang.String sheetname)
第三步:通过工作单循环创建行.
for (int i = 0; i < 10; i++){
HSSFRow row = sheet.createRow(i);
第四步:通过行循环创建列
for (int j = 0; j < 10; j++){
HSSFCell cell = row.createCell(j);
cell.setCellValue(java.lang.String value)
}
}
第五步:把工作簿写入Excel文件.
workbook.write(java.io.OutputStream stream);
第六步:关闭工作簿
workbook.close();
二、读Excel:
第一步:通过指定的Excel文件创建工作簿。
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream("poi.xls"));
第二步:通过工作簿获取工作单
HSSFSheet sheet = workbook.getSheetAt("工作单的索引号");
第三步:通过工作单循环获取行.
Iterator<Row> rows = sheet.rowIterator();
第四步:通过行循环获取列.
Iterator<Cell> cells = row.cellIterator();
获取列中的内容:
cell.getXxxCellValue()
第五步:关闭工作簿
workbook.close();
短信(sms)
集成(阿里大鱼)
1:短信接口
-- 阿里大于.
http://www.alidayu.com/
用支付宝账号登录.
a. 应用管理.
-- 应用列表 (创建新的应用). APP证书
AppKey : 23416775
App Secret: d1f5fe5d17e72164e49e541bb7bc7f70
-- SDK下载(java).
sdk-java-2016-06-07.zip
taobao-sdk-java-auto_1455552377940-20160607.jar
b. 配置管理(配置短信模版).
-- 验证码短信模版 (验证码)
配置短信签名:
--- 添加新的签名.
配置短信模版:
-- 添加新的短信模版.
模板ID: SMS_11480310
模板内容: 验证码${number},您正进行身份验证,打死不告诉别人!
-- 普通的短信模版(找回密码)
c. 开发短信发送工具类.
http://api.alidayu.com/
拷贝: taobao-sdk-java-auto_1455552377940-20160607.jar
2. gson(google) : 操作json的框架.
-- gson-2.2.4.jar
Zxing(生成二维码)
-- zxing框架(google).
生成二维码就会得到一个请求URL.
-- 拷贝jar:
zxing-core-3.1.0.jar
zxing-javase-3.1.0.jar
a. MatrixToImageWriter (写二维码的类).
b. BitMatrix(二维码字节转换类)
/** 定义Map集合封装二维码需要全局配置信息 */
Map<EncodeHintType, Object> hints = new HashMap<>();
/** 设置二维码图片中内容编码 */
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
/**
* 创建二维码字节转换对象
* 第一个参数:二维码图片中的内容
* 第二个参数:二维码的格式器
* 第三个参数:二维码的宽度
* 第四个参数:二维码的高度
* 第五个参数:二维码的全局配置信息
*/
BitMatrix matrix = new MultiFormatWriter().encode(url,
BarcodeFormat.QR_CODE, WIDTH, HEIGHT, hints);
/** 向浏览器输出二维码 */
MatrixToImageWriter.writeToStream(matrix, "png", response.getOutputStream());
pinyin4j(汉字转拼音)
拷贝pinyin4j.jar( pinyin for java)
/**
* 把汉字转化成拼音的方法
* @param str 汉字
* @return 拼音
*/
public static String toPinyin(String str){
String res = "";
for (int i = 0 ; i < str.length(); i++){
char temp = str.charAt(i);
String[] arr = PinyinHelper.toHanyuPinyinStringArray(temp); //jar方法
res += arr[0];
}
return res.replaceAll("\\d+", "");
}
Javamail(发送邮箱)
Spring集成javamail
1:导入jar包:
mail.jar、activation.jar
2:在spring中配置javamail
<!-- 配置发送邮箱信息 -->
<bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"
p:defaultEncoding="utf-8"
p:host="smtp.163.com"
p:username="maofa001"
p:password="dj2663037">
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
</props>
</property>
</bean>
<bean id="emailSender" class="cn.itcast.oa.core.common.email.impl.EmailSenderImpl"
p:from="maofa001@163.com"
p:javaMailSender-ref="javaMailSender"/>
3:写一个工具实现发送
/** 注入Spring的邮件发送接口 */
private JavaMailSender javaMailSender;
private String from;
/**
* 发送邮件方法
* @param to 收件人
* @param subject 邮件的主题
* @param msg 邮件消息体
* @param html 是否为html格式的邮件: true : html格式 false: 文本格式
* @return true : 发送成功 false: 发送失败
*/
/** 创建邮件消息体对象 */
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
/** 创建邮件消息体帮助对象 */
MimeMessageHelper = new MimeMessageHelper(mimeMessage);
/** 设置邮件收件人 */
.setTo(to);
/** 设置邮件发送人 */
.setFrom(from);
/** 设置邮件的主题 */
.setSubject(subject);
/** 设置邮件中的内容 */
.setText(msg, html);
/** 发送邮件 */
javaMailSender.send(mimeMessage);
- com.android.tools.build:gradle:X.XX.XX:gradle.jar 插件无法下载问题
在使用Android Studio 这个IDE时,出现com.android.tools.build:gradle:X.XX.XX:gradle.jar 插件无法下载问题 可能的原因就是网速不好或者依 ...
- maven2应用之jar插件使用介绍
[转载声明] 转载时必须标注:本文来源于铁木箱子的博客http://www.mzone.cc [本文地址] 本文永久地址是:http://www.mzone.cc/article/236.html 有 ...
- 2017.5.1 使用fat jar插件来打包有引用外部jar包的项目
如果在程序开发时用到了第三方提供的API.jar包或者其他附属资源.在导出并生成项目的jar文件时,必须将第三方的文件一并导出,否则无法正确运行. 可以使用fat jar插件,下载地址:http:// ...
- Eclipse下使用Fat Jar插件对源代码进行打包
这两天需要对一个项目进行打包,并在服务器上部署成后台服务模式进行执行,原来使用eclipse进行打包很难用,配置文件容易出错,生成的jar不能正常运行.后来发现Fat Jar Eclipse Plug ...
- maven copy jar 插件
插件比较特殊 eclipse下的 首先声明插件 <pluginManagement> <plugin> <groupId>org.apache.maven.plu ...
- 08-jmeter-plugins-manager.jar插件安装
1.安装第三方插件:jmeter-plugins-manager 2.将此jar包下载好后放到jmeter的安装目录lib/ext文件夹内, 3.然后运行jmeter,选择菜单“选项”可见插件入口 4 ...
- Eclipse 在线安装fat jar插件
在线安装步骤: eclipse菜单栏 help >software updates >Search for new features to install>new update si ...
- jar文件内lib引用的jar插件修改后更新
打包的java服务在第三方jar进行修改后,要更新线上的jar包时,直接替换原有lib引用的jar文件,会造成服务起不来, 可在本地clean install之后,用线上的classes文件夹替换本地 ...
- commons-fileupload-1.2.1.jar 插件上传与下载
1:首先在页面上写个文本域: <%@ page language="java" import="java.util.*" pageEncoding=&qu ...
随机推荐
- 关于Properties的用法的详细解释
如果不熟悉 java.util.Properties类,那么现在告诉您它是用来在一个文件中存储键-值对的,其中键和值是用等号分隔的.(如清单 1 所示).最近更新的java.util.Properti ...
- Linux创建Python虚拟环境
Linux创建Python虚拟环境 安装 pip install virtualenv 基本使用 为一个工程创建一个虚拟环境: $ cd my_project $ virtualenv venv #v ...
- 170515、mybatis批量操作
//Java代码 public void batchAdd(){ SqlSession sqlSession = SqlSessionFactoryUtil.getSqlSession(); Stud ...
- C#实现像Git那样计算Hash值
从Git Tip of the Week: Objects一文中得知,Git是这样计算提交内容的Hash值的: Hash算法用的是SHA1 计算前,会在内容前面添加"blob 内容长度\0& ...
- 106 miles to Chicago---zoj2797(最短路问题,求概率,模板)
题目链接:http://www.icpc.moe/onlinejudge/showProblem.do?problemId=1797 题意是有 n 个点 m 条边,从a到b的不被抓的概率是p,让求从点 ...
- laydate设置起始时间,laydate设置开始时间和结束时间
//设置开始时间 var startDate = laydate.render({ elem: '#start_date',//开始时间选择控件id min:'2018-6-1', type: 'da ...
- Mysql EXPLAIN 相关疑问: Using temporary ; Using filesort
一.什么是Using temporary ; Using filesort 1. using filesort filesort主要用于查询数据结果集的排序操作,首先MySQL会使用sort_buff ...
- github push error ---- recursion detected in die handler
错误提示如下: 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 New Bitmap Image.bmp Coun ...
- HashSet、HashMap、Hashtable、TreeMap循环、区别
HashSet 循环 //可以为null HashSet<Object> hashSet =new HashSet<Object>(); hashSet.add(1); has ...
- php array_map array_filter sort
array_map — Applies the callback to the elements of the given arrays (处理映射) array_filter — Filters e ...