| |
JDBC:
Lab 2
/**
* Created by IntelliJ IDEA.
* User: Administrator
* Date: Mar 7, 2003
* Time: 7:53:32 AM
* To change this template use Options | File Templates.
*/
package com.annedirkse;
import java.sql.*;
import java.util.List;
public class UserManager {
private static UserManager ourInstance;
public synchronized static UserManager getInstance() {
if (ourInstance == null) {
ourInstance = new UserManager();
}
return ourInstance;
}
public boolean addUser(String username, String password) {
ConnectionManager conMan = ConnectionManager.getInstance();
String sql = "insert into users(username, password) values('"+username+"','"+password+"')";
try {
Connection con = conMan.getConnection();
Statement state = con.createStatement();
int i = state.executeUpdate(sql);
if (i > 0) {
return true;
}
}
catch(SQLException e) {
e.printStackTrace();
}
return false;
}
public boolean usernameExists(String username) {
String sql = "select count(*) from users where username = ?";
try {
ConnectionManager conMan = ConnectionManager.getInstance();
Connection con = conMan.getConnection();
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1, username);
ResultSet rs = ps.executeQuery();
while(rs.next()) {
if (rs.getInt(1) > 0) {
return true;
}
}
}
catch(SQLException e) {
e.printStackTrace();
}
return false;
}
public boolean isValidLogin(String username, String password) {
String sql = "select count(*) from users where username = ? and password = ?";
try {
ConnectionManager conMan = ConnectionManager.getInstance();
Connection con = conMan.getConnection();
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1, username);
ps.setString(2, password);
ResultSet rs = ps.executeQuery();
while(rs.next()) {
if (rs.getInt(1) > 0) {
return true;
}
}
}
catch(SQLException e) {
e.printStackTrace();
}
return false;
}
public static void main(String[] args) {
UserManager userMan = UserManager.getInstance();
System.out.println(userMan.usernameExists("anne"));
System.out.println(userMan.isValidLogin("dirkse", "password"));
}
private UserManager() {
}
}
package com.annedirkse;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.ServletException;
import javax.servlet.RequestDispatcher;
import java.io.IOException;
/**
* Created by IntelliJ IDEA.
* User: Administrator
* Date: Mar 7, 2003
* Time: 10:05:55 AM
* To change this template use Options | File Templates.
*/
public class AddUser extends HttpServlet {
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
String password2 = request.getParameter("password2");
if ((password == null)||((!password.equals(password2))||(password.length() < 1))) {
RequestDispatcher rd1 = this.getServletContext().getRequestDispatcher("/addUser.jsp");
}
UserManager userMan = UserManager.getInstance();
RequestDispatcher rd;
if(!userMan.usernameExists(username)) {
if (userMan.addUser(username, password)) {
rd = this.getServletContext().getRequestDispatcher("/products.jsp");
}
else {
rd = this.getServletContext().getRequestDispatcher("/addUser.jsp");
}
rd.forward(request, response);
}
else {
rd = this.getServletContext().getRequestDispatcher("/addUser.jsp");
}
}
}
<html>
<head><title></title></head>
<body>
<form action="addUser" method="POST">
<input type="text" name="username">
<input type="password" name="password">
<input type="password" name="password2">
<input type="submit" value="Add User">
</form>
</body>
</html>
|
 |