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

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

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

20220819210234

20220819210235

20220819210236

20220819210237

20220819210238

20220819210239

基于javaweb+mysql的小说阅读管理系统(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+javascriipt+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

登录管理控制层:

@SuppressWarnings(“serial”)

public class LoginServlet extends HttpServlet{

@Override

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

@Override

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

resp.setContentType(“text/plain;charset=utf-8”);

req.setCharacterEncoding(“utf-8”);

PrintWriter out=resp.getWriter();

String username=req.getParameter(“username”);

String password=req.getParameter(“password”);

HttpSession session=req.getSession();

if(usernamenull||passwordnull){

return;

UserDao ud=new UserDao();

User user=ud.getUser(username);

if(user!=null){

if(user.getPassword().equals(password)){

out.print(“{“state”:0}”);

session.setAttribute(“user”, user);

out.close();

}else{

out.print(“{“state”:2}”);

out.close();

}else{

out.print(“{“state”:1}”);

out.close();

用户信息管理控制层:

@SuppressWarnings(“serial”)

public class GetUserDetailServlet extends HttpServlet{

@SuppressWarnings(“unused”)

@Override

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

req.setCharacterEncoding(“utf-8”);

resp.setContentType(“text/plain;charset=utf-8”);

String type=req.getParameter(“type”);

String uid=req.getParameter(“uid”);

int user_id=0;

if(uid!=null){

user_id=Integer.parseInt(uid);

PrintWriter out=resp.getWriter();

if(type==null)return;

HttpSession session=req.getSession();

User user=(User)session.getAttribute(“user”);

if(user==null){

return;

boolean isSmall=false;

if(user_id==user.getUser_id())

isSmall=true;

if(type.equals(“getuserpost”)){

UserDao ud=new UserDao();

User u=ud.getUser(user_id);//当前浏览的用户

if(u==null)return;

PostDao pd=new PostDao();

List ps=pd.getPosts(u.getUser_id());//用户发表过的帖子

JSONArray jsonArray=new JSONArray();

/*time

  • pid

  • title

  • isSamll*/

for(Post p:ps){

JSONObject json=new JSONObject();

json.put(“time”, p.getPost_time());

json.put(“pid”, p.getPost_id());

json.put(“title”, p.getTitle());

if(isSmall){

json.put(“isSmall”, “true”);

}else{

json.put(“isSmall”, “false”);

jsonArray.put(json);

out.print(jsonArray.toString());

}else if(type.equals(“delpost”)){

String pid=req.getParameter(“pid”);

if(pid==null)return;

int post_id=Integer.parseInt(pid);

PostDao pd=new PostDao();

Post p=pd.getPost(post_id);

if(p==null)return;

pd.delPost(post_id);

CollectionDao cld=new CollectionDao();

cld.delCollectionByPostId(post_id);

CommentDao cd=new CommentDao();

out.print(“ok”);

}else if(type.equals(“delcollection”)){

String clid=req.getParameter(“clid”);

if(clid==null)return;

int cl_id=Integer.parseInt(clid);

CollectionDao cld=new CollectionDao();

cld.delCollectionById(cl_id);

out.print(“ok”);

return;

}else if(type.equals(“getusercollection”)){

if(uid==null){return;}

CollectionDao cld=new CollectionDao();

List cls=cld.getCollectionByUserId(user_id);

if(cls.size()==0)return;

PostDao pd=new PostDao();

UserDao ud=new UserDao();

JSONArray jsonArray=new JSONArray();

for(Collection c:cls){

Post p=pd.getPost(c.getPost_id());

int uuid=pd.getUserIdByPostId(p.getPost_id());

User u=ud.getUser(uuid);

JSONObject json=new JSONObject();

/*time

  • cl_id

  • pid

  • title

  • isSamll

  • uid

  • unickname

  • pid time tile isSmall

*/

json.put(“cl_id”,c.getCollection_id());

json.put(“pid”, p.getPost_id());

json.put(“title”, p.getTitle());

json.put(“time”, c.getTime());

json.put(“uid”,u.getUser_id());

json.put(“unickname”, u.getNickname());

if(isSmall){

json.put(“isSmall”, “true”);

}else{

json.put(“isSmall”, “false”);

jsonArray.put(json);

out.print(jsonArray.toString());

}else if(type.equals(“getusercomment”)){

if(uid==null){return;}

CommentDao cd=new CommentDao();

List cs=cd.getCommentByUserId(user_id);

JSONArray jsonArray=new JSONArray();

for(Comment c:cs){

PostDao pd=new PostDao();

String isExist=“false”;

Post p=pd.getPost(c.getPost_id()); //发表的帖子

JSONObject json=new JSONObject();

if(p!=null){

isExist=“true”;

UserDao ud=new UserDao();

User u=ud.getUser(p.getUser_id()); //创建人

json.put(“uid”, u.getUser_id());

json.put(“title”,p.getTitle());

json.put(“unickname”,u.getNickname());

json.put(“pid”,p.getPost_id());

json.put(“cid”, c.getComment_id());

json.put(“time”,c.getTime());

if(isSmall){

json.put(“isSmall”, “true”);

}else{

json.put(“isSmall”, “false”);

json.put(“content”, c.getContent());

json.put(“isExist”, isExist);

jsonArray.put(json);

out.print(jsonArray.toString());

/cid time isSmall content uid title unickname pid isExist/

}else if(type.equals(“delcomment”)){

String cid=req.getParameter(“cid”);

if(cid==null)return;

int comment_id=Integer.parseInt(cid);

CommentDao cd=new CommentDao();

cd.delCommentById(comment_id);

out.print(“ok”);

评论管理控制层:

//评论相关

@SuppressWarnings(“serial”)

public class CommentServlet extends HttpServlet{

@Override

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

req.setCharacterEncoding(“utf-8”);

resp.setContentType(“text/html;charset=utf-8”);

String type=req.getParameter(“type”);

String content=req.getParameter(“content”);

String pid=req.getParameter(“pid”);

PrintWriter out=resp.getWriter();

if(typenull||contentnull||pid==null){

return;

HttpSession session=req.getSession();

User user=(User)session.getAttribute(“user”);

if(user==null){

out.print(“”

  • “window.location.href=‘/jsp_xiaoshuo_site/index.jsp’”

  • “”);

return;

int post_id=Integer.parseInt(pid);

Comment com=new Comment();

com.setContent(content);

com.setPost_id(post_id);

com.setUser_id(user.getUser_id());

Date now=new Date();

SimpleDateFormat sdf=new SimpleDateFormat(“yyyy-MM-dd HH:mm”);

String time=sdf.format(now);

com.setTime(time);

CommentDao cd=new CommentDao();

cd.insert(com);

out.print(“”

  • “window.location.href='/jsp_xiaoshuo_site/jsp/postdetail.jsp?pid=”+pid+“'”

  • “”);

@Override

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


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值