162-javaweb简单注册

44 篇文章 0 订阅
20 篇文章 0 订阅



javaweb简单注册


先创建一个UserDao

public class UserDao{
	private QueryRunner qr=new QueryRunner();
	
	//按用户名查询
	public User findByUsername(String username){
		try{
		String sql="select * from tb_user where username=?";
		return qr.query(sql,new BeanHandler<User>(User.class,username);
		}catch(SQLException e){
		throw new RuntimeException(e);
		}
	}

	//按邮箱查询
	public User findByEmail(String email){
		try{
		String sql="select * from tb_user where email=?";
		return qr.query(sql,new BeanHandler<User>(User.class,email);
		}catch(SQLException e){
		throw new RuntimeException(e);
		}
	}

//添加用户
public void add(User user){
try{
String sql="insert into tb_user values(?,?,?,?)";
Object[] params={user.getId(),
	user.getUsername(),
	user.getPassword(),
	user.getEmail()};
qr.update(sql,params);
}catch(SQLException e){
	throw new RuntimeException(e);
}
}
}




然后我们创建UserService
public class UserService{
	private UserDao userDao=new UserDao();
	
public void register throws UserException(User form){

//校验用户名
User user =userDao.findByUsername(form.getUsername());
if(user!=null) throw new UserException("用户名已存在");

//校验Email
User user =userDao.findByEmail(form.getEmail());
if(user!=null) throw new UserException("Email已存在");

//插入用户到数据库
userDao.add(form);

}
}




然后我们创建一个UserException
public class UserException extends Exception{
	public UserException(){
	super();
	}

	public UserException(String message){
	super(message);
	}
}





然后我们创建一个Servlet
public class UserSerlet extends BaseServlet{

private UserService userService=new UserService();

public String register(HttpServletRequest request,
		HttpServletResponse response)
		throws SerletException, IOException{

//封装表单数据到form对象中
User form =CommonUtils.toBean(request.getParameterMap(),User.class);

//输入校验
Map<String,String> errors=new HashMap<String,String>();

//调用service方法完成注册
String username=form.getUsername();
if(username==null || user.trim().isEmpty()){
	errors.put("username","用户名不能为空");
}else if(username.length()<3 || username.length()>10){
	errors.put("username","用户名长度必须在3-10之间");
}

//保存成功信息转发到msg.jsp
if(errors.size()>0){

	//保存错误信息
	//保存表单数据
	//转发到register.jsp
	request.setAttribute("errors",errors);
	request.setAttribute("form",form);
	return "f:/user/register.jsp";
}


//调用service的register()方法
try{
	userService.register(form);

}catch(UserException e){
	request.setAttribute("msg",e.getMessage());
	request.setAttribute("form",form);
	return "f:/user/register.jsp";
}


//userService执行成功,没有异常
//保存成功信息
//转发到msg.jsp
request.setAttribute("msg","注册成功");
return "f:/user/msg.jsp";

}

}



 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值