SSH总结(二)
1、文件的操作,读写文件,解决乱码问题
读文件
InputStreamReader isr = new InputStreamReader(new FileInputStream(new File(path)), "UTF-8");
BufferedReader reader = new BufferedReader(isr);
String s;
while ((s = reader.readLine()) != null) {
content += s + "\n";
}
reader.close();
写文件
Writer writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(newFile1.getAbsolutePath().toString()), "UTF-8"));
writer.write(content);
writer.close();
2、struts2常用标签
单选框:<s:radio name="Gender" list="#{'男':'男','女':'女'}" listKey="key" listValue="value" value="'男'" />
时间格式化:<s:date name="publishTime" format="yyyy年MM月dd日 HH:mm:ss" />
下拉框: <s:select list="#request.role" name="role1" value="roleName" key="id" headerKey="0" headerValue="清选择角色"></s:select>
3、ajax上传文件
ajax上传文件主要是使用了ajaxfileupload.js插件,ajax代码如下所示:
HTMl代码:
<input id="fileToUpload" type="file" size="20" name="myFile" class="input">
<button type="button" id="buttonUpload" data-dismiss="modal" class="btn btn-primary">上传</button>
js代码:
$("#buttonUpload").click(function() {
//验证图片格式
var format = $("#fileToUpload").val();
var type = format.substring(format.lastIndexOf(".") + 1, format.length).toLowerCase();
onsole.info(format);
console.info(type);
if (type != "jpg" && type != "jpeg" && type != "bmp" && type != "gif" && type != "png") {
alert("请上传正确的图片格式");
return;
}
$.ajaxFileUpload({
url : 'notice_AddImage.action',//处理图片脚本
ecureuri : false,
fileElementId : 'fileToUpload',//file控件id
dataType : 'text',
success : function(data) {
$("#dd").html(data);
var value = $("#dd pre").html();
if (value == "undefined" || value == null) {
value = data;
}
console.info("dd:" + value);
$("#btn_image").val(value);
console.info("image:" + $("#btn_image").val());
$("#tooltip").html("图片导入成功");
},
error : function(data) {
$("#dd").val(data);
console.info("error");
alert("error");
}
});
});
java代码:
// myFile属性用来封装上传的文件
private File myFile; // myFileContentType属性用来封装上传文件的类型
private String myFileContentType; // myFileFileName属性用来封装上传文件的文件名
private String myFileFileName;
InputStream is;
try {
is = new FileInputStream(myFile);
// 设置上传文件目录
String uploadPath = TemplateUtils.BASEPATH + "\\upload";
// 重命名文件
String fileName = StringUtils.getUUID() + this.getMyFileFileName().substring(myFileFileName.lastIndexOf("."), myFileFileName.length());
// 设置目标文件
File toFile = new File(uploadPath, fileName);
// 创建一个输出流
OutputStream os = new FileOutputStream(toFile);
// 设置缓存
byte[] buffer = new byte[1024];
int length = 0;
// 读取myFile文件输出到toFile文件中
while ((length = is.read(buffer)) > 0) {
os.write(buffer, 0, length);
}
// 关闭输入流
is.close();
// 关闭输出流
os.close();
SSH总结(二)的更多相关文章
- ssh登录二次验证,让服务器更安全。
码云地址 sshdTwoVerification 介绍 ssh登录二次验证 问题:现在很多人的Linux服务器可能会被攻击,只校验一次后台用户名密码登录变得不再保险. 当然大家首先要做的是修改ssh服 ...
- centos6实现基于google authenticator 的ssh登录二次验证
1.手机安装google身份验证器,在浏览器搜索身份验证器安装即可. centos6安装所需要的软件--- google-authenticator 2.查看这个包生成的所有文件和命令 3.输入goo ...
- SSH整合(二)
SSH框架实现登录.新闻增删改查.树形菜单 项目结构 pom.xml 网不好不要一次引入太多,容易下不全 <project xmlns="http://maven.apache.org ...
- 给 SSH 启用二次身份验证
转载自:https://mp.weixin.qq.com/s/ssuhFbfaHxxzGmLg6Y2MjA 目前来说,二次验证(这里就不做过多解释了)是比较常用的安全手段,通过设置二次验证(谷歌或其他 ...
- [svc]ssh+gg二步认证
1,安装依赖 yum install python-pip -y pip install docutils yum install gcc python-devel subversion pam pa ...
- 菜鸟学习SSH(二)——Struts国际化
国际化(internationalization,i18n)和本地化(localization,l10n)指让产品(出版物,软件,硬件等)能够适应非本地环境,特别是其他的语言和文化.程序在不修改内部代 ...
- 菜鸟学SSH(二)——Struts2国际化手动切换版
国际化(internationalization,i18n)和本地化(localization,l10n)指让产品(出版物,软件,硬件等)能够适应非本地环境,特别是其他的语言和文化.程序在不修改内部代 ...
- SSH整合二
结构图 articles模块 实体类Articles.java package com.jt.articles.entity; public class Articles { private Inte ...
- ssh设置
方法一:在/etc/hosts.allow中添加允许ssh登陆的ip或者网段 sshd:192.168.1.2:allowsshd:192.168.1.0/24:allow在/etc/hosts.de ...
- 增强VPS SSH账号安全:改端口,禁用Root,密钥登录,Denyhosts防暴力攻击
VPS SSH账号是我们日常管理VPS的主要登入方式,尤其是Root账号,对Linux系统安全至关重要.以前好多站长喜欢用Putty中文版,这实际是别人修改官方Putty汉化而来,这些软件被植入了后门 ...
随机推荐
- 【C++ OpenGL ES 2.0编程笔记】8: 使用VBO和IBO绘制立方体 【转】
http://blog.csdn.net/kesalin/article/details/8351935 前言 本文介绍了OpenGL ES 2.0 中的顶点缓冲对象(VBO: Vertex Buff ...
- PhantomJS用法示例
收录待用,修改转载已取得腾讯云授权 前言 大家有没有发现之前我们写的爬虫都有一个共性,就是只能爬取单纯的html代码,如果页面是JS渲染的该怎么办呢?如果我们单纯去分析一个个后台的请求,手动去摸索JS ...
- Scala 将BigDecimal转换为Long
待转换.asInstanceOf[Number].longValue (Double转为Long也适用)
- EasyUI-DataGrid动态合并单元格
js /** * EasyUI DataGrid根据字段动态合并单元格 * @param fldList 要合并table的id * @param fldList 要合并的列,用逗号分隔(例如:&qu ...
- 微信小程序 的文字复制功能如何实现?
text设置属性 selectable="true" 就可以长按复制了 文章来源:刘俊涛的博客 地址:http://www.cnblogs.com/lovebing 欢迎关注,有 ...
- JavaScript对象深复制
1.原理 使用JSON,当然需要JSON安全的格式,JSON安全请参考:http://www.cnblogs.com/mengfangui/p/8257269.html 2.示例 <!DOCTY ...
- 提高PAAS安全性的一点尝试
云服务已经成为现代人生活的一部分.手机中的照片会自己主动同步到云中:你的邮件内容保存在云中.办公软件执行在云中:你的健康数据会实时上传到云中.你每天的生活轨迹消耗的卡路里也会上传到云中:云服务也会逐渐 ...
- 【Dos】Dos命令大全
dos命令大全 AT 计划在计算机上运行的命令和程序.ATTRIB 显示或更改文件属性.BREAK 设置或清除扩展式 CTRL+C 检查.CACLS 显示或修改文件的访问控制列表(ACLs).CALL ...
- 简单模拟Spring的注入
主要就是读XML技术和反射技术. 在xml中读出相关配置信息,然后利用反射将其实例化为对象,并调用其构造方法,在实例化的过程中将属性注入实例. 实例化和属性注入这些操作都交给了框架,不再需要自己的去n ...
- Nginx主动连接与被动连接的差别
1.主动连接是指Nginx主动发起的同上游server的连接:被动连接是指Nginx接收到的来自client主动发起的连接; 2.主动连接用ngx_peer_connection_t结构体表示:被动连 ...