SpringBoot学习笔记(三)

SpringBoot学习笔记(三),第1张

SpringBoot学习笔记(三) 学习内容:

今天是根据自己学习之前视频的时候回过去学了一些SpringMvC以及整合了一下thymeleaf的内容,遇到了很多BUG和异常。

先来说说Springmvc里的东西 1.springmvc帮我们自动做好servlet配置,让我们直接使用Controller层,摆脱麻烦的servlet层。

通过理解springmvc,大致理解了javaweb到spring的过度
springmvc帮我们自动配置好了Servlet,通过在控制层注解
@Requestmapping(value=“xxxx ”)完成Servlet的路由配置,这样,就可以不用配置Servlet了,使用SpringBoot的时候甚至都不用web.xml
这些 *** 作的实现都是通过源码的出来的,即源码帮我们补充了前缀、后缀,我们可以通过写中间的内容然后补充。

modelandview

在SpringBoot中,每个方法加入Model model类,可以将要给前端的数据通过model.addaAttribute的方式加入,之后传给前端即可。

Spring开发时候的注解

@Controller 表示这个类下的方法都是控制层内容 如果返回的参数全都是json,可以用RestController
@ResponseBody 加在返回类型前,转化成json格式
@RequestMapping (value=”****”,method=RequestMethod.Get)相当于@GetMapping 在数据查询时使用。 类似的还有@PostMapping 在新增的时候使用 @DeleteMapping 删除用 @PutMapping 没有明确要求可以用Get
有关事务:
事务不能执行一半失败一般,必须有原子性
因此要在Service.impl加上标注@Transactionl
2.0以前还要在Application的上面加@EnableTransactioanl
可以回滚

Restful

一种互联网软件架构设计的风格,但它并不是标准,它只是提出了一组客户端和服务器交互时的架构理念和设计原则,基于这种理念和原则设计的接口可以更简洁,更有层次,REST这个词,是 Roy Thomas Fielding在他2000年的博士论文中提出的。
任何的技术都可以实现这种理念,如果一个架构符合REST原则,就称它为 RESTFul架构
比如我们要访问一个http接口: http://localhost:8080/boot/order?id=1021&status=1
采用RESTFul风格则 http 地址为: http://localhost:8080/boot/order/1021/1
@PathVariable 用了restful可能出现的问题 请求路径不清楚 通常在RESTful请求方式会按照增删改查请求方式来区分

整合thymeleaf

依旧是加依赖

        
            org.springframework.boot
            spring-boot-starter-thymeleaf
        

写控制层

@Controller
public class helloController {
    @Autowired
    private   UserService userService;
    @RequestMapping("/userlist")
    public  String hello(Model model)
    {   List userList=userService.queryUserList();
        model.addAttribute("userList",userList);
        System.out.println(model.getAttribute("user"));
        return "ShangP";
    }

}

前期要注意的点就是不要用@RestController 和@responsebody这两个注解,因为他们返回字符串而不是去找源代码去拼接地址
这张图的代码表示完成业务以后会跳转到templates下的ShangP.html

简单的显示页面
上面的图里的each后的表达式,可以当初python的序列解包,其中user获得List里的单个对象,interStat 是循环体的信息,通过该变量可以获取如下信息:
index: 当前迭代对象的 index(从 0 开始计算)
count: 当前迭代对象的个数(从 1 开始计算)这两个用的较多
size: 被迭代对象的大小
current: 当前迭代变量
even/odd: 布尔值,当前循环是否是偶数/奇数(从 0 开始计算)
first: 布尔值,当前循环是否是第一个
last: 布尔值,当前循环是否是最后一个
注意:循环体信息 interStat 也可以不定义,则默认采用迭代变量加上 Stat 后缀,即 userStat

要用的话,用法如图:

效果

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5695707.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存