某登录功能
来源:互联网 发布:驾校预约考试软件 编辑:程序博客网 时间:2024/06/16 08:12
1. 登录
浏览器
输入账户和密码,JavaScript进行格式验证;
验证通过,点击Login按钮,使用Ajax技术发送数据;
服务器返回Json中有state变量,该变量标识成功与否。当state为1,表示成功,可以跳转到别的页面。
SpringMVC
浏览器访问路径为XXX/login.do,传递的参数有两个:adminCode和password,前端控制器接收。其根据映射处理器(可以用注解代替配置),访问不同的处理器方法,处理器返回一个符合Json规范的对象。前端控制器将该对象响应给浏览器。
业务层
处理器需要业务层的支持(通过调用接口实现)。处理器将数据传递给业务层,业务层对数据做一些处理,将对数据处理的结果封装为JavaBean对象返回给处理器。
持久层
业务层需要持久层的支持(通过调用接口实现)。业务层将数据传递给持久层,持久层判断数据的正确性,然后封装数据传递给业务层。
数据库
持久层使用mybatis,访问mysql数据库
2. 编码过程
创建项目
需要修改JDK版本,需要指定运行环境,需要修改编码
导包
数据库:MySQL,dbcp
Spring:spring-webmvc,spring-jdbc
MyBatis:mybatis,mybatis-spring
Json:jackson(annotations,core,databind),需要注意将<type>bundle</type>
删除
junit:junit
另外: commons-codec,生成摘要
没网实在是太恶心了!!,没网无法自动下载依赖的包
配置SpringMVC
使用Eclipse创建一个DispatcherServlet,在web.xml中,还要加入第一启动的配置
<load-on-startup>1</...>
再创建SpringMVC使用的xml文件:conf/spring-web.xml
需要测试一次了……
启动Tomcat,显示加载conf/spring-web.xml,则SpringMVC成功
注:在这里有很多系统错误
配置连接池
db.properties
连接池BasicDataSource(bean)
标签没有完全包裹的错误
将连接池注入到MyBatis中
测试能否注入成功,Mapper先不用管
写SQL语句:使用接口和配置文件
先写UserDao接口
发现需要实体类User
再写UserMapper.xml,需要符合那4条规则!!!
测试:测试login(我改为findUserByName了)方法,发现不能将获得bean(userDao)抽象到超类中!
正确的姓名测试通过,不正确的呢?需要自定义异常了~~~
业务层处理异常,持久层不处理异常(只有一个接口,没有实现类来处理异常)
写业务层UserService.login(String name, String password)
需要注入持久层(需要持久层协助)
判断账户和密码的合法性
注意:我密码加密没使用盐,并且使用md2Hex生成的摘要,如果对password使用md5Hex会报错
测试通过
写处理器
返回Json对象
浏览器测试处理器
完善页面(加JavaScript)
- 某登录功能
- 登录功能
- 登录功能
- 登录功能
- 限制登录功能,让人爱让人恨
- 实现登录过滤器功能
- ajax 用户 登录 功能
- session实现登录功能
- EJB实现登录功能
- 退出登录功能
- Qt 实现登录功能
- 登录功能小实验
- strut2登录过滤功能
- phonegap登录功能
- SpringMVC自动登录功能
- cookie登录功能实现
- SSH 单用户登录功能
- android登录功能
- centos7下安装MySQL安装和配置
- 2017.4.15第六次測試總結
- SQL中varchar 与 nvarchar的区别
- 人工智能初步——利用随机重启爬山、模拟退火算法求解2N皇后问题
- Spring Journey -- AOP basic concept
- 某登录功能
- Protocol Buffers(持久化存储)
- (dfs算法) Fire Net
- HBase学习(1)—— 环境搭建
- 工业机器人应用领域分析
- arp-scan的又一个黑科技 mac地址oui自定义
- Android获取本应用的版本号
- mysql安装环境配置
- 更改iPhone手机铃声详细教程(简单易学,无需付费软件)!