博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Boot实战读书笔记:基于Spring Boot 1.4.1完善前三章
阅读量:5912 次
发布时间:2019-06-19

本文共 3083 字,大约阅读时间需要 10 分钟。

hot3.png

####2.1.1 查看初始化的Spring Boot 新项目 第23页 从1.4开始使用

@RunWith(SpringRunner.class)@SpringBootTest

代替了

@RunWith(SpringJUnit4ClassRunner.class)@SpringApplicationConfiguration(classes = ReadingListApplication.class)@WebAppConfiguration

####3.1.3 掀开自动配置的神秘面纱 DataSourceAutoConfiguration有了较大的修改,将Jdbc相关配置剥离,JdbcTemplateAutoConfiguration也不再是DataSourceAutoConfiguration的内部类。

####3.2 通过属性文件外置配置 spring.main.show-banner过时,换成spring.main.banner-mode来控制,有三个值off(关闭)console(控制台输出)log(输出到log文件)

####第三章中程序按照文中描述是无法运行的,大家可以参考源码修 #####主要是要修改:

  1. 修改LearnSpringBootMavenApplication

输入图片说明

  1. 添加ReaderHandlerMethodArgumentResolver
package com.coderknock.learn.resolver;import com.coderknock.learn.entity.Reader;import org.springframework.core.MethodParameter;import org.springframework.security.core.Authentication;import org.springframework.stereotype.Component;import org.springframework.web.bind.support.WebDataBinderFactory;import org.springframework.web.context.request.NativeWebRequest;import org.springframework.web.method.support.HandlerMethodArgumentResolver;import org.springframework.web.method.support.ModelAndViewContainer;/** * 拿客 * 网站:www.coderknock.com * QQ群:213732117 * 三产 创建于 2016年10月26日 15:25:37。 * 描述: */@Componentpublic class ReaderHandlerMethodArgumentResolver implements HandlerMethodArgumentResolver {    @Override    public boolean supportsParameter(MethodParameter parameter) {        return Reader.class.isAssignableFrom(parameter.getParameterType());    }    @Override    public Object resolveArgument(MethodParameter parameter,                                  ModelAndViewContainer mavContainer, NativeWebRequest webRequest,                                  WebDataBinderFactory binderFactory) throws Exception {        Authentication auth = (Authentication) webRequest.getUserPrincipal();        return auth != null && auth.getPrincipal() instanceof Reader ? auth.getPrincipal() : null;    }}
  1. Reader实体类文中getAuthorities的方法中return Arrays.asList(new SimpleGrantedAuthority("READER"));有误,应为:
// UserDetails methods    @Override    public Collection
getAuthorities() { //授予READER权限 return Arrays.asList(new SimpleGrantedAuthority("ROLE_READER")); }
  1. Book实体类应将reader属性做一些修改:
@ManyToOne    private Reader reader;	public Reader getReader() {        return reader;    }    public void setReader(Reader reader) {        this.reader = reader;    }
  1. ReadingListRepositoryfindByReader方法:
/**     * 通过读者查询书籍     *     * @param reader     * @return     */    List
findByReader(Reader reader);
  1. 添加login.html页面
    Login    

Login With Username and Password

Incorrect username or password. Try again.
User:
Password:
  1. 修改readingList.html页面

有问题请加群,后续会发新文章继续完善。本文中代码可以在 找到

转载于:https://my.oschina.net/coderknock/blog/776139

你可能感兴趣的文章
shell中的函数、shell中的数组、告警系统需求分析
查看>>
Shell脚本调试方法 Shell脚本执行的过程
查看>>
微博营销的十大技巧
查看>>
C++关联容器详细介绍
查看>>
数据库的连接
查看>>
LNMP编译安装的架构中安装zabbix(php支持库的问题很多)
查看>>
鸡尾酒聚会算法
查看>>
关于Java时间格式的解惑
查看>>
电商企业适用基础快递接口对接demo
查看>>
通过chkconfig设置linux开机自启动服务- 老男孩Linux运维学习笔记1
查看>>
CENTOS 安装 jenkins
查看>>
Yii框架官方指南系列26——使用数据库:关系型 Active Record
查看>>
Java思考题
查看>>
iptables详解
查看>>
Kaptchar详细配置表
查看>>
Java程序员从笨鸟到菜鸟之(四十三)细谈struts2(六)获取servletAPI和封装表单数据...
查看>>
OSPF详述
查看>>
我的友情链接
查看>>
红黑树的原理分析和算法设计
查看>>
ant_Jmeter持续集成测试报告优化之添加throughput显示
查看>>