SSM做使用异步控制器新增如何访问控制器的方法

说明:&&app后台管理系统
用异步校验
mysql数据库(mysql
ajax shiro)
文件列表:
ssm_app\.classpath
ssm_app\.project
ssm_app\.settings
ssm_app\.settings\.jsdtscope
ssm_app\.settings\org.eclipse.jdt.core.prefs
ssm_app\.settings\org.eclipse.wst.jsdt.ui.superType.container
ssm_app\.settings\org.eclipse.wst.jsdt.ui.superType.name
ssm_app\.springBeans
ssm_app\build
ssm_app\build\classes
ssm_app\build\classes\applicationContext-dao.xml
ssm_app\build\classes\applicationContext-service.xml
ssm_app\build\classes\applicationContext-tx.xml
ssm_app\build\classes\cn
ssm_app\build\classes\cn\app
ssm_app\build\classes\cn\app\dao
ssm_app\build\classes\cn\app\dao\appcategory
ssm_app\build\classes\cn\app\dao\appcategory\AppCategoryDao.class
ssm_app\build\classes\cn\app\dao\appcategory\AppCategoryDao.xml
ssm_app\build\classes\cn\app\dao\appinfo
ssm_app\build\classes\cn\app\dao\appinfo\AppInfoDao.class
ssm_app\build\classes\cn\app\dao\appinfo\AppInfoDao.xml
ssm_app\build\classes\cn\app\dao\datadictionary
ssm_app\build\classes\cn\app\dao\datadictionary\DataDictionaryDao.class
ssm_app\build\classes\cn\app\dao\datadictionary\DataDictionaryDao.xml
ssm_app\build\classes\cn\app\dao\devuser
ssm_app\build\classes\cn\app\dao\devuser\DevUserDao.class
ssm_app\build\classes\cn\app\dao\devuser\DevUserDao.xml
ssm_app\build\classes\cn\app\entity
ssm_app\build\classes\cn\app\entity\AdPromotion.class
ssm_app\build\classes\cn\app\entity\AppCategory.class
ssm_app\build\classes\cn\app\entity\AppInfo.class
ssm_app\build\classes\cn\app\entity\AppVersion.class
ssm_app\build\classes\cn\app\entity\BackendUser.class
ssm_app\build\classes\cn\app\entity\DataDictionary.class
ssm_app\build\classes\cn\app\entity\DevUser.class
ssm_app\build\classes\cn\app\service
ssm_app\build\classes\cn\app\service\AppCategoryService.class
ssm_app\build\classes\cn\app\service\AppInfoService.class
ssm_app\build\classes\cn\app\service\DataDictionaryService.class
ssm_app\build\classes\cn\app\service\DevUserService.class
ssm_app\build\classes\cn\app\service\impl
ssm_app\build\classes\cn\app\service\impl\AppCategoryServiceImpl.class
ssm_app\build\classes\cn\app\service\impl\AppInfoServiceImpl.class
ssm_app\build\classes\cn\app\service\impl\DataDictionaryServiceImpl.class
ssm_app\build\classes\cn\app\service\impl\DevUserServiceImpl.class
ssm_app\build\classes\cn\app\utils
ssm_app\build\classes\cn\app\utils\PageBean.class
ssm_app\build\classes\cn\app\web
ssm_app\build\classes\cn\app\web\controller
ssm_app\build\classes\cn\app\web\controller\DevAppController.class
ssm_app\build\classes\cn\app\web\controller\devUserController.class
ssm_app\build\classes\database.properties
ssm_app\build\classes\log4j.properties
ssm_app\build\classes\mybatis-config.xml
ssm_app\build\classes\springmvc.xml
ssm_app\resource
ssm_app\resource\applicationContext-dao.xml
ssm_app\resource\applicationContext-service.xml
ssm_app\resource\applicationContext-tx.xml
ssm_app\resource\database.properties
ssm_app\resource\log4j.properties
ssm_app\resource\mybatis-config.xml
ssm_app\resource\springmvc.xml
ssm_app\src
ssm_app\src\cn
ssm_app\src\cn\app
ssm_app\src\cn\app\dao
ssm_app\src\cn\app\dao\appcategory
ssm_app\src\cn\app\dao\appcategory\AppCategoryDao.java
ssm_app\src\cn\app\dao\appcategory\AppCategoryDao.xml
ssm_app\src\cn\app\dao\appinfo
ssm_app\src\cn\app\dao\appinfo\AppInfoDao.java
ssm_app\src\cn\app\dao\appinfo\AppInfoDao.xml
ssm_app\src\cn\app\dao\datadictionary
ssm_app\src\cn\app\dao\datadictionary\DataDictionaryDao.java
ssm_app\src\cn\app\dao\datadictionary\DataDictionaryDao.xml
ssm_app\src\cn\app\dao\devuser
ssm_app\src\cn\app\dao\devuser\DevUserDao.java
ssm_app\src\cn\app\dao\devuser\DevUserDao.xml
ssm_app\src\cn\app\entity
ssm_app\src\cn\app\entity\AdPromotion.java
ssm_app\src\cn\app\entity\AppCategory.java
ssm_app\src\cn\app\entity\AppInfo.java
ssm_app\src\cn\app\entity\AppVersion.java
ssm_app\src\cn\app\entity\BackendUser.java
ssm_app\src\cn\app\entity\DataDictionary.java
ssm_app\src\cn\app\entity\DevUser.java
ssm_app\src\cn\app\service
ssm_app\src\cn\app\service\AppCategoryService.java
ssm_app\src\cn\app\service\AppInfoService.java
ssm_app\src\cn\app\service\DataDictionaryService.java
ssm_app\src\cn\app\service\DevUserService.java
ssm_app\src\cn\app\service\impl
ssm_app\src\cn\app\service\impl\AppCategoryServiceImpl.java
ssm_app\src\cn\app\service\impl\AppInfoServiceImpl.java
ssm_app\src\cn\app\service\impl\DataDictionaryServiceImpl.java
ssm_app\src\cn\app\service\impl\DevUserServiceImpl.java
近期下载者:
相关文件:他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)SSM中excel的导出以及poi的使用
时间: 22:48:01
&&&& 阅读:444
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&首先,这是我对自己的需求而使用的逻辑,若有可以完美的地方方便告诉下小白。
&dependency&
&groupId&org.apache.poi&/groupId&
&artifactId&poi&/artifactId&
&version&3.16&/version&
&/dependency&
1、前端页面,伪异步(页面不刷新)
为什么不用ajax呢?
JQuery的ajax函数的返回类型只有xml、text、json、html等类型,没有“流”类型。所以就用js做个form表单请求
<span style="color: # function exportExcel(){
<span style="color: #
var myurl="${context}/assetInLibrary/export";
<span style="color: #
var form=$("&form&");
<span style="color: #
form.attr("style","display:none");
<span style="color: #
form.attr("method","post");
<span style="color: #
form.attr("action",myurl);
<span style="color: #
$("body").append(form);
<span style="color: #
2、在工具包中创建ViewExcel,继承AbstractExcelView
1 public class ViewExcel extends AbstractExcelView {
private String[]
//传入指定的标题头
public ViewExcel(String[] titles) {
this.titles=
<span style="color: #
<span style="color: #
protected void buildExcelDocument(Map&String, Object& model,
<span style="color: #
HSSFWorkbook workbook, HttpServletRequest request,
<span style="color: #
HttpServletResponse response) throws Exception {
<span style="color: #
//获取数据
<span style="color: #
List&Map&String, String&& list = (List&Map&String, String&&) model.get("excelList");
<span style="color: #
//在workbook添加一个sheet
<span style="color: #
HSSFSheet sheet = workbook.createSheet();
<span style="color: #
sheet.setDefaultColumnWidth(15);
<span style="color: #
HSSFCell cell=null;
<span style="color: #
//遍历标题
<span style="color: #
for (int i = 0; i & titles. i++) {
<span style="color: #
//获取位置
<span style="color: #
cell = getCell(sheet, 0, i);
<span style="color: #
setText(cell, titles[i]);
<span style="color: #
<span style="color: #
//数据写出
<span style="color: #
for (int i = 0; i & list.size(); i++) {
<span style="color: #
//获取每一个map
<span style="color: #
Map&String, String& map=list.get(i);
<span style="color: #
//一个map一行数据
<span style="color: #
HSSFRow row = sheet.createRow(i+1);
<span style="color: #
for (int j = 0; j & titles. j++) {
<span style="color: #
//遍历标题,把key与标题匹配
<span style="color: #
String title=titles[j];
<span style="color: #
//判断该内容存在mapzhong
<span style="color: #
if(map.containsKey(title)){
<span style="color: #
row.createCell(j).setCellValue(map.get(title));
<span style="color: #
<span style="color: #
<span style="color: #
<span style="color: #
//设置下载时客户端Excel的名称
<span style="color: #
String filename = new SimpleDateFormat("yyyy-MM-dd").format(new Date())+".xls";
<span style="color: #
response.setContentType("application/vnd.ms-excel");
<span style="color: #
response.setHeader("Content-disposition", "filename=" + filename);
<span style="color: #
OutputStream ouputStream = response.getOutputStream();
<span style="color: #
workbook.write(ouputStream);
<span style="color: #
ouputStream.flush();
<span style="color: #
ouputStream.close();
<span style="color: #
<span style="color: #
<span style="color: # }
在构造函数中传进来需导出的titles,也就是excel中的标题头,这个逻辑会有点麻烦,因为我是创建Map,让dao中查出来的数据根据我的Map(‘title’,‘value‘)进行封装,且title要存在于传进来的titles中,剩下看源码就能明白
3、service中的数据封装
1 public List&Map&String, String&& selectAllAssetInlibraryInfo() {
List&AssetInlibrary& list = assetInlibraryMapper.selectByExample(null);
List&Map&String, String&& mapList=new ArrayList&Map&String,String&&();
for (AssetInlibrary assetInlibrary : list) {
Map&String, String& map=new HashMap&String, String&();
map.put("编号", assetInlibrary.getId()+"");
map.put("资产名称", assetInlibrary.getTitle());
AssetType assetType = assetTypeMapper.selectByPrimaryKey(assetInlibrary.getAssetTypeId());
map.put("资产类型", assetType.getTitle());
<span style="color: #
AssetBrand assetBrand = assetBrandMapper.selectByPrimaryKey(assetInlibrary.getAssetBrandId());
<span style="color: #
map.put("资产品牌", assetBrand.getTitle());
<span style="color: #
AssetStorage assetStorage = assetStorageMapper.selectByPrimaryKey(assetInlibrary.getAssetStorageId());
<span style="color: #
map.put("资产存放地点", assetStorage.getTitle());
<span style="color: #
AssetProvider assetProvider = assetProviderMapper.selectByPrimaryKey(assetInlibrary.getAssetProviderId());
<span style="color: #
map.put("资产供应商", assetProvider.getTitle());
<span style="color: #
mapList.add(map);
<span style="color: #
<span style="color: #
return mapL
<span style="color: #
4、controller中的数据交互
<span style="color: # @RequestMapping("/assetInLibrary/export")
<span style="color: #
public ModelAndView export(ModelMap map) throws Exception{
<span style="color: #
List&Map&String,String&& list = assetInLibraryService.selectAllAssetInlibraryInfo();
<span style="color: #
String[] titles={"编号","资产名称","资产类型","资产品牌","资产存放地点","资产供应商"};
<span style="color: #
ViewExcel excel=new ViewExcel(titles);
<span style="color: #
map.put("excelList", list);
<span style="color: #
return new ModelAndView(excel,map);
<span style="color: #
&版权声明:本文为不会代码的小白原创文章,未经允许不得转载。标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:http://www.cnblogs.com/xswz/p/7257658.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)ssm+ajax异步请求返回list遍历
时间: 21:04:57
&&&& 阅读:22
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&jsp页面
&%@ page language="java" contentType="text/ charset=UTF-8"
pageEncoding="UTF-8"%& &!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&&html&&head&&meta http-equiv="Content-Type" content="text/ charset=UTF-8"&&title&Insert title here&/title&&/head&&script type="text/javascript" src="js/jquery-1.5.js"&&/script&&script type="text/javascript"&
function findStudentInfo() {debugger
type:"get",
url:"${pageContext.request.contextPath}/getemps",
dataType:"json",
success : function (data) {
$("#showMessageDiv").empty();
$("#showMessageDiv").append("&table id=‘table1‘&&/table&");
$("#table1").append("&tr&&td&员工ID&/td&&td&姓名&/td&&td&性别&/td&&td&邮箱地址&/td&&/tr&");
$.each(data,function (i,result) {
var sex="女"
if (result.gender==1){sex="男"}
var item="&tr&&td&"+result.id+"&/td&&td&"+result.lastName+"&/td&&td&"+sex+"&/td&&td&"+result.email+"&/td&";
$("#table1").append(item);
error:function(){
alert("错误");
&body&&div&异步请求响应&/div&&div id="showMessageDiv"&&/div&&div id="data"&&input type="submit" id="getBtn"
title="点击" onclick="findStudentInfo()"/&&/div&&/body&&/html&
@Controllerpublic class EmployeeController {
@Autowired EmployeeService employeeS
@RequestMapping("/getemps") @ResponseBody public
emps() throws JsonGenerationException, JsonMappingException, IOException{ List&Employee& emps = employeeService.getEmps();
ObjectMapper mapper= new ObjectMapper(); String jsonStr = mapper.writeValueAsString(emps ); System.out.println(jsonStr ); return jsonS}
}标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文:https://www.cnblogs.com/zhangzhiqin/p/8592396.html
教程昨日排行
&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!

我要回帖

更多关于 yii 访问控制器方法 的文章

 

随机推荐