Spring 32 Spring REST - RESTController

Spring 32 Spring REST - RESTController

想要通过Spring返回JSON字符串作为HTTP的响应体,一个比较简便的方法是使用Spring特殊的REST控制器。 REST服务在HTTP中的使用常见于如下: HTTP请求类型 CRUD操作对应 POST Create GET Retrieve单个或者对象结果集合 PUT 更新一个存在的对象 D

Spring 31 Spring REST - 在Java中使用JSON

Spring 31 Spring REST - 在Java中使用JSON

两大传统艺能学习完毕了,其中Spring Security还需要深入一下,呃,其实是整个Spring都还需要再深入学习。 光有了前边的两大传统艺能,如果还是使用JSP来开发页面,还没有做到前后端分离,还是拿着传统艺能在做传统的事情。 REST具体是什么就不多说了,在Django时代已经用过一次了。现

Spring 30 Spring Security - 密文方式存储密码和用户注册

Spring 30 Spring Security - 密文方式存储密码和用户注册

在数据库中存储密文密码 很显然,实际开发中绝对不能使用明文密码,否则数据泄露的可能性非常大。 Spring Security针对密码推荐bcrypt算法,bcrypt算法可以一次性计算好hash后的值,自动加随机的盐,可以防止暴力破解。是一个使用广泛的算法。 密码学在计算机科学出现之前就有了,而哈希

Spring 29 Spring Security - 通过数据库读取用户和角色

Spring 29 Spring Security - 通过数据库读取用户和角色

使用数据库存储用户信息和角色 观察我们的配置类可以发现,我们目前把所有的用户名,密码和角色信息都硬编码在配置类里。角色名一旦有变动,需要修改全部代码中对应的这个角色名。这显然不够好。更常见的做法是用数据库来存储相关的内容。每次进行验证的时候,到数据库中去存取数据。 Spring Security支持

Spring 28 Spring Security - 用户基于角色的权限控制

Spring 28 Spring Security - 用户基于角色的权限控制

用户角色权限 对于Web开发来说,包括后边要用到的REST风格,权限就是基于用户的身份,能够访问哪些URL,因为在REST风格下URL意味做一个动作然后获得结果。 按照教程,目前我们已经在Spring Security的配置类里配置了一些角色如下: 姓名 角色 jenny ADMIN, MANAGE

Spring 27 Spring Security - 用户登出、CSRF、用户信息

Spring 27 Spring Security - 用户登出、CSRF、用户信息

用户登出 用户登出的动作是实际上是清除Session中的用户数据,开发的方法如下: 配置文件中加上登出的功能和对应的路径 在JSP页面中添加一个登出按钮 在登录表单页面中加入登出的消息 先来修改配置文件: @Override protected void configure(HttpSecurity

Spring 26 Spring Security - 基础概念和用户登录

Spring 26 Spring Security - 基础概念和用户登录

由于Spring Security是另外一个项目,并不像之前我们使用的包都属于Spring Framework,一起用就行了。 Spring Security开发的过程是: 创建Spring Security的初始化器 创建Spring Security的配置文件 添加用户,密码,角色等内容 Spr

Spring 25 Spring Security - 项目配置

Spring 25 Spring Security - 项目配置

Web开发两大传统艺能,增删改查基础操作已经会写了,还剩下就是用户验证了。Spring Security就是做这个的。主要的功能就是管理用户身份认证(authenticate)和用户权限(authority)。 有两种方式可以为一个项目添加安全管理:声明式和编程式。 Spring Security是

Spring 24 Maven基础

Spring 24 Maven基础

Maven基础概念 如果用过Eclipse和Intellij或者其他的IDE,就会发现由于各个IDE的设置不同,项目的目录结构也不同。如果每个人的可以自行设置项目目录和结构,就让大规模开发变得困难。Maven就是一个标准化的项目构建工具,用不同的IDE新建各自的项目会不同,但所有的IDE都支持创建M

Spring 23 AOP - 各种配置方法和实际应用

Spring 23 AOP - 各种配置方法和实际应用

@AfterReturning 顾名思义,这是在方法成功执行之后的切面。所谓成功执行,就是方法返回了结果,中间没有出现任何异常。 这种切面主要用于日志,预处理数据等功能 这个技术还一个重要的方面就是需要获得返回值,以便进行一些操作,来看一个简单的例子: 在Aspect类中打开getter方法的切点,