我对SpringBoot的理解很浅,只知道他是一个自动提供配置的好框架,对于Mybatis,现在还记得在mapper.xml里面写查询语言,通过resultType传递对象给Controller,有一次面试,他问我:如果通过左连接查询两张表,怎么返回数据对象,回答一下:定义一个ResultMap,type是你的左边查询的那张表名路径,里面加上你要查询的字段名及property,然后跟一个association type是你右边查询的那张表名路径,里面加上你要查询的字段名及property。当然还有查询是一对多,多对多的情况,那么你需要用到collection标签,有需要的可以再去了解一下。下面就开始实现。 新建SpringBoot initializr——–在dependences里面选上spring web、MySQL、Mybatis、JDBC API——–创建 1. entity.Jvm 2. dao.JvmDao 3. service.JvmService 4. controller.JvmController 5. application.yml 对于SpringBoot项目,我想要在前端获取Controller返回的ModelAndView对象中获取jvm数组对象,但是html对于${}取值无法识别,网上说使用thymeleaf引擎可以通过th之类的成功引用,我试了一下,在pom中加入了 第二种pom: 然后再application.yml配置thymeleaf,把html文件放在templates下面,发现跳转页面是404,html文件放回static文件下,发现并没有使用thymeleaf解析,我最后是定义了spring mvc view 的prefix:/与suffix:.html,页面可以跳转成功了,只是还是无法在html页面显示数据。1、SpringBoot创建
2、新建package,目录结构如下
3、各个页面代码
package com.jff.sbootmybaties.entity; public class Jvm { private int id; private int bytes; private int instances; private String class_name; private int num; public int getId() { return id; } public int getBytes() { return bytes; } public int getInstances() { return instances; } public String getClass_name() { return class_name; } public int getNum() { return num; } public void setId(int id) { this.id = id; } public void setBytes(int bytes) { this.bytes = bytes; } public void setInstances(int instances) { this.instances = instances; } public void setClass_name(String class_name) { this.class_name = class_name; } public void setNum(int num) { this.num = num; } }
package com.jff.sbootmybaties.dao; import com.jff.sbootmybaties.entity.Jvm; import java.util.List; public interface JvmDao { List<Jvm> getAll(); Jvm getJvmById(int id); void del(int id); void update(Jvm jvm); void insert(Jvm jvm); }
package com.jff.sbootmybaties.service; import com.jff.sbootmybaties.dao.JvmDao; import com.jff.sbootmybaties.entity.Jvm; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Service public class JvmService { @Autowired JvmDao jvmDao; public List<Jvm> getAll(){ return jvmDao.getAll(); } public Jvm getJvmById(int id){ return jvmDao.getJvmById(id); } public void insert(Jvm j){ jvmDao.insert(j); } public void update(Jvm j){ jvmDao.update(j); } public void del(int id){ jvmDao.del(id); } }
package com.jff.sbootmybaties.controller; import com.jff.sbootmybaties.entity.Jvm; import com.jff.sbootmybaties.service.JvmService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; @Controller @RequestMapping("jvm") public class JvmController { @Autowired() JvmService jvmService; // @RequestMapping("/find") // public ModelAndView find(){ // ModelAndView modelAndView=new ModelAndView(); // List<Jvm> list=jvmService.getAll(); // modelAndView.addObject("list",list); // modelAndView.setViewName("/find.html"); // for (Jvm jvm:list){ // System.out.println(jvm.getId()); // System.out.println(jvm.getInstances()); // } // return modelAndView; // } @RequestMapping("/find") public ModelAndView find(@RequestParam(value="id") int id){ ModelAndView modelAndView=new ModelAndView("find"); Jvm jvm=jvmService.getJvmById(id); modelAndView.addObject("jvm",jvm); System.out.println(jvm.getId()); System.out.println(jvm.getInstances()); return modelAndView; } @RequestMapping(value = "/insert",method = RequestMethod.POST) public ModelAndView insert(Jvm jvm){ jvmService.insert(jvm); System.out.println("插入成功"); ModelAndView modelAndView=new ModelAndView("index"); return modelAndView; } @RequestMapping("/del") public void del(@RequestParam int id){ jvmService.del(id); } }
spring: datasource: name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3308/test?serverTimezone=UTC username: root password: 123456 Spring: mvc: view: prefix: / suffix: .html resources: static-locations: classpath:/static/ mybatis: mapper-locations: classpath:templates/*.xml server: port: 8080
坑点
第一种pom:<dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf</artifactId> <version>3.0.3.RELEASE</version> </dependency> <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spring4</artifactId> <version>3.0.2.RELEASE</version> </dependency>
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
之后解决了我会再次更新,有什么好的解决方法也可以在下面评论。
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算