登陆访问控制实例

1.导入mysql-connector .jar 到WEB-INF—>lib (new dirctory)和dependencies(project structure–>module—>dependencies—+)
在这里插入图片描述
在这里插入图片描述
注意前者是让汤姆猫找到,后者是让idea找到。
2.把jdbc.properties导入src包。
在这里插入图片描述
3.有了配置文件后还需要一个连接数据库的类。(src—>new package---->util---->把DBHelper(封装的驱动,连接,关闭资源)拖进去 )
在这里插入图片描述
4.建立一个数据表对象 src—>entity(new package)–>myuser(new class)
在这里插入图片描述
里面有列名对象,空参/全参/选参构造,getter/setter,toString

**4. 新建DAO包,把对数据/数据库的操作都放在这里。**里面写方法: 返回类型 方法名(传入的参数)----这里的参数本来是用户名和密码但是被封装成了Myuser对象,叫做insetUser.

在这里插入图片描述
5.写接口的实现类(dao 下new package(impl) ---->new class(LoginDaoImpl))
重新写接口里的方法(这里相当于写一个查询的方法:建立连接—>sql语句–>得到一个操作sql语句的对象---->填写占位符---->执行,获得结果集----->操作结果集(获取当前这条数据各个阶段的结果值)-------->新建一个对象,用构造方法传递结果值------>关闭连接)

6.数据库准备好后,开始写业务逻辑层(业务逻辑?数据模型与展示模型有区别时,区别可以是数据区别也可以是逻辑区别:比如 所有用户的电话号码前面加86)
(src---->new package(Service)----->new interface(LoginService)------>在Service下new一个package(impl)---->new class(LoginServiceimpl) 重写接口的方法)

这儿的逻辑是,给每个用户名字前面加上welcome(调用dao里面的登陆方法,获取登录对象,再获取登录对象的名字)
在这里插入图片描述
注意:在业务逻辑层没有修改需求时可以什么都不写,当作通道使用

7.写控制层控制层负责数据接收,组织对象,service调用和控制显示
通过session写访问控制,因为只有一个用户产生一个session
在这里插入图片描述
升级版:连接数据库做判断条件,如果用户名和密码在数据库中则把这个对象存入session中。
在这里插入图片描述
易错点:
1.jquery引入路径:直接相对路径
2.表单提交到哪里
3.表单要有name才能提交
4.从查询一条数据变为 查询多条数据(返回类型应该是数组)

错误点:
1.service如何实现:一个dao跟loginDao方法一样,写一个实现类,调用login方法,传入参数就是变量,看这个login方法形成的参数存不存在,存在的话调用set方法设置名字
2.最开始的logindao如何写方法, Myuser login(Myuser insetUser);} insetUser就是包括了名字和密码
3.路径
在这里插入图片描述

jsp改造这个项目
1.把开始的根目录配置为登陆页面
在这里插入图片描述

2.考虑哪些地方要用jsp改造,原来的htm写的l用jsp写
3.输入错误应该回到登陆界面,且要出现输入错误的字样,且最好保留用户名
回到登陆界面就是用请求转发
难点:怎么在输入错误后显示输入错误的字样
思路:在登陆失败的地方设置值,把该设置值得地方读取

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值