springBoot前后分离项目,通过ModelAndView返回给app或前台静态页面

1.先做静态页模板aaa.html,放到springboot项目的根目录下,如下如中,新建一个templates的文件夹,将静态页放到这里面就可以了

springBoot前后分离项目,通过ModelAndView返回给app或前台静态页面_第1张图片

静态页代码为




    
    
    
    
    
    
    标题
    



未知
未知

未知

2.然后主要是 controller层,业务逻辑根据自己的需求来

@RequestMapping("/html")
@Controller
public class AppCommonHtmlController {
    
    @RequestMapping(value = "/ceshi", method = RequestMethod.GET)
    public ModelAndView getCeishi(“根据自己业务传入需要的参数”) {
        ModelAndView modelAndView=new ModelAndView();
        //根据自己的业务,和静态页中的参数对应上就行,也可以放入实体类,和静态页面对应就行了
        modelAndView.addObject("title",“标题”);
        modelAndView.addObject("addDate",“添加时间”);
        modelAndView.addObject("content",“内容”);
        //存入静态页的名称,就可以把处理好的静态页返回给app或前台
        modelAndView.setViewName("aaa");
        return modelAndView;
    }
}

然后浏览器输入:http://localhost:8888/项目名/html/ceshi

 该方法多适用于app端,需要根据不同的情况得到不一样内容的静态页展示到手机上,就可以通过这种方法,做一个静态页的模板,通过el表达式给模板不同的内容,然后app端可以通过访问的ip直接获取到静态页

 

下面的方法也可以,效果同上面一样 

静态页代码




    
    
    
    
    
    
    静态页
    



未知
未知

未知

controller代码


    @RequestMapping(value = "/ceshi", method = RequestMethod.GET)
    public String getCeishi(“业务逻辑需要的入参”, Model model) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        JSONObject jsonObject = JSONObject.fromObject(“需要传到静态页的动态数据”);
        jsonObject.remove("publishDate");//时间,具体作用不清楚,个人猜测是原本数据格式不支持,需要转换一下,所以要先删除后重新赋值
        jsonObject.put("publishDate", sdf.format(notice.getPublishDate()));//时间重新赋值
        model.addAttribute("bbb", jsonObject);//将转换好的数据存入model中
        return "aaa"; //对应好静态页的名称return出去就可以了
    }

 

 

你可能感兴趣的:(java,参考类)