基于javaweb的JSP+Servlet小说阅读管理系统(java+jsp+bootstrap+servlet+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

380023472402

400023472402

410023472402

420023472402

430023472402

440023472402

基于javaweb的JSP+Servlet小说阅读管理系统(java+jsp+bootstrap+servlet+mysql)

项目介绍

项目主要包括管理员与用户两种角色; 管理员角色包含以下功能:管理员登录,主页面,分类查看,修改个人信息,上传小说,查看小说,删除小说,评论顶收藏小说等功能。  用户角色包含以下功能:用户注册,用户登录,查看销售,查看小说,发布小说,搜索小说,查看个人信息等功能。

环境需要

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项目:否

技术栈

  1. 后端:servlet 2. 前端:JSP+css+javascript+bootstrap+jQuery

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中util/DBUtil.java配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/jsp_xiaoshuo_site

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
		if (username == null) {
if (vercode.equals(vr)) {
out.print("{\"state\":0}");
return;
} else {
out.print("{\"state\":111}");
return;
}
} else {
if (password == null || email == null || nickName == null) {
User user = ud.getUser(username);
if (user == null) { // 用户不存在
String data = "{\"state\":0}";
out.print(data);
out.close();
} else { // 用户存在
String data = "{\"state\":1}";
out.print(data);
out.close();
}

} else {
User user = new User();
user.setUser_name(username);
user.setPassword(password);
user.setNickname(nickName);
user.setEmail(email);
Date now = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
String date = dateFormat.format(now);
user.setReg_time(date);
ud.insertUser(user);
User currentUser = ud.getUser(username);
session.setAttribute("user", currentUser);
resp.sendRedirect("/jsp_xiaoshuo_site/jsp/main.jsp");
out.close();
}
}

}
}
package servlets;


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
				User us=(User)session.getAttribute("user");
if(us==null){
out.print("{\"state\":1}"); //session 过期
}else{
us.setSex(value);
ud.update(us);
out.print("{\"state\":0}");//成功
}
}else if(type.equals("setbirthday")){
User us=(User)session.getAttribute("user");
if(us==null){
out.print("{\"state\":1}"); //session 过期
}else{
us.setBirthday(value);
ud.update(us);
out.print("{\"state\":0}");//成功
}
}else if(type.equals("changeemail")){
User us=(User)session.getAttribute("user");
if(us==null){
out.print("{\"state\":1}"); //session 过期
}else{
us.setEmail(value);;
ud.update(us);
out.print("{\"state\":0}");//成功
}
}else if(type.equals("changepassword")){
User us=(User)session.getAttribute("user");
if(us==null){
out.print("{\"state\":1}"); //session 过期
}else{
String[] v=value.split(",");
String old=v[0];
String New=v[1];
if(us.getPassword().equals(old)){
us.setPassword(New);
ud.update(us);
out.print("{\"state\":0}");//成功
}else{
out.print("{\"state\":2}");//密码输入错误
}
}
}

}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
		String email = req.getParameter("email");
UserDao ud = new UserDao();
HttpSession session = req.getSession();
String vercode = (String) session.getAttribute("vercode");
String vr = req.getParameter("vercode");
if (username == null) {
if (vercode.equals(vr)) {
out.print("{\"state\":0}");
return;
} else {
out.print("{\"state\":111}");
return;
}
} else {
if (password == null || email == null || nickName == null) {
User user = ud.getUser(username);
if (user == null) { // 用户不存在
String data = "{\"state\":0}";
out.print(data);
out.close();
} else { // 用户存在
String data = "{\"state\":1}";
out.print(data);
out.close();
}

} else {
User user = new User();
user.setUser_name(username);
user.setPassword(password);
user.setNickname(nickName);
user.setEmail(email);
Date now = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
String date = dateFormat.format(now);
user.setReg_time(date);
ud.insertUser(user);
User currentUser = ud.getUser(username);
session.setAttribute("user", currentUser);
resp.sendRedirect("/jsp_xiaoshuo_site/jsp/main.jsp");
out.close();
}
}

}
}
package servlets;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
	}
}
package servlets;


/**
*
* 此类用于处理基本资料的更改
*
*
*/


@SuppressWarnings("serial")
public class ChangeFiledServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

req.setCharacterEncoding("utf-8");
resp.setContentType("text/plain;charset=utf-8");
PrintWriter out=resp.getWriter();
String type=req.getParameter("type");
String value=req.getParameter("value");
UserDao ud=new UserDao();
HttpSession session=req.getSession();
if(type==null&&value==null)return;
if(type.equals("changeusername")){
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    			int t=posts.get(i).getPost_id();
if(t>max){
max=t;
}
}
return max;
}
}
package servlets;




@SuppressWarnings("serial")
public class RegsiterServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

req.setCharacterEncoding("utf-8");
resp.setContentType("text/plain;charset=utf-8");
PrintWriter out = resp.getWriter();
String username = req.getParameter("username");
String password = req.getParameter("password");
String nickName = req.getParameter("nickname");
String email = req.getParameter("email");
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
   				      p.setHot(p.getHot()+1);
pd.update(p);
hot=new ArrayList<Integer>();
hot.add(post_id);
session.setAttribute("hot", hot);
out.print("ok");
return;
}else if(hot.size()==0){
PostDao pd=new PostDao();
Post p=pd.getPost(post_id);
p.setHot(p.getHot()+1);
pd.update(p);
hot.add(post_id);
out.print("ok");
}else{
boolean isAgain=false;
for(Integer i:hot){
if(i==post_id){
isAgain=true;
break;
}else {
continue;
}
}
if(isAgain){
out.print("again");
return;
}
PostDao pd=new PostDao();
Post p=pd.getPost(post_id);
p.setHot(p.getHot()+1);
pd.update(p);
hot.add(post_id);
out.print("ok");
return;
}
}
}
}
package servlets;


项目链接:
https://javayms.github.io?id=481122522008200pf
https://javayms.pages.dev?id=481122522008200pf