2019独角兽企业重金招聘Python工程师标准>>>

本文为转载学习

原文链接:http://blog.csdn.net/dsundsun/article/details/11847197

应该还记得上次使用的UserDetailsService的jdbc实现类JdbcDaoImpl。我们通过这个去返回UserDetail。那这此继续往下深入一下。

如果现在我们要完成一个修改密码的功能,在关系型数据库上,要怎么做呢?

如果默认没有自定义UserDetailsService的话,会默认指向JdbcDaoImpl,现在我们实现一下这个方法,然后看看能不能进行一个扩展。

定义接口:

public interface IChangePassword {void changePassword(String username, String password);
}

实现类:

这里由于实现类集成了JdbcDaoImpl,所以他也就可以直接访问数据库了,因为JdbcDaoImpl已经继承了JdbcDaoSupport。

那么,我直接通过数据库表结构就可以修改数据库密码了。哈哈,这个比较简单了。

先进行一个普通的bean声明:

<bean id= "jdbcUserServiceCustom" class="com.packtpub.springsecurity.security.CustomJdbcDaoImpl" ><property name= "dataSource" ref="dataSource" />
</bean >

然后进行spring security的配置:

<authentication-manager alias="authenticationManager" ><authentication-provider user-service- ref="jdbcUserService"/>
</authentication-manager >

通过authentication-provider 中 user-service-ref我们就可以把自定义的JdbcDaoImpl和UserDetailsService进行关联起来。

然后,运行一个项目,我们这个项目就可以拥有修改密码的功能了,。所以spring security学到目前来看,他的可扩展性是非常棒的,而且非常灵活的。

转载于:https://my.oschina.net/heroShane/blog/197018

spring security3.x学习(15)_扩展JdbcDaoImpl。相关推荐

  1. spring security3.x学习(12)_remember me

    2019独角兽企业重金招聘Python工程师标准>>> 本文为转载学习 原文链接:http://blog.csdn.net/dsundsun/article/details/1182 ...

  2. Spring Boot项目学习15之我的主页和用户中心模块

    1.我的主页模块 index.html页面右上角个人信息按钮可以跳转至我的首页. 1.1 BBSUserController控制器 这里需要查询用户的基本信息,然后用户发过的帖子信息,以及收藏过的帖子 ...

  3. 使用Spring Security3的四种方法概述

    使用Spring Security3的四种方法概述 那么在Spring Security3的使用中,有4种方法: 一种是全部利用配置文件,将用户.权限.资源(url)硬编码在xml文件中,已经实现过, ...

  4. 春天的故事-Spring Security3十五日研究

    sparta-紫杉   2011-4-2 22:00 前言 南朝<述异记>中记载,晋王质上山砍柴,见二童子下棋,未看完,斧柄已烂,下山回村,闻同代人都去世了,自已还未变老.     因此发 ...

  5. Spring Security3十五日研究

    前言 南朝<述异记>中记载,晋王质上山砍柴,见二童子下棋,未看完,斧柄已烂,下山回村,闻同代人都去世了,自已还未变老.     因此发出"山中方一日,世上几千年" 的慨 ...

  6. java中batch基础_详解Spring batch 入门学习教程(附源码)

    详解Spring batch 入门学习教程(附源码) 发布时间:2020-09-08 00:28:40 来源:脚本之家 阅读:99 作者:achuo Spring batch 是一个开源的批处理框架. ...

  7. Spring Boot 2 学习笔记(2 / 2)

    Spring Boot 2 学习笔记(1 / 2) - - - 45.web实验-抽取公共页面 46.web实验-遍历数据与页面bug修改 47.视图解析-[源码分析]-视图解析器与视图 48.拦截器 ...

  8. c语言谭浩强ppt课件,编程_C语言学习课件_谭浩强_PPT~1216F.ppt

    编程_C语言学习课件_谭浩强_PPT~1216F.ppt ,第一章,C语言概述本章要点,C语言的特点 C程序的结构 在计算机上运行C程序的方法主要内容,1.1 语言出现的历史背景 1.2 程序的特点 ...

  9. 关于对《Spring Security3》翻译 (第一章 - 第三章)

    原文:http://lengyun3566.iteye.com/category/153689?page=2 翻译说明 最近阅读了<Spring Security3>一书,颇有收获(封面见 ...

最新文章

  1. SpringBoot服务上线流程
  2. FPGA中block ram和distributed ram的区别
  3. PM——【1】维护功能位置主数据
  4. 【翻译】Ext JS 6早期访问版本发布
  5. 十进制转换成二进制的计算器
  6. 对公司的建议_工作总结
  7. 合工大OJ 1359
  8. 【倾心整理】高级工程师手写总结,入门到顶级程序员的学习方法
  9. 东华助手 v1.6.5
  10. 62-Mybatis高级介绍
  11. 哪些软装装饰让你认为是家里装修的点睛之笔?
  12. 燃气热水器和电热水器哪个好 燃气热水器和电热水器的优缺点
  13. GPU与CPU、显卡区别
  14. wr720n刷成网络打印_方便实用!教你如何简单把 usb打印机改成无线打印机!
  15. java 四则运算_java实现小学生四则运算
  16. 【LEAP模型】能源环境发展及碳排放建模预测及不确定性分析
  17. java递归计算N!
  18. 爪爪博士:关于猫斑秃和猫藓的具体区别有哪些?
  19. 96款2018最佳英文字体(附Mac字体安装方法)
  20. 猫鼠游戏,一个刷票老千看在线投票项目的防范与取舍

热门文章

  1. Linux之fgrep命令
  2. Linux之ssh-copy-id命令
  3. HBase内置过滤器java api的总结
  4. ios上传图片文件到服务器,iOS 图片以文件形式上传到服务器
  5. 微服务架构的核心要点和实现原理解析
  6. LOW_VALUE、HIGH_VALUE、ENDPOINT_VALUE转换--UTL_RAW、DBMS_STATS.CONVERT_RAW_VALUE
  7. ubuntu 14.04 下 安装samba 及SSH 服务端的方法
  8. 同步、异步的使用场景及好处
  9. 计算机毕业设计中用js+html+java文件下载(一)
  10. stm32 工业按键检测_STM32单片机按键消抖和FPGA按键消抖大全