new353.java
package pack03;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
/**
* @author user1
*/
@WebServlet(name = "new353",urlPatterns = "/page04/new353")
//@WebServlet(name = "new353",urlPatterns = {"/page04/new353","/new353"})
public class new353 extends HttpServlet
{
@Override
public void init(ServletConfig config) throws ServletException
{
super.init(config);
try
{
Class.forName("com.mysql.jdbc.Driver");
}
catch (Exception ignored)
{
}
}
public String handleString(String s)
{
try
{
byte[] bb = s.getBytes(StandardCharsets.ISO_8859_1);
s = new String(bb);
}
catch (Exception ignored)
{
}
return s;
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
//super.doPost(req, resp);
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
Connection conn;
PreparedStatement ptmt;
new350 reg = new new350();
request.setAttribute("register",reg);
String loginName = request.getParameter("loginName").trim();
String pwd = request.getParameter("pwd").trim();
String sex = request.getParameter("sex").trim();
int age = Integer.parseInt(request.getParameter("age").trim());
String phone = request.getParameter("phone").trim();
String email = request.getParameter("email").trim();
String mess = request.getParameter("mess").trim();
String url = "jdbc:mysql://localhost:3306/test?&useUnicode=true&characterEncoding=utf8";
boolean isLD = true;
for (int i=0;i<loginName.length();i++)
{
char c = loginName.charAt(i);
if (!((c<= 'z' && c>= 'a') || (c<='Z' && c>='A') || (c<='9' && c>='0')))
{
isLD = false;
}
}
String backNews = "";
try
{
conn = DriverManager.getConnection(url,"root","mysql123");
String sql = "insert into ab_member(loginname,password,sex,age,phone,email,message,picture) values(?,?,?,?,?,?,?,?)";
ptmt = conn.prepareStatement(sql);
if(isLD)
{
ptmt.setString(1,loginName);
ptmt.setString(2,pwd);
ptmt.setString(3,sex);
ptmt.setInt(4,age);
ptmt.setString(5,phone);
ptmt.setString(6,email);
ptmt.setString(7,mess);
ptmt.setString(8,"xx.jpg");
int result = ptmt.executeUpdate();
if (result != 0)
{
backNews = "注册成功";
reg.setBacknews(backNews);
reg.setLoginname(loginName);
reg.setPwd(handleString(pwd));
reg.setAge(age);
reg.setSex(handleString(sex));
reg.setEmail(handleString(email));
reg.setPhone(phone);
reg.setMessage(handleString(mess));
}
}
else
{
backNews = "信息填写不完整或名字中有非法字符";
reg.setBacknews(backNews);
}
conn.close();
}
catch (SQLException exp)
{
backNews = "该会员名已被使用,请更换名字" + exp;
reg.setBacknews(backNews);
}
RequestDispatcher dispatcher = request.getRequestDispatcher("/page04/new352.jsp");
dispatcher.forward(request,response);
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
doPost(request,response);
}
}
new354.java
package pack03;
//login
public class new354
{
private String loginName;
private String pwd;
private String backNews;
boolean success = false;
public String getLoginName()
{
return loginName;
}
public void setLoginName(String loginName)
{
this.loginName = loginName;
}
public String getPwd()
{
return pwd;
}
public void setPwd(String pwd)
{
this.pwd = pwd;
}
public String getBackNews()
{
return backNews;
}
public void setBackNews(String backNews)
{
this.backNews = backNews;
}
public boolean isSuccess()
{
return success;
}
public void setSuccess(boolean success)
{
this.success = success;
}
}