3.3 登录-控制器层

处理登录页面2个处理URL映射

/user/showLogin.do
请求参数:无
请求方式:GET
响应方式:转发/user/login.do
请求参数:username,password
请求方式:POST
响应方式:ResponseBody

在UserController类中定义方法 @RequestMapping("/showLogin.do") public String showLogin(){ return "login"; }

修改login.html为login.jsp

测试:

在UserController类定义login方法 @ @ public ResponseResult login(String username,String password){ // 1.创建ResponseResult对象 // 2.try{ //调用业务层 login() // 1 登录成功 }catch(Exception e){ // 0 e.getMessage(); } //3.return rr; }

测试:

3.4用户登录-页面

//登录按钮的异步提交
$('#bt-login').click(function(){$.ajax({"url":"${pageContext.request.contextPath}/user/login.do","data":"username="+$("#username").val()+"&password="+$("#password").val(),"type":"POST","dataType":"json","success":function(obj){//处理自动登录的复选框Save();alert(obj.state+","+obj.message);}});});

注意:

1.判断复选框是否被选中 if ($("#ck_rmbUser").prop("checked"))

2.复选框的'value=0'去掉

页面调整

1.注册成功之后,跳转到登录

2.在注册的页面,点击直接登录,跳转到登录页面

3.在登录页面,点击新用户注册,跳转到注册页面

4.显示首页

创建MainController类,定义showIndex方法,显示index.jsp页面

@RequestMapping("/main")
@Controller
public class MainController{@RequestMapping("/showIndex.do")public String showIndex(){return "index";}
}

把index.html该为index.jsp

调整页面

1.登录成功,跳转到首页

2.在index.jsp页,显示用户名,在❤前边

${user.username}

3.如果没有显示用户名,显示登录,如果显示用户名,登录变成退出

首先引入标签库
<%@ taglib prefix="c"
uri="http://java.sun.com/jsp/jstl/core" %>
<c:if test="${user==null}"><li><a href="">登录</a></li>
</c:if><c:if test="${user!=null}"><li><a href="">退出</a></li>
</c:if>

4.点击登录,跳转到登录页面。

5.退出 让session失效,并且重定向到首页 在UserController,定义方法,完成退出的功能

@RequestMapping("/exit.do")
public String exit(HttpSession session){//让session无条件失效session.invalidate();return "redirect:../main/showIndex.do";
}

测试:

6.截取header.jsp,在index.jsp页面包含header.jsp

7.点击登录用户名,显示安全管理的页面(修改密码)

1)在UserController 中定义方法,方法名showPassword
2)把personal_password.html文件改成poersonal_passwrd.jsp

5 安全管理

5.1 安全管理-持久层

在UserMapping接口中定义方法

void update (User user);

在UserMapper.xml文件中,定义update节点,完成update语句

<update id="update" parameterType="cn.tedu.store.bean.User">update t_userset <if test="password!=null">password=#{password},</if><if test="username!=null">username=#{username},</if><if test="gender!=null">gender=#{gender},</if><if test="email!=null">email=#{email},</if><if test="phone!=null">phone=#{phone},</if>modified_user=#{modifiedUser},modified_time=#{modifiedTime}whereid#{=id}</update>

测试:修改密码成功。

ssm-学子商城-项目第三天相关推荐

  1. 基于SSM的商城项目项目源码+实验报告

    基于SSM的商城项目 本项目是今年暑假小学期时完成的,耗时四天时间,在小学期结束项目答辩时,在年级里斩获冠军,在此很感谢我的团队,正是我们各个环节的配合,最终才能够获得如此好的成绩. 目录 基于SSM ...

  2. ssm水果商城项目遇到的问题和解决

    水果商城项目遇到的错误 https://www.bilibili.com/video/BV1EC4y1a7yH/?p=5 第一个问题 b站视频p5 控制台跳转jsp页面500错误 后面发现:是mave ...

  3. SSM购物商城项目开发

    开发环境 : 当前用myeclipse (idea) jdk7 tomcat 8,.5 创建项目 new -- web project --- 记得把web.xml勾上 SSM框架整合配置 添加依赖 ...

  4. 商城项目(三)整合SpringSecurity和JWT实现认证和授权

    整合SpringSecurity和JWT实现认证和授权 环境搭建 SpringSecurity JWT Hutool 项目使用表说明 ums_admin:后台用户表 ums_role:后台用户角色表 ...

  5. jsp+servlet学子商城项目--servlet、dao层的各项练习

    Login的登录项目完成传值,select语句索引 UserDao.java /*** 根据用户名查询* @param name:表示用户名* @return如果用户名存在,封装成对象返回* 否则返回 ...

  6. Java网络商城项目 SpringBoot+SpringCloud+Vue 网络商城(SSM前后端分离项目)十六(商品排序,Thymeleaf快速入门,商品详情页的展示)

    Java网络商城项目 SpringBoot+SpringCloud+Vue 网络商城(SSM前后端分离项目)十六(商品详情页的展示) 一.商品排序 1.完善页面信息 这是用来做排序的,默认按照综合排序 ...

  7. Java毕设项目-商城管理系统-基于J2EE/SSM化妆品商城系统的设计与实现

    题目:商城管理系统-基于J2EE/SSM化妆品商城系统的设计与实现 重点作为毕设项目 1.开发环境 语言:Java       Spring+Springmvc+Mybatis[简称SSM] 数据库: ...

  8. Java网络商城项目 SpringBoot+SpringCloud+Vue 网络商城(SSM前后端分离项目)二十二(下单和微信支付)

    Java网络商城项目 SpringBoot+SpringCloud+Vue 网络商城(SSM前后端分离项目)二十(下单) 0.学习目标 会调用订单系统接口 实现订单结算功能 实现微信支付功能 1.订单 ...

  9. SSM练手项目:米米商城

    SSM练手项目:米米商城 第一章 登录功能的详细开发步骤 搭建ssm项目的步骤: 1>新建maven工程 2>修改目录,修改pom.xml文件 3>添加ssm项目框架的所有依赖 4& ...

  10. 分布式商城项目-后台开发-SSM工程整合网站模板

    分布式商城项目-后台开发-SSM工程整合网站模板 我们在JavaWeb开发学习过程中,需要使用到前端的页面,可能很多时候,我们并不擅长于设计UI,比如html,jsp.但又希望自己做出来的程序能够好看 ...

最新文章

  1. Java之HashMap源码解析1
  2. python3 字符串操作总结
  3. php yield 递归,递归运行所有yield请求h的废弃输出文件
  4. xib中Autolayout的使用
  5. ActiveMQ的几种集群配置
  6. 基金指数温度怎么算_医药冷链物流——运输过程中如何保证温度?
  7. 6个座位办公室最佳位置_办公室座位最佳位置(讲解)
  8. Shell常用命令大全
  9. 项目报告制作-中型无盘网吧
  10. html js制作地图,前端使用D3.js制作地图
  11. linux 中 etc fstab目录,Linux学习— /etc/fstab文件详解
  12. mysql英文版怎么调中文_navicat for mysql怎么设置中文
  13. MarkDownPad 2实用教程
  14. Java 6-2:收放自如,融汇贯通,让线程不再疯癫——线程的阻塞和关闭
  15. Max 文件制作三维场景
  16. openssh-7.5p1升级
  17. 小程序嵌套h5页面_微信小程序内嵌h5页面
  18. centos8 内核升级
  19. 建议118:使用SecureString保存密钥等机密字符串
  20. 未来可期的6个物联网发展

热门文章

  1. 【NOIP2013提高组】华容道
  2. 我读《数据库系统基础教程》
  3. 数据库系统之NoSQL数据库系统
  4. Android 10.0修改语言设置简体中文(中国)为简体中文(中国大陆)
  5. 预付费售电管理系统基础知识
  6. 文件恢复原理Linux文件恢复工具-foremostextundelete
  7. 余贞侠C语言程序设计课后参考答案
  8. Newifi3(新路由3)刷潘多拉(Pandora)固件
  9. 无人驾驶智能车竞速赛,智能大会无人驾驶比赛
  10. vue3 + typescript + echarts后端动态获取数据显示问题总结