WEB简单的登录注册功能(分层)
登录:
前端页面:
<body>
<form action="/webtext/LogingServlet" method="post">
<input type="text" name="username"><br>
<input type="text" name="userpassword"><br>
<input type="submit" value="登录"><br>
</form>
</body>
domain:
public class user {
private int uid;
private String username;
private String userpassword;
public int getUid() {
return uid;
}
public void setUid(int uid) {
this.uid = uid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getUserpassword() {
return userpassword;
}
public void setUserpassword(String userpassword) {
this.userpassword = userpassword;
}
@Override
public String toString() {
return "user [uid=" + uid + ", username=" + username + ", userpassword=" + userpassword + "]";
}
}
dao层:
public int load(user user) throws SQLException{
Connection conn=JDBCUtils.getConn();
String sql="select * from user where username=? and userpassword=?";
PreparedStatement pst=conn.prepareStatement(sql);
pst.setString(1, user.getUsername());
pst.setString(2, user.getUserpassword());
ResultSet rs = pst.executeQuery();
int count=0;
while(rs.next()){
count=rs.getInt(1);
}
JDBCUtils.close(rs, pst, conn);
return count;
}
service层:
public boolean load(user user){
boolean flag=false;
try {
int count=Dao.load(user);
if(count==1){
flag=true;
}else{
flag=false;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return flag;
}
登陆的同时检测登陆人数:
public class LogingServlet extends HttpServlet {
private service Service=new service();
public void init() throws ServletException {
//获取ServletContext对象
ServletContext servletContext=this.getServletContext();
//向ServletContext域存入初始count
int count=0;
servletContext.setAttribute("count", count);
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username=request.getParameter("username");
String password=request.getParameter("userpassword");
user user=new user();
user.setUsername(username);
user.setUserpassword(password);
boolean flag=Service.load(user);
if(flag==true){
//获取ServletContext对象
ServletContext servletContext=this.getServletContext();
//获取当前count值
int count=(int)servletContext.getAttribute("count");
//改变count值
count++;
response.getWriter().write("success"+user+"ni shi di"+count+"ge fang wen de ren");
//刷新count值
servletContext.setAttribute("count", count);
}else{
response.getWriter().write("failure");
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
注册:
dao层
//注册验证
public int zhuceyz(String username) throws SQLException{
Connection conn=JDBCUtils.getConn();
String sql="select username from user where username=?";
PreparedStatement pst=conn.prepareStatement(sql);
pst.setString(1, username);
ResultSet rs = pst.executeQuery();
int count=0;
while(rs.next()){
count=rs.getInt(1);
}
JDBCUtils.close(rs, pst, conn);
return count;
}
//存入注册信息
public int zhuce(user user) throws SQLException{
Connection conn=JDBCUtils.getConn();
String sql="insert into user(username,userpassword) values(?,?)";
PreparedStatement pst=conn.prepareStatement(sql);
pst.setString(1, user.getUsername());
pst.setString(2, user.getUserpassword());
int row=pst.executeUpdate();
JDBCUtils.close(pst, conn);
return row;
}
}
service层
//注册验证
public boolean zhuceyz(String username){
boolean flag=false;
try {
int count=Dao.zhuceyz(username);
if(count==0){
flag=true;
}else{
flag=false;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return flag;
}
//存入注册信息
public boolean zhuce(user user){
boolean flag=false;
try {
int count=Dao.zhuce(user);
if(count==1){
flag=true;
}else{
flag=false;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return flag;
}
}
服务器端
public class ZhuceServlet extends HttpServlet {
private service Service=new service();
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
while(true){
String username=request.getParameter("username");
String password=request.getParameter("userpassword");
boolean flag=Service.zhuceyz(username);
if(flag==false){
response.getWriter().write("yibeizhanyong");
return;
}else if(flag==true){
user user=new user();
user.setUsername(username);
user.setUserpassword(password);
boolean flag1=Service.zhuce(user);
if(flag==true){
response.getWriter().write("success"+user);
}else{
response.getWriter().write("failure");
}
}
return;
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
WEB简单的登录注册功能(分层)的更多相关文章
- java web 简单的登录注册
--sql文件 create database studentgouse studentgocreate table stuinfo(--stuid int primary key identity( ...
- Struts2 + Hibernate3.3 开发简单的登录注册功能【J2EE】
开发环境: IDE:Myeclipse10.0 数据库:Oracle(SQL Developer) Web容器:Tomcat 7.0 JDK:1.6 Struts:2.0 Hibernate:3.3 ...
- SSM 实现登录注册功能
1.上一篇SSM框架搭建好了之后就要开始写功能了,现在来写一个简单的登录注册功能 这几个包是自己手动创建的,然后往里面写代码 2.代码详情 package com.maike.controller; ...
- Java Spring+Mysql+Mybatis 实现用户登录注册功能
前言: 最近在学习Java的编程,前辈让我写一个包含数据库和前端的用户登录功能,通过看博客等我先是写了一个最基础的servlet+jsp,再到后来开始用maven进行编程,最终的完成版是一个 Spri ...
- Angular之简单的登录注册
使用Angular实现了一个简单的登录注册的功能........ 涉及到的Angular知识点很少 主要是这个功能的实现...(*^__^*) 嘻嘻…… 里面涉及到的知识点记录: 1.本地存储的操作 ...
- Python 实现简单的登录注册界面
Python 实现简单的登录注册界面 注意:编写代码之前需要导入很重要的包 import tkinter as tk import pickle from tkinter import message ...
- vue koa2 mongodb 从零开始做个人博客(一) 登录注册功能前端部分
0.效果演示 插入视频插不进来,就很烦.可以出门右拐去优酷看下(点我!). 1.准备工作 1.1前端框架 前端使用了基于vue.js的nuxt.js.为什么使用nuxt.js? 首先我做的是博客的项目 ...
- Node.js实现登录注册功能
使用Node.js + Navicat for mysql实现的登录注册功能 数据库中存在有”user_id,user_name,password,user_img,user_number“字段,其中 ...
- flask 开发用户登录注册功能
flask 开发用户登录注册功能 flask开发过程议案需要四个模块:html页面模板.form表单.db数据库操作.app视图函数 1.主程序 # app.py # Auther: hhh5460 ...
随机推荐
- 前端基础:深入浅出 TCP/IP 协议栈
一个主机的数据要经过哪些过程才能发送到对方的主机上 参考:https://www.cnblogs.com/onepixel/p/7092302.html 首先我们梳理一下每层模型的职责: 链路层:对0 ...
- Spring Boot — 运行应用程序5种方式
1. 从IDE中的Run 按钮运行 你可以从IDE中运行Spring Boot应用, 就像一个简单的Java应用, 但是, 你首先需要导入项目. 导入步骤跟你的IDE和构建系统有关. 大多数IDEs能 ...
- 图解resilience4j容错机制
Resilience4j是一个轻量级.易于使用的容错库,其灵感来自Netflix Hystrix,但专为Java 8和函数式编程设计.轻量级,因为库只使用Vavr,它没有任何其他外部库依赖项.相比之下 ...
- Glusterfs读写性能测试与分析
一.测试目的: 1.测试分布卷(Distributed).分布式复制卷(Distributed-Replicate).条带卷(Strip)和分布式条带复制卷(Distributed-Strip-Rep ...
- java中执行cmd命令
一.java执行cmd命令的三种方式:http://www.jb51.net/article/80829.htm 参考:https://www.cnblogs.com/zhufu9426/p/7928 ...
- mysql 导入sql脚本中文乱码问题
1.数据库是否utf8 2.sql文件是否utf8
- 每日一题 - 剑指 Offer 41. 数据流中的中位数
题目信息 时间: 2019-06-30 题目链接:Leetcode tag: 大根堆 小根堆 难易程度:中等 题目描述: 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有 ...
- mysql无法启动服务,错误1067
安装mysql,提示安装成功后,启动服务,提示错误1067 前情提示:mysql安装文件和配置文件没有放在Program File文件夹下. 解决办法:将my.ini文件剪切放在Program Fil ...
- Zookeeper是什么&怎么用
1.Zookeeper概述 Zookeeper 是一个开源的分布式协调服务框架 ,主要用来解决分布式集群中应用系统的一致性问题和数据管理问题 2:Zookeeper的特点 Zookeeper 本质上是 ...
- Scala 基础(十四):Scala 模式匹配(二)
1 匹配数组 1)Array(0) 匹配只有一个元素且为0的数组. 2)Array(x,y) 匹配数组有两个元素,并将两个元素赋值为x和y.当然可以依次类推Array(x,y,z) 匹配数组有3个元素 ...