一. Spring建站之明确需求

1. 写在前面

看过Spring in Action 的同学可能会跟我有这样的困惑,刚开始完全看不进去,全是陌生的概念。在反复看了好几遍之后,我换一种思路去理解这本书。
我决定从建一个普通的网站入手,一步步去探究Spring的细节。

2. 网站需求

网站名字是Spittr,是一个模仿微博的网站。
本文的流程就是按照一个网站的构建过程,来展现在Spittr 的构建过程中用到的Spring技术。
网站主要功能有以下几点:

  • 用户注册
  • 用户登录
  • 用户发微博

3. 网站功能

3.1 用户注册

用户注册

网站的本质是信息的流动,整个web围绕信息的流动展开。
用户注册就是用户信息向网站后台流动的过程。

1. 用户填写注册信息,点击Register按钮。此时url为http://localhost:8080/spitter/register,POST请求

Spring请求过程

请求离开浏览器时,带着用户请求内容的信息(用户提交的表单信息)到达第一站Spring的DispatcherServlet。

DispatcherServlet, 前端控制器,将请求发送给Spring MVC控制器(controller)。
DispatcherServlet是Spring MVC 的核心,它负责将请求路由到其他的组件之中。
配置DispatcherServlet,使用Java将DispatcherServlet配置在Servlet容器中。
DispatcherServlet 加载包含Web组件的bean, 如控制器,视图解析器,处理器映射。
ContextLoaderListener加载应用中的其他bean,这些bean驱动应用后端的中间层和数据层。

2.请求经过DispatcherServlet之后到达控制器(SpitterController)

  1. 把用户提交的注册信息,存储成SpitterBean。

Bean 对应于一个实体类。此时用户注册界面提交的表单对应的是SpitterForm。再对其进行转化成为Spitter。

  1. SpitterRepository 将Spitter持久化。SpitterRepository 通过自动装配的方式注入SpitterController

创建应用对象之间的协作关系的行为称作装配。

3.2 显示用户信息

1. 处理完注册步骤后, 返回"redirect:/spitter/" + spitter.getUsername()。将URL重定向为/spitter/username

2. 在 /spitter/username 控制器中将注册的信息返回profile。在profile 显示用户的信息。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,280评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,227评论 6 342
  • 本章内容: 映射请求到Spring控制器 透明地绑定表单参数 校验表单提交 状态管理、工作流以及验证都是Web 开...
    谢随安阅读 12,765评论 0 4
  • 什么是Spring Spring是一个开源的Java EE开发框架。Spring框架的核心功能可以应用在任何Jav...
    jemmm阅读 16,733评论 1 133
  • (文/舒 天)《齐鲁晚报》青未了·心理版2015年6月14日 蓝宇的故事有些沉重。由于父母婚姻的问题,她对亲情和婚...
    舒天阅读 1,868评论 0 1

友情链接更多精彩内容