ssm框架细枝末节之导出
来源:互联网 发布:excel数据服务器 编辑:程序博客网 时间:2024/06/02 01:49
页面代码片:
<script type="text/javascript" src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
//获得多选的ID号
$("#selectAll").click(function(){
$("input[type=checkbox]:gt(0)").attr("checked","checked");
});
//把获得的id号装进数组里并传回后台
$("#deleteAll").click(function(){
//定义数组
var array=new Array();
//对已选的多个id号进行遍历并装进数组
$("input[type=checkbox]:gt(0):checked").each(function(){
array.push($(this).parent().next().text());
});
//在浏览器的右击审查元素的控制台输出(验证一下)
console.log(array[0]);
//通过window.location.href的方法确认数组的提交路径
location.href="${pageContext.request.contextPath }/user/educeUser?ids="+array;
});
});
</script>
</head>
<body>
<tr><td>
<!-- 模糊查询 -->
<form action="${pageContext.request.contextPath }/user/fuzzyQueryUser" method="post">
请输入查询:<input type="text" name="username"/>
<input type="submit" value="模糊查询"/>
</form>
</td></tr>
<!-- 查询全部用户的信息 -->
<table border="1">
<tr>
<td><input type="checkbox" id="selectAll"/></td>
<td>用户编号</td>
<td>用户名</td>
<td>用户年龄</td>
<td>用户性别</td>
<td>用户密码</td>
<td>用户修改</td>
</tr>
<c:forEach items="${list }" var="us">
<tr>
<td><input type="checkbox" /></td>
<td>${us.id }</td>
<td>${us.username }</td>
<td>${us.age }</td>
<td>${us.sex }</td>
<td>${us.password }</td>
<!-- 通过链接传值id进行修改 -->
<td><a
href="${pageContext.request.contextPath }/user/updateUserid?id=${us.id }">修改</a></td>
springmvc.xml文件:</tr>
<script type="text/javascript">
$(function(){
//获得多选的ID号
$("#selectAll").click(function(){
$("input[type=checkbox]:gt(0)").attr("checked","checked");
});
//把获得的id号装进数组里并传回后台
$("#deleteAll").click(function(){
//定义数组
var array=new Array();
//对已选的多个id号进行遍历并装进数组
$("input[type=checkbox]:gt(0):checked").each(function(){
array.push($(this).parent().next().text());
});
//在浏览器的右击审查元素的控制台输出(验证一下)
console.log(array[0]);
//通过window.location.href的方法确认数组的提交路径
location.href="${pageContext.request.contextPath }/user/educeUser?ids="+array;
});
});
</script>
</head>
<body>
<tr><td>
<!-- 模糊查询 -->
<form action="${pageContext.request.contextPath }/user/fuzzyQueryUser" method="post">
请输入查询:<input type="text" name="username"/>
<input type="submit" value="模糊查询"/>
</form>
</td></tr>
<!-- 查询全部用户的信息 -->
<table border="1">
<tr>
<td><input type="checkbox" id="selectAll"/></td>
<td>用户编号</td>
<td>用户名</td>
<td>用户年龄</td>
<td>用户性别</td>
<td>用户密码</td>
<td>用户修改</td>
</tr>
<c:forEach items="${list }" var="us">
<tr>
<td><input type="checkbox" /></td>
<td>${us.id }</td>
<td>${us.username }</td>
<td>${us.age }</td>
<td>${us.sex }</td>
<td>${us.password }</td>
<!-- 通过链接传值id进行修改 -->
<td><a
href="${pageContext.request.contextPath }/user/updateUserid?id=${us.id }">修改</a></td>
springmvc.xml文件:</tr>
</c:forEach>
</table>
<input type="button" value="批量导出" id="deleteAll"/>
</body>
</table>
<input type="button" value="批量导出" id="deleteAll"/>
</body>
controller控制类:
//导出
@SuppressWarnings("resource")
@ResponseBody
@RequestMapping("educeUser")
public String educeUser(String ids) throws Exception {
String[] ss = ids.split(",");
BufferedWriter bufwriter=null;
//将String类型的数组转为int类型
int[] idss=new int[ss.length];
for (int i = 0; i < ss.length; i++) {
idss[i] =Integer.parseInt(ss[i]);
}
//创建File
File file = new File("D://empll/empll.txt");
//判断文件是否存在
if(!file.exists()){
file.mkdirs();
}
List<User> educeUser = service.educeUser(idss);
//创建一个文件输出流,向指定的文件输出数据
FileOutputStream stream = new FileOutputStream(file);
//将字节流装换成字符流
OutputStreamWriter writer = new OutputStreamWriter(stream);
//缓冲字符流
bufwriter = new BufferedWriter(writer);
for (User user : educeUser) {
//写入
bufwriter.write(user.getAge()+"#"+user.getId()+"#"+user.getUsername());
//换行
bufwriter.newLine();
}
bufwriter.flush();
bufwriter.close();
stream.close();
return "redirect:/user/findAll";
}
@SuppressWarnings("resource")
@ResponseBody
@RequestMapping("educeUser")
public String educeUser(String ids) throws Exception {
String[] ss = ids.split(",");
BufferedWriter bufwriter=null;
//将String类型的数组转为int类型
int[] idss=new int[ss.length];
for (int i = 0; i < ss.length; i++) {
idss[i] =Integer.parseInt(ss[i]);
}
//创建File
File file = new File("D://empll/empll.txt");
//判断文件是否存在
if(!file.exists()){
file.mkdirs();
}
List<User> educeUser = service.educeUser(idss);
//创建一个文件输出流,向指定的文件输出数据
FileOutputStream stream = new FileOutputStream(file);
//将字节流装换成字符流
OutputStreamWriter writer = new OutputStreamWriter(stream);
//缓冲字符流
bufwriter = new BufferedWriter(writer);
for (User user : educeUser) {
//写入
bufwriter.write(user.getAge()+"#"+user.getId()+"#"+user.getUsername());
//换行
bufwriter.newLine();
}
bufwriter.flush();
bufwriter.close();
stream.close();
return "redirect:/user/findAll";
}
springmvc.xml配置文件:
<mvc:annotation-driven>
<mvc:message-converters register-defaults="false">
<!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
<bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<!-- 这里顺序不能反,一定先写text/html,不然ie下出现下载提示 -->
<!-- <value>text/html;charset=UTF-8</value> -->
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
<mvc:message-converters register-defaults="false">
<!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
<bean id="fastJsonHttpMessageConverter" class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<!-- 这里顺序不能反,一定先写text/html,不然ie下出现下载提示 -->
<!-- <value>text/html;charset=UTF-8</value> -->
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
阅读全文
1 0
- ssm框架细枝末节之导出
- ssm框架的细枝末节之批量删除
- ssm框架之导出
- SSM框架导入导出
- SSM框架导出Excel表格
- SSM之框架整合
- 细枝末节
- Android之Activity的细枝末节
- Android之Service的细枝末节
- Tensorflow与Python之细枝末节
- SSM框架使用POI导出EXCEL
- 整合ssm框架之配置文件
- SSM框架 之 Spring-IOC
- ssm框架之登录验证
- ssm框架之拦截器
- SSM框架之Log4j配置
- SSM框架之Log4j配置
- SSM框架之JDBC配置
- C语言复习资料整理
- python之基础知识
- 鲁迅“孺子牛”的原意是给谁做…
- Windows7启动时网络状态图标一直转圈的问题解决
- 面试技巧
- ssm框架细枝末节之导出
- modelsim-win64-10.4-se 下载、安装、破解全攻略
- 【欧拉筛/线性筛】BZOJ2813 奇妙的Fibonacci
- 自己所学专业介绍
- RAW格式转化为BMP
- WMI 获得已安装应用程序列表 Win32_Product WMI 类代表通过 Windows Installer 安装的所有应用程序。
- 指针的好处
- 十大必须禁止的服务!
- Fragment解决重复加载的问题