网站的分辨率是多少像素,免费发布招工,上传wordpress数据包,做化学式的网站备份笔记。所有代码都是2019年测试通过的#xff0c;如有问题请自行搜索解决#xff01;
上一篇#xff1a;springboot-基础-eclipse配置helloword示例 目录 添加model和controller的例子注解开发使用RestController 大坑 Model ModelMap和ModelAndView的区别 添加model和c…备份笔记。所有代码都是2019年测试通过的如有问题请自行搜索解决
上一篇springboot-基础-eclipse配置helloword示例 目录 添加model和controller的例子注解开发使用RestController 大坑 Model ModelMap和ModelAndView的区别 添加model和controller的例子
文件结构
User.java
package com.example.demo.model;public class User {private String name;private String sex;private String hobby;public User() {super();}public User(String name, String sex, String hobby) {super();this.name name;this.sex sex;this.hobby hobby;}public String getName() {return name;}public void setName(String name) {this.name name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex sex;}public String getHobby() {return hobby;}public void setHobby(String hobby) {this.hobby hobby;}}UserController.java package com.example.demo.controller;import com.example.demo.model.User;
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.ui.Model;Controller
public class UserController {RequestMapping(value/user)public String index(Model model) {ListUser users new ArrayListUser();users.add(new User(name1, male, 略略略));users.add(new User(name2, female, singing));users.add(new User(小猪佩奇, 雄性, 社会人));model.addAttribute(users, users);return user;}}user.html !DOCTYPE html
html xmlns:thhttp://www.thymeleaf.org
headmeta charsetUTF-8 /titletest/title
/head
bodytabletrtdName/tdtdSex/tdtdHobby/tdtd性别/td/trtr th:eachuser:${users} th:object${user}td th:text${user.name}/tdtd th:text${user.sex}/tdtd th:text${user.hobby}/td!-- 这里类似模糊查找 --td th:text*{name}/td/tr/table
/body
/htmlapplication properties添加一点配置
#国际化配置
spring.messages.basenamei18n/messages
spring.messages.encodingUTF-8结果
注解开发
restful风格是一种开发想法现行技术并没有完全实现。注解就是下表中的一些标记这些标记带有特殊功能。 context:component-scan/标签默认情况下自动扫描指定路径下的包含所有子包将带有Component、Repository、Service、Controller标签的类自动注册到spring容器。对标记了 Spring’s Required、Autowired、JSR250’s PostConstruct、PreDestroy、Resource、JAX-WS’s WebServiceRef、EJB3’s EJB、JPA’s PersistenceContext、PersistenceUnit等注解的类进行对应的操作使注解生效包含了annotation-config标签的作用。
使用RestController 大坑
这个注解相当于ResponseBody 和 Controller两个注解的组合不返回视图只返回数据。如果一个类上加了这个注解那么这个类的函数都是返回不了视图的return redirect:/seq_tool/seq_order_details;也会只在页面上显示return的字符串。
解决方法是把类上的注解改为Controller然后给不返回视图只返回数据的函数加上注解ResponseBody如
RequiresPermissions(seq_tool:getcfmd)
PostMapping(value/getcfmd)
ResponseBody
public PageResult getCfmd(String userid) {SeqOrderConditionVO vo new SeqOrderConditionVO();PageInfoSeqOrder pageInfo sysSeqOrderService.listCfmdByUserId(userid, vo);return ResultUtil.tablePage(pageInfo);
}Model ModelMap和ModelAndView的区别 例子
model RequestMapping(value /index1)public String index1(Model model) {model.addAttribute(result, 后台返回index1);return result;}ModelMap
RequestMapping(value /index2)public String index2(ModelMap model) {model.addAttribute(result, 后台返回index2);return result;}ModelAndView
RequestMapping(value /index3)public ModelAndView index3() {ModelAndView mv new ModelAndView(result);// ModelAndView mv new ModelAndView();// mv.setViewName(result);mv.addObject(result, 后台返回index3);return mv;}
RequestMapping(value /index4)public ModelAndView index4() {MapString, String map new HashMapString, String();map.put(result, 后台返回index4);return new ModelAndView(result, map);}