Javaweb——Servlet分層思想源代碼

分層結構,service,dao,表示層

UserBean

public class User {
	private String id;
	private String number;
	private String password;
	
	public User(String id ,String number,String password) {
		super();
		this.id = id;
		this.number = number;
		this.password = password;
	}
	
	public  User(String number, String password,String name) {
		super();
		this.number = number;
		this.password = password;
	}
	
	public User(String number, String password) {
		super();
		this.number = number;
		this.password = password;
	}
	
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	
}

DBUtil

public class DButil {
	private static final String url = "jdbc:mysql://localhost:3306/information_db" + "?useSSL=true&characterEncoding=UTF-8";
	private static final String USERNAME = "admin";
	private static final String PWD = "root";
	public static Connection con = null;
	public static PreparedStatement pstmt = null;
	public static ResultSet res = null;

	public static boolean executeUpdate(String sql, Object...params) {
		int result = -1;
		try {
			Class.forName("com.mysql.jdbc.Driver");
			con = DriverManager.getConnection(url, USERNAME, PWD);
			pstmt = con.prepareStatement(sql);
			if (params != null) {
				for (int i = 0; i < params.length; i++) {
					pstmt.setObject(i + 1, params[i]);
				}
			}
			result = pstmt.executeUpdate();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			Close();
		}
		return result > 0 ? true : false;
	}

	public static void Close() {
		try {
			if (res != null)
				res.close();
			if (pstmt != null)
				pstmt.close();
			if (con != null)
				con.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

	public static ResultSet executeQuery(String sql, Object...params) {
		try {
			Class.forName("com.mysql.jdbc.Driver");
			con = DriverManager.getConnection(url, USERNAME, PWD);
			pstmt = con.prepareStatement(sql);
			if (params != null) {
				for (int i = 0; i < params.length; i++) {
					pstmt.setObject(i + 1, params[i]);
				}
			}
			res = pstmt.executeQuery();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return res;
	}	
	
}

LoginDao

public class LoginDao {

	public int Login(User user) {
		int flag = -1;
		String sql = "select count(*) from student where number = ? and password = ? ";
		ResultSet res = DButil.executeQuery(sql, user.getNumber(), user.getPassword());
		try {
			if (res.next()) {
					flag = 1;
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		return flag;
	}

	public int register(User user) {
		int flag = -1;
		String sql = "insert into student(id,number,password,name,sex,college,tel,address) values(null,?,?,?,?,?,?,?)";
			Boolean res = DButil.executeUpdate(sql, new Object[] { user.getNumber(), user.getPassword(),
					user.getName(),user.getSex(),user.getCollege(), user.getTel(), user.getAddress() });
			System.out.println("c");
			if (res) {
				flag = 1;
			}
		
		return flag;
	}
		
}

CheckIn(Servlet)

public class CheckIn extends HttpServlet {

	
	public CheckIn() {
		super();
	}
	public void destroy() {
		super.destroy(); // Just puts "destroy" string in log
		// Put your code here
	}
	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request,response);
	}
	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setCharacterEncoding("utf-8");
		String number=request.getParameter("usernumber");		
		String password=request.getParameter("password");
		User user=new User(number,password);
		LoginDao dao=new LoginDao();
		int result=dao.Login(user);
		if(result>0) {
			request.setAttribute("number", number);
			request.getRequestDispatcher("Welcome.jsp").forward(request,response);
		}else {
			response.sendRedirect("Failure.jsp");
		}
	}
	public void init() throws ServletException {
		// Put your code here
	}
}

index.jsp

<form action="CheckIn" method="post">
<div class="form_item">
<label for="usernumber">學號:</label> <input type="text" name="usernumber" id="usernumber" placeholder="請輸入學號!" required>
</div>
<div class="form_item">
<label for="password">密碼:</label> <input type="password" name="password" id="password" placeholder="請輸入密碼!" required>
</div>
<div class="form_item">
<input type="submit" name="登錄" value="登錄"> 
<a class = "link" href = "http://127.0.0.1:8080/Information_manage_Jsp/Rejister.jsp">點擊註冊</a>
</div>
</form>	

Welcome.jsp

<%
   	request.setCharacterEncoding("utf-8");
   	String number = (String) request.getAttribute("number");
	out.print(number);
%>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章