BeanUtils工具包下载(Jar包):https://pan.baidu.com/s/1h9Yi4pbNhYbRnLaF0Y8BtQ 密码:6kth
commons-beanutils-1.8.3.jar 和 commons-logging-1.1.1.jar包----Build Path----Add To Build Path
RegisterServlet:
package com.xxx.register;
import java.io.IOException;
import java.sql.SQLException;
import java.util.Map;
import java.util.UUID;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.dbutils.QueryRunner;
import com.xxx.utils.DataSourceUtils;
public class RegisterServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
//设置request的编码---只适合post方式
request.setCharacterEncoding("UTF-8");
//get方式乱码解决
//String username = request.getParameter("username"); //乱码参数
//username = new String(username.getBytes("iso8859-1"),"UTF-8");
//使用BeanUtils自动将用户参数(Map集合)映射封装成JavaBean实体对象
//map中的key与实体的属性保持对应
//只要key与实体的属性一样,就自动封装到实体中
Map<String, String[]> properties = request.getParameterMap();
User user = new User();
try {
BeanUtils.populate(user, properties); // 将map参数封装成user对象。
} catch (Exception e) {
e.printStackTrace();
}
//可以手动封装uid(注册)----uuid---随机不重复的字符串32位--java代码生成的是36位(多4个"-")
user.setUid(UUID.randomUUID().toString());
//........
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
doGet(request, response);
}
}