servlet简易登录

步骤分析:
1.创建数据库和表结构

CREATE DATABASE day09;
	USE day09;
	CREATE TABLE USER(
		id INT PRIMARY KEY AUTO_INCREMENT,
		username VARCHAR(20),
		PASSWORD VARCHAR(20)
	);

INSERT INTO USER VALUES(NULL,'tom','123');
INSERT INTO USER VALUES(NULL,'jack','123');



2.创建动态的web项目(Dynamic Web Project,2.5版本)


3.创建包结构 utils servlet service dao bean


4.导入项目需要的jar包(c3p0,mysql,dbutils放web-inf→lib里),工具类(DatasourceUtils),配置文件(xml)


5.导入项目需要的静态文件(前端的文件)


6.编写LoginServlet
//获取用户名和密码
//创建servlice并调用方法
//判断用户输入的数据在数据库是否存在
若存在: xxx:欢迎回来
若不存在: 登录失败

   package com.gongsi.servlet;

import java.io.IOException;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.gongsi.bean.User;
import com.gongsi.service.LoginService;

public class LoginServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//设置编码
		response.setHeader("content-type", "text/html;charset=utf-8");
		//获取login.htm表单中请求的用户名和密码(这个username是input里属性name的值)
		String username=request.getParameter("username");
		String password=request.getParameter("password");
		//创建loginservice
		LoginService ls=new LoginService();
		try {
			//调用service中的方法
			User user=ls.getUserByUsernameAndPwd(username,password);
			//根据返回的对象,判断提示信息的内容
			if(user==null){
				response.getWriter().println("账号密码错误");
			}else{
				response.getWriter().println(user.getUsername()+"欢迎回来");
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}



7.编写LoginService
//创建LoginDao
//调用dao中的方法

package com.gongsi.service;

import java.sql.SQLException;

import com.gongsi.bean.User;
import com.gongsi.dao.LoginDao;

public class LoginService {

	public User getUserByUsernameAndPwd(String username, String password) throws SQLException {
		// TODO Auto-generated method stub
		//创建LoginDao
		LoginDao ld=new LoginDao();
		
		return ld.geeUserByUsernameAndPwd(username,password);
	}
}



8.编写LoginDao
//创建QueryRunner对象
//编写sql
//执行sql

package com.gongsi.dao;

import java.sql.SQLException;

import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;

import com.gongsi.bean.User;
import com.gongsi.utils.DataSourceUtils;

public class LoginDao {

	public User geeUserByUsernameAndPwd(String username, String password) throws SQLException {
		// TODO Auto-generated method stub
		//创建qr
		QueryRunner qr = new QueryRunner(DataSourceUtils.getDataSource());
		//编写sql
		String sql="select * from user where username=? and password=?";
		//执行sql
		User user = qr.query(sql, new BeanHandler<User>(User.class), username,password);
		return user;
	}

}



Bean

package com.gongsi.bean;

public class User {
	
	private int id;
	private String username;
	private String password;
	
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
}

猜你喜欢

转载自blog.csdn.net/qq_44063001/article/details/88078050