JAVA项目之注册
public class RegisterServlet extends HttpServlet {
private UsersService usersService = new UsersService();
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 解决request的中文乱码
request.setCharacterEncoding("UTF-8");
// 获取用户输入的验证码
String checkcode = request.getParameter("checkCode");
// 获取Session中的验证码
String code = (String) request.getSession().getAttribute("checkcode_session");
// 进行比较判断
if (!checkcode.equals(code)) {
//System.out.println("验证码错误!");
request.setAttribute("info", "验证码错误!");
request.getRequestDispatcher("/register.jsp").forward(request, response);
return;
}
// 获取所有请求参数的MAP集合
Map<String, String[]> map = request.getParameterMap();
// 创建users对象
Users users = new Users();
// 用BeanUtils中的方法将map集合中的参数封装到Users对象中
// 原理:根据map中的key 跟user对象中的属性名一一映射
try {
BeanUtils.populate(users, map);
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 封装uid(随机产生36位不重复的id)
users.setUid(UUID.randomUUID().toString());
// 调Service方法
System.out.println(users);
usersService.register(users);
// 成功后,重定向到登录页面
response.sendRedirect(request.getContextPath() + "/login.jsp");
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
private UsersDao usersDao=new UsersDao();
//注册
public void register(Users users){
try {
usersDao.register(users);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// 注册
public void register(Users users) throws SQLException {
/*
* Connection conn = JDBCUtils.getConn(); String sql =
* "insert into users(uid,username,password,email,name,sex,birthday) values(?,?,?,?,?,?,?)"
* ; PreparedStatement pst=conn.prepareStatement(sql); pst.setString(1,
* users.getUid()); pst.setString(2, users.getUsername());
* pst.setString(3, users.getPassword()); pst.setString(4,
* users.getEmail()); pst.setString(5, users.getName());
* pst.setString(6, users.getSex()); pst.setString(7,
* users.getBirthday()); //执行sql pst.executeUpdate(); //释放资源
* JDBCUtils.close(conn, pst);
*/
QueryRunner qr = new QueryRunner(MyDBUtils.getDataSource());
String sql = "insert into users(uid,username,password,email,name,sex,birthday) values(?,?,?,?,?,?,?)";
qr.update(sql, new Object[] { users.getUid(), users.getUsername(), users.getPassword(), users.getEmail(),
users.getName(), users.getSex(), users.getBirthday() }); }
JAVA项目之注册的更多相关文章
- Java学习之道:Java项目打包发布
Java项目打包发布 如果只想发布为一个可执行的jar包,使用eclipse的Export功能就可以了 使用eclipse的Export功能,将项目中的所有package打包为一个pet.jar文件, ...
- Discuz3.2与Java 项目整合单点登陆
JAVA WEB项目与Discuz 论坛整合的详细步骤完全版目前未有看到,最近遇到有人在问,想到这个整个不是一时半会也解释不清楚.便把整个整合过程以及后续碰到的问题解决方案写下,以供参考. 原理 Di ...
- Myeclipse10.7安装git插件并将Java项目上传到码云(github)
注:本文来源:外匹夫的<Myeclipse10.7安装git插件并将Java项目上传到码云(github)> 一.先说说安装egit插件的步骤(安装egit不成功的原因主要是下载的egit ...
- 2017年11月GitHub上最热门的Java项目出炉
2017年11月GitHub上最热门的Java项目出炉~ 一起来看看这些项目你使用过哪些呢? 1分布式 RPC 服务框架 dubbohttps://github.com/alibaba/dubbo S ...
- UCenter在JAVA项目中实现的单点登录应用实例
Comsenz(康盛)的UCenter当前在国内的单点登录领域占据绝对份额,其完整的产品线令UCenter成为了账号集成方面事实上的标准. 基于UCenter,可以将Comsenz旗下的Discuz! ...
- mc01_IntelliJ IDEA安装与Java项目创建以及Tomcat配置
IntelliJ IDEA安装与激活 下载地址:http://www.jetbrains.com/idea/ 安装下一步下一步即可,关键是注册激活,该部分分两个步骤: 1. 配置windows hos ...
- java项目热加载工具jrebel
flask有热加载的功能,修为代码后,自动生效. java项目也有类似的功能,不过需要使用收费的插件jrebel 提供一个免费的注册服务器:http://139.199.89.239:1008/884 ...
- Java项目打包发布
Java项目打包发布 如果只想发布为一个可执行的jar包,使用eclipse的Export功能就可以了 使用eclipse的Export功能,将项目中的所有package打包为一个pet.jar文件, ...
- 阿里云部署java项目
第一步:注册阿里云账号(如果有请看第二步) 1.百度搜索阿里云,点击进入阿里云官网 2.点击右上角免费注册 3.进入注册页面,按照要求填写信息 4.注册完成后登陆 登陆之后首先购买阿里云esc与服务器 ...
随机推荐
- 通过 UNSAFE 来实现一个 Atomic 的 CAS 辅助类【原创】
public abstract class AbstractUnSafeCas<T> { @SuppressWarnings("unused") private vol ...
- 解决Linux系统下面javamelody图片中文乱码问题
从windows系统中,copy了C:\Windows\Fonts\msyh.ttc和msyhbd.ttc 2个文件到 服务器的%JAVA_HOME%\jre\lib\fonts\fallback 目 ...
- JS 从整数里 随机选一个
比如:现有数字随机一个 num = 3)) // 现有数随机一个 randomNum 的值只会是 0 1 2 3 里的随机一个 如果想要从数组随机一个下标index 就不要+1 如: parseInt ...
- DSCP 标
DSCP差分服务代码点(Differentiated Services Code Point).它在每个数据包IP头部的服务类别TOS标识字节中,利用已使用的6比特和未使用的2比特,通过编码值来区分优 ...
- Python 精选文章
操作Excel,通过宏调用Pyhton(VBA调Python) 第一个django项 https://www.jianshu.com/p/45b07d8cd819
- aliyun手记
阿里云里面购买的带宽是指外网带宽,内网默认是千兆带宽,做过I/O优化的则是万兆带宽. 修改密码实在更多(三个点)的那里进行修改的:修改密码(windows是administrator以及Linux是r ...
- C++排序算法比较
排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 我们这里说说八大排序就是内部排序. ...
- AIX日志相关的命令
常用的命令有: 1.列出简短的出错信息 errpt | more 2.列出所有硬件出错信息 errpt -d H 3.列出所有软件错误信息 errpt -d S 4.列出详细的出错信息 errpt – ...
- 最新 多点Dmalljava校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.多点Dmall等10家互联网公司的校招Offer,因为某些自身原因最终选择了多点Dmall.6.7月主要是做系统复习.项目复 ...
- Ubuntu18.04LTS python3.6 cuda10.0 下安装低版本的pytorch
Ubuntu18.04LTS python3.6 cuda10.0 下安装低版本的pytorch,运行Hypergraph Neural Networks(HGNN) https://github.c ...