作者主页:Java毕设网
简介:Java领域优质创作者、Java项目、学习资料、技术互助
文末获取源码
一、项目介绍
本项目分为前台与后台,前台为游客浏览,后台为管理员管理;
管理员角色包含以下功能:
管理员登录,管留言信息修改,景点管理,资讯管理,图片库管理,留言管理,管理员管理等功能。
用户角色包含以下功能:
用户首页,景点介绍,人文地理,地区资讯,留言等功能。
二、环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
6.是否Maven项目:否;
三、技术栈
HTML5+Ajax+CSS+JavaScript+BootStrap+jQuery+servlet+mysql
四、使用说明
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中util/db.properties配置文件中的数据库配置改为自己的配置;
4. 运行项目,前台运行地址输入http://localhost:8080/travel 登录
后台运行地址输入http://localhost:8080/travel/admin 登录
管理员账号/密码:admin/admin
五、运行截图
前台用户界面
后台管理员界面
六、相关代码
后台用户管理控制器
/**
* Servlet implementation class AdminLogin
*/
@WebServlet("/admin/Login")
public class AdminLogin extends HttpServlet {
private static final long serialVersionUID = 1L;
UserOperator userOperator = new UserOperator();
/**
* @see HttpServlet#HttpServlet()
*/
public AdminLogin() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out=response.getWriter();
String username = request.getParameter("username");
String password = request.getParameter("password");
User user = null;
user = userOperator.findUserByName(username);
if (user != null) {
if (password.equals(user.getPassword())) {
System.out.println("^--^登录成功!");
System.out.println("用户名:" + username+",密 码:" + password);
// Session
HttpSession session = request.getSession();
//数组信息
String[] userinfo={username,Integer.toString(user.getUser_id())};
// 绑定数据
session.setAttribute("userinfo", userinfo);
//session.setAttribute("userid", user.getUser_id());
// 设置失效时间 5分钟
session.setMaxInactiveInterval(300);
// 做转发
request.setAttribute("user", user);
request.getRequestDispatcher("index.jsp").forward(request, response);
}
else {
System.out.println("-*-*-登录失败!密码不正确!");
System.out.println("用户名:" + username);
System.out.println("密 码:" + password);
//response.sendRedirect("login.jsp");
out.flush();//清空缓存
out.println("<script>");//输出script标签
out.println("alert('-*-*-登录失败!密码不正确!');");//js语句:输出alert语句
out.println("history.back();");//js语句:输出网页回退语句
out.println("</script>");//输出script结尾标签
}
}
else {
System.out.println("-*-*-登录失败!用户名不存在!");
System.out.println("用户名:" + username);
System.out.println("密 码:" + password);
//response.sendRedirect("login.jsp");
out.flush();//清空缓存
out.println("<script>");//输出script标签
out.println("alert('-*-*-登录失败!用户名不存在!');");//js语句:输出alert语句
out.println("history.back();");//js语句:输出网页回退语句
out.println("</script>");//输出script结尾标签
// 做重定向到登录页面
//response.sendRedirect("login.jsp");
}
out.close();
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
用户管理控制器
/**
* Servlet implementation class UserAdd
*/
@WebServlet("/admin/UserAdd")
public class UserAdd extends HttpServlet {
private static final long serialVersionUID = 1L;
UserOperator userOperator = new UserOperator();
/**
* @see HttpServlet#HttpServlet()
*/
public UserAdd() {
super();
// TODO Auto-generated constructor stub
}
// 获取客户端IP地址
public static String getIpAddress(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_CLIENT_IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_X_FORWARDED_FOR");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
return ip;
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
// request.getRemoteAddr();
System.out.println("*--------------------------------------------------*");
System.out.println("新增管理员:UserAdd");
String username = null;
String email = null;
String password = null;
String register_ip = null;
String gender = null;
username = request.getParameter("username");
email = request.getParameter("email");
password = request.getParameter("password");
register_ip = getIpAddress(request);
gender = request.getParameter("gender");
System.out.println("IpAddr" + register_ip);
User user = new User(username, password, email, register_ip, gender);
if (userOperator.addUser(user)) {
System.out.println("添加成功!");
out.flush();//清空缓存
out.println("<script>");//输出script标签
out.println("alert('添加成功!');");//js语句:输出alert语句
out.println("history.back();");//js语句:输出网页回退语句
out.println("</script>");//输出script结尾标签
}
else {
System.out.println("添加失败!");
out.flush();//清空缓存
out.println("<script>");//输出script标签
out.println("alert('添加失败!');");//js语句:输出alert语句
out.println("history.back();");//js语句:输出网页回退语句
out.println("</script>");//输出script结尾标签
}
out.close();
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}