java mvc实现登录注册_mvc模式实现登录注册功能

1、创建项目

展示项目

2、数据库设计

4、首先写view视图jsp界面:

创建了个文件分别是index.jsp主界面,login.jsp登录界面,insert.jsp注册界面

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

My JSP 'index.jsp' starting page

${yonghu}登录

注册

${msg}

String path = request.getContextPath();

String basePath = request.getScheme() + "://"

+ request.getServerName() + ":" + request.getServerPort()

+ path + "/";

%>

登录界面

登录界面


用户名:

密码:

\

String path = request.getContextPath();

String basePath = request.getScheme() + "://"

+ request.getServerName() + ":" + request.getServerPort()

+ path + "/";

%>

注册界面

注册界面


用户名:

密码:

4、接下来是model层

他那javabean类

package cn.csdn.web.domain;

import java.io.Serializable;

public class Admin implements Serializable {

private Integer id;

private String name;

private String pass;

private String sex;

private Integer age;

public Admin() {

super();

// TODO Auto-generated constructor stub

}

public Integer getId() {

return id;

}

public void setId(Integer id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getPass() {

return pass;

}

public void setPass(String pass) {

this.pass = pass;

}

public String getSex() {

return sex;

}

public void setSex(String sex) {

this.sex = sex;

}

public Integer getAge() {

return age;

}

public void setAge(Integer age) {

this.age = age;

}

}

dao接口

package cn.csdn.web.dao;

import cn.csdn.web.domain.Admin;

public interface AdminDao {

boolean select(Admin entity);

boolean insert(Admin entity);

}

实现类

package cn.csdn.web.dao;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import cn.csdn.web.domain.Admin;

public class AdminDaoImpl implements AdminDao {

private static Connection conn = null;

private PreparedStatement pstmt = null;

private ResultSet rs = null;

private static final String URL = "jdbc:mysql://localhost:3306/3g?user=root&password=123&useUnicode=true&characterEncoding=UTF-8";

static {

try {

Class.forName("com.mysql.jdbc.Driver");

try {

conn = DriverManager.getConnection(URL);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

private void release(ResultSet rs, PreparedStatement pstmt) {

if (rs != null) {

try {

rs.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

if (pstmt != null) {

try {

pstmt.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

public boolean select(Admin entity) {

// 声明返回值变量

boolean flag = false;

// 声明sql语句

String sql = "select * from admin where name=? and pass=?";

try {

// 创建

pstmt = conn.prepareStatement(sql);

// 为占位符赋值

int index = 1;

pstmt.setObject(index++, entity.getName());

pstmt.setObject(index++, entity.getPass());

// 执行更新

rs = pstmt.executeQuery();

if (rs.next()) {

flag = true;

System.out.println("e");

}

release(rs, pstmt);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

release(rs, pstmt);

// 修改返回值变量

return flag;

}

public boolean insert(Admin entity) {

boolean flag = false;

String sql = "insert into admin(name,pass) values(?,?)";

try {

pstmt = conn.prepareStatement(sql);

int index = 1;

pstmt.setObject(index++, entity.getName());

pstmt.setObject(index++, entity.getPass());

int i = pstmt.executeUpdate();

if (i > 0) {

flag = true;

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

release(rs, pstmt);

return flag;

}

}

5、最后是control层

package cn.csdn.web.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import cn.csdn.web.dao.AdminDao;

import cn.csdn.web.dao.AdminDaoImpl;

import cn.csdn.web.domain.Admin;

public class LoginServlet extends HttpServlet {

private AdminDao aDao = new AdminDaoImpl();

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setCharacterEncoding("utf-8");

request.setCharacterEncoding("utf-8");

String method = request.getParameter("methodName");

if (method.equals("0")) {

select(request, response);

request.getRequestDispatcher("./index.jsp").forward(request,

response);

} else if (method.equals("1")) {

insert(request, response);

request.getRequestDispatcher("./index.jsp").forward(request,

response);

} else {

System.out.println("大大大失败");

}

}

public void select(HttpServletRequest request, HttpServletResponse response) {

String name = request.getParameter("name");

String pass = request.getParameter("pass");

Admin entity = new Admin();

entity.setName(name);

entity.setPass(pass);

boolean flag = aDao.select(entity);

if (flag) {

System.out.println("登录成功");

request.setAttribute("yonghu", name);

request.setAttribute("msg", "登录成功");

} else {

System.out.println("登录失败");

}

}

public void insert(HttpServletRequest request, HttpServletResponse response) {

String name = request.getParameter("name");

String pass = request.getParameter("pass");

Admin entity = new Admin();

entity.setName(name);

entity.setPass(pass);

boolean flag = aDao.insert(entity);

if (flag) {

System.out.println("注册成功");

} else {

System.out.println("注册失败");

}

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

this.doGet(request, response);

}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值