Web开发模式【Mode I 和Mode II的介绍、应用案例】(三)

简介: 笔记

应用例子:


我们使用MVC模式开发一个简单的用户登陆注册的案例吧!作为一个简单的用户登陆注册,这里就直接使用XML文档当作小型数据库吧


①搭建开发环境

  • 导入相对应的开发包
  • 创建程序的包名
  • 创建xml文件,当做小型的数据库

55.jpg


②开发实体User


privateintid;

   privateStringusername;

   privateStringpassword;

   privateStringemail;

   privateDatebirthday;


   //....各种setter、getter


③开发dao


  • 这个根据业务来开发,我们是登陆注册,那应该提供什么功能呢?注册(外界传递一个User对象进来,我可以在XML文档多一条信息)。登陆(外界传递用户名和密码过来,我就在XML文档中查找有没该用户名和密码,如果有就返回一个User对象)
  • 3.1登陆功能

//外界传递用户名和密码进来,我要在XML文档中查找是否有该条记录

   publicUserfind(Stringusername,Stringpassword){


       //得到XML文档的流对象

       InputStreaminputStream=UserImplXML.class.getClassLoader().getResourceAsStream("user.xml");


       //得到dom4j的解析器对象

       SAXReadersaxReader=newSAXReader();



       try{


           //解析XML文档

           Documentdocument=saxReader.read(path);


           //使用XPATH技术,查找XML文档中是否有传递进来的username和password

           Elementelement=(Element)document.selectSingleNode("//user[@username='"+username+"' and@password='"+password+"']");


           if(element==null){

               returnnull;

           }


           //如果有,就把XML查出来的节点信息封装到User对象,返回出去

           Useruser=newUser();

           user.setId(Integer.parseInt(element.attributeValue("id")));

           user.setUsername(element.attributeValue("username"));

           user.setPassword(element.attributeValue("password"));

           user.setEmail(element.attributeValue("email"));


           //生日就需要转换一下了,XML文档保存的是字符串,User对象需要的是Date类型

           SimpleDateFormatsimpleDateFormat=newSimpleDateFormat("yy-MM-dd");

           Datebirthday=simpleDateFormat.parse(element.attributeValue("birthday"));

           user.setBirthday(birthday);


           //返回User对象出去

           returnuser;


       }catch(DocumentExceptione){

           e.printStackTrace();

           thrownewRuntimeException("初始化时候出错啦!");

       }catch(ParseExceptione){

           e.printStackTrace();

           thrownewRuntimeException("查询的时候出错啦!");

       }


   }

  • 做完一个功能,最好就测试一下,看有没有错误再继续往下写!

privateStringusername="zhongfucheng";

   privateStringpassword="123";


   @Test

   publicvoidtestLogin(){


       UserImplXMLuserImplXML=newUserImplXML();

       Useruser=userImplXML.find(username,password);


       System.out.println(user.getBirthday());

       System.out.println(user.getEmail());

       System.out.println(user.getId());

       System.out.println(user.getUsername());

       System.out.println(user.getPassword());



   }

  • 效果:

56.jpg


目录
相关文章
|
2月前
|
存储 监控 安全
如何在Python Web开发中确保应用的安全性?
如何在Python Web开发中确保应用的安全性?
|
11天前
|
Web App开发 编解码 vr&ar
使用Web浏览器访问UE应用的最佳实践
在3D/XR应用开发中,尤其是基于UE(虚幻引擎)开发的高精度场景,传统终端因硬件局限难以流畅运行高帧率、复杂效果的三维应用。实时云渲染技术,将渲染任务转移至云端服务器,降低终端硬件要求,确保用户获得流畅体验。具备弹性扩展、优化传输协议、跨平台支持和安全性等优势,适用于多种终端和场景,特别集成像素流送技术,帮助UE开发者实现低代码上云操作,简化部署流程,保留UE引擎的强大开发能力,确保画面精美且终端轻量化。
使用Web浏览器访问UE应用的最佳实践
|
1月前
|
弹性计算 Java 关系型数据库
Web应用上云经典架构实践教学
Web应用上云经典架构实践教学
Web应用上云经典架构实践教学
|
1月前
|
Kubernetes 安全 Devops
有效抵御网络应用及API威胁,聊聊F5 BIG-IP Next Web应用防火墙
有效抵御网络应用及API威胁,聊聊F5 BIG-IP Next Web应用防火墙
74 10
有效抵御网络应用及API威胁,聊聊F5 BIG-IP Next Web应用防火墙
|
1月前
|
弹性计算 Java 数据库
Web应用上云经典架构实战
本课程详细介绍了Web应用上云的经典架构实战,涵盖前期准备、配置ALB、创建服务器组和监听、验证ECS公网能力、环境配置(JDK、Maven、Node、Git)、下载并运行若依框架、操作第二台ECS以及验证高可用性。通过具体步骤和命令,帮助学员快速掌握云上部署的全流程。
|
2月前
|
前端开发 JavaScript UED
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势,包括样式表优化、DOM操作减少、图像优化等技术,并分析了电商网站的具体案例,强调了技术演进对Web性能的深远影响。
50 5
|
2月前
|
机器学习/深度学习 人工智能 JavaScript
JavaScript和TypeScript的未来发展趋势及其在Web开发中的应用前景
本文探讨了JavaScript和TypeScript的未来发展趋势及其在Web开发中的应用前景。JavaScript将注重性能优化、跨平台开发、AI融合及WebAssembly整合;TypeScript则强调与框架整合、强类型检查、前端工程化及WebAssembly的深度结合。两者结合发展,特别是在Vue 3.0中完全采用TypeScript编写,预示着未来的Web开发将更加高效、可靠。
68 4
|
1月前
|
弹性计算 负载均衡 安全
云端问道-Web应用上云经典架构方案教学
本文介绍了企业业务上云的经典架构设计,涵盖用户业务现状及挑战、阿里云业务托管架构设计、方案选型配置及业务初期低门槛使用等内容。通过详细分析现有架构的问题,提出了高可用、安全、可扩展的解决方案,并提供了按量付费的低成本选项,帮助企业在业务初期顺利上云。
|
2月前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
43 4
|
2月前
|
机器学习/深度学习 数据采集 Docker
Docker容器化实战:构建并部署一个简单的Web应用
Docker容器化实战:构建并部署一个简单的Web应用