新建表:
admin:id,name ,password id
直接在表admin中添加一个管理员:1,hongten,132
新建web 项目:
在WebRoot目录先新建一个文件夹:admin
login.jsp
代码;
* { font-family: "宋体"; font-size: 14px }
请您输入用户名与密码
用户名: | |
密码: | |
-------------------------------------Hongten------------------------------------------------
loginFail.jsp
代码;
login fail对不起,输入的用户名与密码不正确。
-------------------------------------Hongten------------------------------------------------
AdminUserServlet.java
代码;
package webbook.guestbook;
import java.io.IOException;
import java.util.List;
import javax.servlet.*;
import javax.servlet.http.*;
import webbook.util.*;
import org.apache.commons.dbutils.handlers.MapListHandler;
public class AdminUserServlet extends HttpServlet {
private static final long serialVersionUID = 5801558969966197290L;
public void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String message = "";
String username = request.getParameter("username");
String password = request.getParameter("password");
if (StringUtil.validateNull(username)) {
message = "对不起,姓名不能为空,请您重新输入!
";
} else if (StringUtil.validateNull(password)) {
message = "对不起,密码不能为空,请您重新输入!
";
} else {
String param[] = { username, password };
OracleUtil db = new OracleUtil("java:/comp/env/jdbc/oracleds");
db.init();
List result = (List) db.query("select id from admin where username=? and password=?", param,
new MapListHandler());
if (result.size() == 0) {
message = "对不起,用户名或者密码错误";
request.setAttribute("guesbook.admin.login.message", message);
request.getRequestDispatcher("/admin/loginFail.jsp").forward(request, response);
} else {
HttpSession session = request.getSession();
session.setAttribute("guesbook.admin.username", username);
response.sendRedirect(request.getContextPath()+"/admin/secure/manage?q=list");
}
}
}
public void logout(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession();
session.removeAttribute("guesbook.admin.username");
response.sendRedirect(request.getContextPath()+"/admin/login.jsp");
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String method = request.getParameter("q");
if (method != null && method.equals("login")) {
login(request, response);
} else {
logout(request, response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
-------------------------------------Hongten------------------------------------------------
AuthenticationFilter.java
代码:
package webbook.guestbook;
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.*;
public class AuthenticationFilter implements Filter {
String url = "/";
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
ServletException {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletResponse) response;
HttpSession session = req.getSession();
if (session.getAttribute("guesbook.admin.username") == null) {
res.sendRedirect(req.getContextPath() + url);
} else {
chain.doFilter(request, response);
}
}
public void init(FilterConfig config) throws ServletException {
url = config.getInitParameter("url");
}
}
-------------------------------------Hongten------------------------------------------------
web.xml
代码:
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
EncodingFilter
webbook.chapter15.CharacterEncodingFilter
encoding
UTF-8
AuthenticationFilter
webbook.guestbook.AuthenticationFilter
url
/admin/login.jsp
EncodingFilter
/*
AuthenticationFilter
/admin/secure/*
AddMessageServlet
webbook.guestbook.AddMessageServlet
GetMessagesServlet
webbook.guestbook.GetMessagesServlet
ManageServlet
webbook.guestbook.ManageServlet
AdminUserServlet
webbook.guestbook.AdminUserServlet
AddMessageServlet
/servlet/addMessage
GetMessagesServlet
/servlet/getMessages
AdminUserServlet
/admin/user
ManageServlet
/admin/secure/manage
-------------------------------------Hongten------------------------------------------------
ManagerServlet.java
代码:
package webbook.guestbook;
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import webbook.util.OracleUtil;
public class ManageServlet extends HttpServlet {
OracleUtil db = null;
private static final long serialVersionUID = 204655027689309554L;
public void edit(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String params[] = { request.getParameter("id") };
String sql = "select * from guestbook where id=?";
List list = (List) db.query(sql, params, new BeanListHandler(Guestbook.class));
request.setAttribute("guestbook.admin.edit", list.get(0));
request.getRequestDispatcher("/admin/secure/edit.jsp").forward(request, response);
}
public void update(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String params[] = { request.getParameter("name"), request.getParameter("email"), request.getParameter("phone"),
request.getParameter("title"), request.getParameter("content"), request.getParameter("id") };
int i = db.update("update guestbook set name=?,email=?,phone=?,title=? ,content=? where id=?", params);
if (i == 1) {
request.setAttribute("guestbook.admin.update.message", "更新成功!");
Guestbook gb = new Guestbook();
gb.setId(Integer.parseInt(request.getParameter("id")));
gb.setName(request.getParameter("name"));
gb.setEmail(request.getParameter("email"));
gb.setPhone(request.getParameter("phone"));
gb.setTitle(request.getParameter("title"));
gb.setContent(request.getParameter("content"));
request.setAttribute("guestbook.admin.edit", gb);
} else {
request.setAttribute("guestbook.admin.update.message", "更新失败!");
} request.getRequestDispatcher("/admin/secure/updateResult.jsp").forward(request, response);
}
public void delete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String params[] = { request.getParameter("id") };
int i = db.update("delete from guestbook where id=?", params);
if (i == 1) {
request.setAttribute("guestbook.admin.delete.message", "删除成功");
} else {
request.setAttribute("guestbook.admin.delete.message", "删除失败");
} request.getRequestDispatcher("/admin/secure/deleteResult.jsp").forward(request, response);
}
public void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List list = (List) db.query("select id,name,title from guestbook order by id desc", null, new BeanListHandler(
Guestbook.class));
request.setAttribute("guestbook.admin.list", list);
request.getRequestDispatcher("/admin/secure/list.jsp").forward(request, response);
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
db = new OracleUtil("java:/comp/env/jdbc/oracleds");
db.init();
String method = request.getParameter("q");
if(method==null){
method="list";
}
if (method.equals("edit")) {
edit(request, response);
} else if (method.equals("delete")) {
delete(request, response);
} else if (method.equals("update")) {
update(request, response);
} else {
list(request, response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
-------------------------------------Hongten------------------------------------------------
updateResult.jsp
代码:
编号: | |
姓名: | |
电话: | |
email: | |
主题: | |
内容: | |
时间: |
-------------------------------------Hongten------------------------------------------------
deleteResult.jsp
代码:
list.jsp
代码;
* {font-family: "宋体";font-size: 14px}
所有留言内容
style="table-layout: fixed; word-break: break-all">
留言编号:${gb.id}作者:主题:操作选项:-------------------------------------Hongten------------------------------------------------
edit.jsp
代码:
修改留言
姓名: | |
E-Mail: | |
电话: | |
主题: |
window.onload = function(){
var oFCKeditor = new FCKeditor( 'content' ) ;
oFCKeditor.BasePath = '${ctx}/fckeditor/' ;
oFCKeditor.ToolbarSet = 'Basic';
oFCKeditor.Height = 300 ;
oFCKeditor.ReplaceTextarea() ;
}
内容:${gb.content}
-------------------------------------Hongten------------------------------------------------
感谢:v512工作室-刘伟
-------------------------------------Hongten------------------------------------------------