基于javaweb+jsp的小说在线阅读系统(前台阅读+后台管理)(java+SSM+jsp+mysql+maven)
一、项目简述
功能包括(管理员和游客角色):
1:用户及主要操作功能 游客可以浏览网站的主页,但是需要注册为会员后部分小 说才能对网络小说进免费行阅读或阅读。用户可以收藏书 架,留言评论,上次阅读,阅读历史,章节选择等等功 能。
2:管理模块 网络小说管理模块包括不同网络小说类别的添加,删除以 及网络小说的上传,删除管理。可以包括武侠小书,都市 言情,穿越小书等各个类等等功能。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax等等。
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
@Autowired
private BookService bookService;
// @Autowired
// private BookService bookService;
//小说列表
@RequestMapping("/book/list")
public String list(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize) {
PageInfo<Book> pageInfo=bookService.list(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "book/book-list";
}
//小说添加
@RequestMapping("/book/addPage")
public String addPage() {
Book dbBook = bookService.findById(bookId);
model.addAttribute("book",dbBook);
return "book/book-edit";
}
//更新基本信息
@RequestMapping("/book/edit")
@ResponseBody
public ResultData edit(Book book){
return bookService.edit(book);
}
// 批量删除
@RequestMapping("/book/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name="ids") String ids){
//将ids转为数组
String[] idArr = ids.split(",");
//将字符串数组转为int数组
return bookService.batchDelete(idArr);
}
// search
public ResultData add(Author author){
return authorService.add(author);
}
/**
* 编辑作者状态信息
* @param authorId : 当前作者Id
* @param authorStatus: 作者当前状态
* @return
*/
@RequestMapping("/author/editStatus")
@ResponseBody
public ResultData editStatus(Integer authorId, Integer authorStatus){
return authorService.updateStatus(authorId, authorStatus);
}
/**
* 编辑作者
* @param
* @param
model.addAttribute("pageInfo",pageInfo);
return "book/book-list";
}
@RequestMapping("/book/search1")
public String searchList1(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
String keyword1) {
PageInfo<Book> pageInfo=bookService.searchList1(page,pageSize,keyword1);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "book/book-list";
}
@RequestMapping(value = "/book/getByType",method = RequestMethod.GET)
public String getByType(Integer bookType, Model model, HttpSession session){
String keyword) {
PageInfo<RechargeOrder> pageInfo = rechargeOrderService.searchList(page, pageSize,keyword);
//将数据转发到页面
model.addAttribute("list", pageInfo.getList());
model.addAttribute("pageInfo", pageInfo);
return "rechargeorder/rechargeorder-list";
}
@RequestMapping("/rechargeorder/rechargeorderadd")
public String rechargeorderadd() {
return "rechargeorder/rechargeorder-add";
}
@RequestMapping("/rechargeorder/add")
@ResponseBody
@Controller
public class RechargeOrderController{
@Autowired
private RechargeOrderService rechargeOrderService;
@RequestMapping("/rechargeorder/rechargeorderlist")
public String rechargeorderlist(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize) {
PageInfo<RechargeOrder> pageInfo = rechargeOrderService.list(page, pageSize);
//将数据转发到页面
model.addAttribute("list", pageInfo.getList());
model.addAttribute("pageInfo", pageInfo);
return "rechargeorder/rechargeorder-list";
}
@RequestMapping("/rechargeorder/search")
public String rechargeSearchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
String keyword) {
PageInfo<RechargeOrder> pageInfo = rechargeOrderService.searchList(page, pageSize,keyword);
// String likeName1 = new String(likeName.getBytes("ISO-8859-1"),"utf-8");
List<Book> bookList = bookService.findByLikeName(likeName);
List<Book> randList = bookService.findRandList();
//将字符串数组转为int数组
session.setAttribute("bookList",bookList);
session.setAttribute("randList",randList);
return "/front/personal";
}
}
角色控制层:
@Controller
public class AuthorController {
@Autowired
private AuthorService authorService;
@RequestMapping("/zuozhe")
public String duzhe(){
return "loginauthor";
}
return "book/book-edit";
}
//更新基本信息
@RequestMapping("/book/edit")
@ResponseBody
public ResultData edit(Book book){
return bookService.edit(book);
}
// 批量删除
@RequestMapping("/book/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name="ids") String ids){
//将ids转为数组
String[] idArr = ids.split(",");
//将字符串数组转为int数组
return bookService.batchDelete(idArr);
}
// search
@RequestMapping("/book/search")
public String searchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
public ResultData add(RechargeOrder rechargeOrder) {
return rechargeOrderService.add(rechargeOrder);
}
@RequestMapping("/rechargeorder/editStatus")
@ResponseBody
public ResultData editStatus(Integer id, Integer status) {
return rechargeOrderService.updateStatus(id,status);
}
@RequestMapping("/rechargeorder/deleteAll")
@ResponseBody
* @param ids
* @return
*/
@RequestMapping("/author/huifuAll")
@ResponseBody
public ResultData huifuDelete(@RequestParam(name = "ids") String ids){
// 将ids转换成数组
String[] idArr=ids.split(",");
return authorService.huifuDelete(idArr);
};
@RequestMapping("/author/delete")
@ResponseBody
public ResultData deleteAuthor(Integer authorId, Integer authorStatus){
return authorService.deleteauthor(authorId,authorStatus);
}
}
订单业务控制层:
@RequestMapping("/loginauthor")
@ResponseBody
public ResultData login2(Author author){
ResultData resultData=authorService.login2(author);
return resultData;
}
//作者列表
@RequestMapping("/author/list")
public String list(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "5") Integer pageSize){
PageInfo<Author> pageInfo = authorService.list(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "author/author-list";
}
//搜索作者显示列表
@RequestMapping("/author/search")
public String searchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "5") Integer pageSize,
String keyword){
*/
@RequestMapping("/loginauthor")
@ResponseBody
public ResultData login2(Author author){
ResultData resultData=authorService.login2(author);
return resultData;
}
//作者列表
@RequestMapping("/author/list")
public String list(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "5") Integer pageSize){
PageInfo<Author> pageInfo = authorService.list(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "author/author-list";
}
// 批量删除
@RequestMapping("/book/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name="ids") String ids){
//将ids转为数组
String[] idArr = ids.split(",");
//将字符串数组转为int数组
return bookService.batchDelete(idArr);
}
// search
@RequestMapping("/book/search")
public String searchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
String keyword) {
PageInfo<Book> pageInfo=bookService.searchList(page,pageSize,keyword);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "book/book-list";
}
@RequestMapping("/book/search1")
public String searchList1(Model model,
session.setAttribute("randList",randList);
return "/front/personal";
}
}
角色控制层:
@Controller
public class AuthorController {
@Autowired
private AuthorService authorService;
@RequestMapping("/zuozhe")
public String duzhe(){
return "loginauthor";
}
@RequestMapping("/zuoping")
return "book/book-list";
}
@RequestMapping(value = "/book/getByType",method = RequestMethod.GET)
public String getByType(Integer bookType, Model model, HttpSession session){
List<Book> bookList = bookService.findByType(bookType);
List<Book> randList = bookService.findRandList();
//将字符串数组转为int数组
session.setAttribute("bookList",bookList);
session.setAttribute("randList",randList);
return "/front/personal";
}
@RequestMapping(value = "/book/getByName",method = RequestMethod.POST)
public String getByName(String likeName, Model model, HttpSession session) throws UnsupportedEncodingException {
// String likeName1 = new String(likeName.getBytes("ISO-8859-1"),"utf-8");
List<Book> bookList = bookService.findByLikeName(likeName);
List<Book> randList = bookService.findRandList();
return "author/author-add";
}
// 添加作者的方法
@RequestMapping("/author/add")
@ResponseBody
public ResultData add(Author author){
return authorService.add(author);
}
/**
* 编辑作者状态信息
* @param authorId : 当前作者Id
* @param authorStatus: 作者当前状态
* @return
*/
@RequestMapping("/author/editStatus")
@ResponseBody
public ResultData editStatus(Integer authorId, Integer authorStatus){
return authorService.updateStatus(authorId, authorStatus);
}
/**
@ResponseBody
public ResultData editStatus(Integer id, Integer status) {
return rechargeOrderService.updateStatus(id,status);
}
@RequestMapping("/rechargeorder/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name = "ids") String ids){
// 将ids转换成数组
String[] idArr = ids.split(",");
return rechargeOrderService.batchDelete(idArr);
}
@RequestMapping("/rechargeorder/delete")
@ResponseBody
public ResultData delete(Integer rechargeId,Integer rechargeStatus){
return rechargeOrderService.delete(rechargeId,rechargeStatus);
}
}
书籍管理控制层:
@Controller
public class BookController {
@Autowired
private BookService bookService;
// @Autowired
// private BookService bookService;
@RequestParam(defaultValue = "3") Integer pageSize) {
PageInfo<Book> pageInfo=bookService.list(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "book/book-list";
}
//小说添加
@RequestMapping("/book/addPage")
public String addPage() {
return "book/book-add";
@RequestMapping("/rechargeorder/search")
public String rechargeSearchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
String keyword) {
PageInfo<RechargeOrder> pageInfo = rechargeOrderService.searchList(page, pageSize,keyword);
//将数据转发到页面
model.addAttribute("list", pageInfo.getList());
model.addAttribute("pageInfo", pageInfo);
return "rechargeorder/rechargeorder-list";
}
@RequestMapping("/rechargeorder/rechargeorderadd")
public String rechargeorderadd() {
return "rechargeorder/rechargeorder-add";
}
@RequestMapping("/rechargeorder/add")
@ResponseBody
public ResultData add(RechargeOrder rechargeOrder) {
return rechargeOrderService.add(rechargeOrder);
}
@RequestMapping("/rechargeorder/editStatus")
@ResponseBody
return authorService.edit(author);
}
/**
* 批量删除
* @param ids
* @return
*/
@RequestMapping("/author/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name = "ids") String ids){
// String likeName1 = new String(likeName.getBytes("ISO-8859-1"),"utf-8");
List<Book> bookList = bookService.findByLikeName(likeName);
List<Book> randList = bookService.findRandList();
//将字符串数组转为int数组
session.setAttribute("bookList",bookList);
session.setAttribute("randList",randList);
return "/front/personal";
}
}
角色控制层:
@Controller
public class AuthorController {
public String list(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize) {
PageInfo<Book> pageInfo=bookService.list(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "book/book-list";
}
//小说添加
@RequestMapping("/book/addPage")
public String addPage() {
return "book/book-add";
}
//
// // 添加小说
@RequestMapping("/book/add")
@ResponseBody
public ResultData add(Book book) {
return bookService.add(book);
}
// 编辑小说状态
return rechargeOrderService.updateStatus(id,status);
}
@RequestMapping("/rechargeorder/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name = "ids") String ids){
// 将ids转换成数组
String[] idArr = ids.split(",");
return rechargeOrderService.batchDelete(idArr);
}
@RequestMapping("/rechargeorder/delete")
@ResponseBody
public ResultData delete(Integer rechargeId,Integer rechargeStatus){
return rechargeOrderService.delete(rechargeId,rechargeStatus);
}
}
书籍管理控制层:
@Controller
public class BookController {
@Autowired
private BookService bookService;
// @Autowired
// private BookService bookService;
}
}
订单业务控制层:
@Controller
public class RechargeOrderController{
@Autowired
private RechargeOrderService rechargeOrderService;
@RequestMapping("/rechargeorder/rechargeorderlist")
public String rechargeorderlist(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize) {
PageInfo<RechargeOrder> pageInfo = rechargeOrderService.list(page, pageSize);
//将数据转发到页面
model.addAttribute("list", pageInfo.getList());
model.addAttribute("pageInfo", pageInfo);
return "rechargeorder/rechargeorder-list";
}
@RequestMapping("/rechargeorder/search")
public String rechargeSearchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
String keyword) {
PageInfo<RechargeOrder> pageInfo = rechargeOrderService.searchList(page, pageSize,keyword);
//将数据转发到页面
public ResultData deleteAuthor(Integer authorId, Integer authorStatus){
return authorService.deleteauthor(authorId,authorStatus);
}
}
订单业务控制层:
@Controller
public class RechargeOrderController{
@Autowired
private RechargeOrderService rechargeOrderService;
@RequestMapping("/rechargeorder/rechargeorderlist")
public String rechargeorderlist(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize) {
PageInfo<RechargeOrder> pageInfo = rechargeOrderService.list(page, pageSize);
//将数据转发到页面
model.addAttribute("list", pageInfo.getList());
model.addAttribute("pageInfo", pageInfo);
return "rechargeorder/rechargeorder-list";
}
@RequestMapping("/rechargeorder/search")
public String rechargeSearchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
}
// 批量删除
@RequestMapping("/book/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name="ids") String ids){
//将ids转为数组
String[] idArr = ids.split(",");
//将字符串数组转为int数组
return bookService.batchDelete(idArr);
}
// search
@RequestMapping("/book/search")
public String searchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
String keyword) {
PageInfo<Book> pageInfo=bookService.searchList(page,pageSize,keyword);
适用
课程设计,大作业,毕业设计,项目练习,学习演示等