Я пытаюсь создать крошечный музыкальный форум, который требует от пользователя регистрации и входа в систему, чтобы прокомментировать понравившуюся песню, их информация будет храниться в базе данных mysql. Я использую модель MVC для управления всем: Регистрация, Регистрация, Вход. Но теперь я не знаю, как оставить комментарий пользователя и показать все свои комментарии ниже страницы песни (их комментарий также будет сохранен в базе данных). Вот мой код, я пытался до сих пор:комментировать музыкальный форум
controller.java:
String action = request.getParameter("submit");
if (action.equals("Register")){
String Uname = request.getParameter("uname");
String Pword = request.getParameter("pass");
String Email = request.getParameter("mail");
boolean check = false;
try {
signin signin = new signin();
check = signin.check(Uname);
if (check)
request.setAttribute("error","This user has already been registered");
}
catch(Exception e){
System.out.println("Exception");
}
if (check){
RequestDispatcher dispatch = request.getRequestDispatcher("signin.jsp");
dispatch.forward(request, response);
}
else{
try{
signin signin = new signin();
signin.register(Uname, Email, Pword);
response.sendRedirect("registersuccess.jsp");
}
catch(Exception e)
{
System.out.println("Exception");
}
}
}
if (action.equals("Login")){
HttpSession session=request.getSession();
String username=request.getParameter("u1");
String password=request.getParameter("u2");
boolean check = false;
try {
signin a = new signin();
check = a.checkuser(username, password);
}
catch(Exception e){System.out.println("Exception");}
if(check){
session.setAttribute("username",username);
response.sendRedirect("home.jsp");
}
else{
request.setAttribute("error","ERROR! Wrong Username or Password. Try again!");
RequestDispatcher dispatch=request.getRequestDispatcher("signinfail.jsp");
dispatch.forward(request, response);
}
}
if (action.equals("Logout")){
HttpSession session=request.getSession();
session.invalidate();
response.sendRedirect("home.jsp");
}
bean.java:
public void register(String uname, String pass, String email)
throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException {
String driver = "com.mysql.jdbc.Driver";
Class.forName(driver).newInstance();
String url = "jdbc:mysql://localhost:3306/";
String dbName = "webauth";
String userName = "root";
String passWord = "";
Connection conn = DriverManager.getConnection(url + dbName, userName, passWord);
PreparedStatement statement;
statement = conn.prepareStatement("insert into data(username, email, password)" + " values (?,?,?)");
statement.setString(1, uname);
statement.setString(2, pass);
statement.setString(3, email);
statement.executeUpdate();
statement.clearParameters();
statement.close();
conn.close();
}
public boolean check(String username)
throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException {
boolean b = false;
Connection connection = null;
Class.forName("com.mysql.jdbc.Driver").newInstance();
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/webauth", "root", "");
Statement statement = connection.createStatement();
ResultSet rs = statement.executeQuery("SELECT username FROM data");
while (rs.next()) {
if (rs.getString("username").equals(username)) {
b = true;
break;
} else {
b = false;
}
}
rs.close();
return b;
}
public boolean checkuser(String username, String password)
throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException {
boolean b = false;
Connection connection = null;
Class.forName("com.mysql.jdbc.Driver").newInstance();
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/webauth", "root", "");
Statement statement = connection.createStatement();
ResultSet rs = statement.executeQuery("SELECT username,password FROM data");
while (rs.next()) {
if (rs.getString("username").equals(username) && rs.getString("password").equals(password)) {
b = true;
break;
} else {
b = false;
}
}
rs.close();
return b;
}
Вопрос кажется очень расплывчатым ... «MVC» - очень общий термин. в чем именно проблема?: Что вы сделали для решения проблемы? Какие рамки вы используете? Действительно ли этот код имеет какое-либо отношение к добавлению комментария? – hyde
на самом деле я понятия не имею, как опубликовать и показать весь комментарий, что пользователи разместили ниже песни. Все, что я могу сделать, это просто сохранить его в базе данных – trivip93