`

数据库基础入门(四)— — 产品功能实现之数据库架构与用户登录注册

阅读更多

     技术产品无论是网站还是app,对于有一定的受众的产品来说数据库的应用是不可或缺的。没有数据库就好比一群人在图书馆里看书,大家都光着脚,管理员光靠味觉去捕捉脚臭的罪魁祸首估计有如海底捞针。但有了数据库就不一样了,给了每人一双鞋,这时候想知道谁的脚臭就可以对鞋下工夫了。额… 这例子好恶心。总之,只为说明一点,数据库的作用及其架构无比重要。
     根据的前几篇博客所例,这个产品主要实现对用户的管理,用户登录,用户注册以及用户的个人信息的完善。先看数据看的工程架构



     其中的UserInfo包里的表我只是添加了两张:一张Pet表,一张User表。需要注意的是表中的外键,因为外键的值的特殊性,它是由相关联的表的id决定的,所以在声明这个外键时必须用相关表(类)的对象声明引用。
有了架构,接下来是功能的实现。
用户登录
     用户登录的首要条件是用户名、密码不为空,其次是数据库中存在该用户名,并且密码正确。
/** 
	 * 查询用户是否存在,从而判断是否允许登录
	 * @param condition 查询条件 password 对应的密码
	 */
	public boolean queryMember(String condition,String condition_password){
			String username = null;
			String password = null;
		try{
			Connection con = this.getConnection();
			//定义SQL语句
			String sql2 = "select * from user where username = ?";
			//获取预编译SQL执行对象,同时检测数据库中是否已经存在该SQL语句,如果存在,不存入SQL语句,如果不存在则存入SQL语句
			PreparedStatement pstmt = con.prepareStatement(sql2);
			//给每一个?占位符指定数据
			pstmt.setString(1, condition);
			ResultSet rs = pstmt.executeQuery();//执行
			
			System.out.println("id     username    password    mail");
			while(rs.next()){//检测是否还有下一条记录
				int id = rs.getInt("id");
				username = rs.getString("username");
				password = rs.getString("password");
				String mail = rs.getString("mail");
				System.out.println(id+" 	      "+username+"                     "+password+"    "+mail);
			}
			
		}catch(Exception e){
			e.printStackTrace();
		}
//		System.out.println(condition +"=?"+ username);
//		System.out.println(condition_password +"=?"+ password);
		if(condition.equals(username) && condition_password.equals(password)){
			return true;
		}
		else{
			return false;
		}
	}

 




用户注册:
     用户注册也是需要条件的:用户名密码不为空,用户名在数据库中不存在。
/** 
	 * 查询用户 用户不存在时允许注册
	 * @param condition 查询条件
	 */
	public boolean queryMember(String condition){
			String username = null;
		try{
			Connection con = this.getConnection();
			//定义SQL语句
			String sql2 = "select * from user where username = ?";
			PreparedStatement pstmt = con.prepareStatement(sql2);
			
			//给每一个?占位符指定数据
			pstmt.setString(1, condition);
			
			ResultSet rs = pstmt.executeQuery();//执行
			
			System.out.println("id     username    password    mail");
			while(rs.next()){//检测是否还有下一条记录
				int id = rs.getInt("id");
				username = rs.getString("username");
				String password = rs.getString("password");
				String mail = rs.getString("mail");
				System.out.println(id+" 	      "+username+"                     "+password+"    "+mail);
			}
			
		}catch(Exception e){
			e.printStackTrace();
		}
		
		if(condition == username ){
			return true;
		}
		else{
			return false;
		}
	}
				 







用户修改个人资料等的功能将在后续加上。
附件是所有代码的压缩文件。


  • 大小: 100.1 KB
  • 大小: 21 KB
  • 大小: 106.4 KB
  • 大小: 38.8 KB
1
1
分享到:
评论
1 楼 梣梓cenzi 2015-10-01  
大国庆的写代码、写博客

相关推荐

    django+python实现的web入门程序-注册登录功能-sqlite3数据库

    【标题】"django+python实现的web入门程序-注册登录功能-sqlite3数据库"是一个基于Python的Django框架和SQLite3数据库构建的初级Web应用程序。这个程序旨在帮助初学者理解如何在Django中实现用户注册和登录的核心...

    Javaweb新手入门案例 数据库连接登录注册

    这个新手入门案例"数据库连接登录注册"是一个非常适合初学者了解如何在JavaWeb环境中实现用户登录和注册功能的实践项目。下面我们将深入探讨其中涉及的关键知识点。 1. **JavaWeb基础**: JavaWeb开发通常包括使用...

    Cache数据库入门基础

    **Cache数据库入门基础** Cache数据库,全称是InterSystems Cache,是一种高性能、高可用性的对象数据库系统,尤其在医疗行业中被广泛认可并采用。作为一款实时数据库,Cache提供了丰富的功能,包括事务处理、数据...

    基础数据库学习

    2. 数据库管理与DBA职责:DBA(数据库管理员)需要有效地保障数据库应用的质量,了解自己的工作职责,以及在大型应用设计中如何进行数据库架构设计。这些都是数据库管理的高级知识。 3. MySQL的安装、配置与安全...

    [详细完整版]数据库基础.pdf

    - **B/S模式(Browser/Server)**:基于Web的架构,用户通过浏览器访问服务器上的数据库应用,降低了客户端的维护成本。 5. **建立数据库** 在SQL Server中,可以通过企业管理器或查询分析器创建数据库。例如,在...

    Oracle数据库从入门到精通

    Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,它以其强大的功能、高效的数据处理能力和高可用性而闻名。这份“Oracle数据库从入门到精通”的资料,旨在为初学者提供一条系统的学习路径,帮助他们从...

    数据库设计入门经典 完整版

    数据库设计是IT行业中至关重要的一个领域,特别是在构建大型信息系统时,良好的数据库设计是系统稳定、高效运行的基础。本文将深入探讨数据库设计的基本概念、过程和关键要素,旨在为初学者提供一个全面的入门指南。...

    数据库设计入门经典 中文完整版

    9. 性能优化:学习如何通过查询优化、索引策略、数据库架构调整等手段来提升数据库性能。 10. 数据库备份与恢复:理解备份的重要性,学习不同的备份类型(如完整备份、增量备份、差异备份)以及如何制定恢复策略以...

    分布式数据库架构及企业实践-基于Mycat中间件

    分布式数据库架构及企业实践-基于Mycat中间件【高清版本】这是个压缩包,里面是个pdf文件,详细的介绍了mycat中间件的使用方法。 内容简介 本书由资深 Mycat 专家及一线架构师、DBA 编写而成。全书总计 8 章,首先...

    TiDB数据库从入门到实践视频教程

    手把手一步步从零开始安装搭建TiDB数据库,从原理架构到实际操作,实现真正的入门到实践 课程亮点 1,理论+实践,让你既能学懂也能学会 2,图文并茂,化繁为简,让知识通俗易懂,不再抽象 3,案例契合实际开发,让...

    IBM DB2通用数据库SQL入门 (PDF)

    1. **DB2基础**:介绍DB2的架构、安装与配置过程,以及如何通过命令行或图形界面工具(如DB2 Control Center或DB2 Adminstrator)进行数据库管理。 2. **SQL基础**:讲解SQL的基本语法,如SELECT语句用于查询数据,...

    分布式数据库架构及企业实践-基于Mycat中间件.pdf

    《分布式数据库架构及企业实践——基于Mycat中间件》对 Mycat 从入门到进阶、从高级技术实践到架构剖析、从网络通信协议解析到系统工作原理的方方面面进行了详细讲解,并剖析了 Mycat的 SQL 路由、跨库联合查询、...

    java的struts架构连接数据库入门手册

    Java的Struts框架连接数据库入门手册,主要介绍了使用MyEclipse这个集成开发环境(IDE)来连接数据库,并创建基于Struts架构的Web项目的过程。 Struts框架的核心在于将用户请求的动作分解为模型(Model)、视图...

    [Oracle11g数据库基础教程(第2版)][孙风栋][程序源代码]

    11. **数据库架构与组件**:理解Oracle数据库的体系结构,如SGA(System Global Area)、PGA(Program Global Area)等组件的用途。 12. **Oracle企业管理器(EM)**:Oracle Enterprise Manager提供图形化的管理...

    ORACLE 数据库入门.pdf

    ### ORACLE 数据库入门知识点详解 #### 一、Oracle体系结构概述 Oracle数据库是一个高度复杂的系统,其架构设计包括了物理结构与内存结构等多个层面。理解这些基础概念对于初学者来说至关重要。 ##### 1. 物理...

    IBM DB2通用数据库入门

    【IBM DB2通用数据库入门】是一本专为初学者设计的指南,旨在帮助读者快速掌握IBM的DB2数据库系统的基本概念、安装配置以及SQL查询语言的使用。这本书以全中文的形式,降低了学习门槛,使非英语背景的读者也能轻松...

    ASP.NET 4.5 数据库入门经典 第3版

    最后,实战项目部分会引导读者将所学知识应用到实际的ASP.NET 4.5 Web应用程序开发中,例如构建一个简单的网上商城系统,涵盖用户注册、商品浏览、购物车管理等功能,这将帮助读者巩固理论知识,提升实际开发能力。...

    SQL SERVER 2005数据库管理入门经典,所有源代码

    《SQL SERVER 2005数据库管理入门经典》是一本专为初学者设计的教程,旨在帮助读者掌握SQL Server 2005的核心概念、功能和管理技巧。SQL Server 2005作为微软公司推出的数据库管理系统,是企业级数据存储、处理和...

    vb.net数据库入门

    "Visual Basic.NET数据库编程从入门到精通"这本教程无疑是这个领域的一个宝贵指南,它旨在帮助读者从基础到高级逐步掌握数据库操作的技能。 首先,VB.NET是Microsoft .NET框架下的一个面向对象的编程语言,它的简洁...

Global site tag (gtag.js) - Google Analytics