版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013600907/article/details/73804472
首先 jsp页面代码
//js部分
<script type="text/javascript">
function dao() {
var id = "";
var flag = "";
var ids = document.getElementsByName("ids");
for (var i = 0; i < ids.length; i++) {
if (ids[i].checked == true) {
id += "," + ids[i].value;
flag++;
}
}
id = id.substring(1);
if (flag == 0) {
alert("请选择要导出的选项");
return false;
}
location.href = "userAction/daochu.action?id=" + id;
}
</script>
//表部分
<table align="center" border="1">
<tr>
<td>操作</td>
<td>用户ID</td>
<td>员工姓名</td>
<td>所属部门</td>
<td>职位</td>
<td>员工薪资</td>
<td>入职时间</td>
</tr>
<c:forEach items="${userlist}" var="userlist">
<tr>
<td><input type="checkbox" value="${userlist.id}" name="ids"></td>
<td>${userlist.id}</td>
<td>${userlist.empname}</td>
<td>${userlist.department}</td>
<td>${userlist.position}</td>
<td>${userlist.salary}</td>
<td><fmt:formatDate value="${userlist.joinDate}" type="date"
pattern="yyyy-MM-dd" /></td>
</tr>
<tr>
</tr>
</c:forEach>
<input type="button" value="批量导出" onclick="dao()" />
<br/><br/><br/>
<input type="button" value="批量删除" id="delete">
</table>
(action层)
//批量导出
@RequestMapping("/daochu.action")
public String daochu(String id){
System.out.println(id);
String[] s = id.split(",");
for (String string : s) {
List<User> list = userService.selectById(Integer.parseInt(string));
for (User user : list) {
try {
PrintWriter printWriter = new PrintWriter(new FileOutputStream("D://test.txt",true),true);
printWriter.println(user.toString());
printWriter.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
return "success";
}
(service层)
@Override
public List<User> selectById(int id) {
return userMapper.selectById(id);
}
(mapper层)
//批量导出
public List<User> selectById(int id);
(xml部分)
<!-- 批量导出 -->
<select id="selectById" parameterType="java.lang.String" resultType="user">
select * from employee where id = #{id}
</select>
这就是JS的文本批量导出