Java實戰(zhàn)之實現(xiàn)在線小說閱讀系統(tǒng)
環(huán)境配置
Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
項目技術
Layui+Springboot+ SpringMVC + HTML + FTP+ JavaScript + JQuery + Ajax + maven等等。
效果圖





讀者用戶控制器
@Controller
public class ReaderController {
@Autowired
private ReaderService readerService;
@RequestMapping("/duzhe")
public String duzhe(){
return "loginreader";
}
@RequestMapping("/book/getByType?bookType=1")
public String xiangqing(){
return "front/personal";
}
/**
* 登陸操作
* @return
*/
@RequestMapping("/loginreader")
@ResponseBody
public ResultData login1(Reader reader,HttpServletRequest request){
// 登陸操作
ResultData resultData = readerService.login1(reader);
// 判斷登陸成功,將用戶數據保存到 session中
// 如何獲取session對象?
if(resultData.getCode() == 200){
HttpSession session = request.getSession();
session.setAttribute("reader",resultData.getData());
}
return resultData;
}
@RequestMapping("/loginOut")
@ResponseBody
public String loginOut(HttpServletRequest request){
// 只需要去將保存到session的數據干掉即可
request.getSession().setAttribute("reader",null);
// 重定向和轉發(fā)的區(qū)別?
// 重定向: 1. 客戶端行為 2. 兩次請求 3. 不能攜帶前一次請求的數據
// 轉發(fā): 1. 服務器端行為 2. 一次請求 3. 能夠攜帶前一次請求的數據
return "redirect:/loginPage";
}
// @RequestMapping("/login")
// @ResponseBody// 該方法返回的是json字符串
// public ResultData login(Admin admin,HttpServletRequest request){
// // 登陸操作
// ResultData resultData = adminService.login(admin);
// // 判斷登陸成功,將用戶數據保存到 session中
// // 如何獲取session對象?
// if(resultData.getCode() == 200){
// HttpSession session = request.getSession();
// session.setAttribute("admin",resultData.getData());
// }
//
// return resultData;
// }
//
//讀者列表
@RequestMapping("/reader/list")
public String list(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "5") Integer pageSize){
PageInfo<Reader> pageInfo = readerService.list(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "reader/reader-list";
}
//搜索讀者顯示列表
@RequestMapping("/reader/search")
public String searchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "5") Integer pageSize,
String keyword){
PageInfo<Reader> pageInfo = readerService.searchList(page, pageSize, keyword);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "reader/reader-list";
}
//讀者刪除列表
@RequestMapping("/reader/deleteList")
public String deleteList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "5") Integer pageSize){
PageInfo<Reader> pageInfo = readerService.DeleteList(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "reader/reader-del";
}
//添加讀者
@RequestMapping("/reader/addPage")
public String addPage(){
return "front/register";
}
// 添加讀者的方法
@RequestMapping("/reader/add")
@ResponseBody
public ResultData add(Reader reader){
return readerService.add(reader);
}
/**
* 編輯讀者狀態(tài)信息
* @param readerId : 當前讀者Id
* @param readerStatus: 讀者當前狀態(tài)
* @return
*/
@RequestMapping("/reader/editStatus")
@ResponseBody
public ResultData editStatus(Integer readerId, Integer readerStatus){
return readerService.updateStatus(readerId, readerStatus);
}
/**
* 編輯讀者
* @param
* @param
* @return
*/
@RequestMapping("/reader/editPage")
public String editPage(Model model, Integer readerId){
Reader dbreadder = readerService.findById(readerId);
model.addAttribute("reader",dbreadder);
return "reader/reader-edit";
}
/**
* 更新讀者基本信息的方法
* @param reader
* @return
*/
@RequestMapping("/reader/edit")
@ResponseBody
public ResultData edit(Reader reader){
return readerService.edit(reader);
}
/**
* 批量刪除
* @param ids
* @return
*/
@RequestMapping("/reader/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name = "ids") String ids){
// 將ids轉換成數組
String[] idArr=ids.split(",");
return readerService.batchDelete(idArr);
};
/**
* 批量恢復
* @param ids
* @return
*/
@RequestMapping("/reader/huifuAll")
@ResponseBody
public ResultData huifuDelete(@RequestParam(name = "ids") String ids){
// 將ids轉換成數組
String[] idArr=ids.split(",");
return readerService.huifuDelete(idArr);
};
@RequestMapping("/reader/delete")
@ResponseBody
public ResultData deleteReader(Integer readerId, Integer readerStatus){
return readerService.deletereader(readerId,readerStatus);
}
@RequestMapping("/reader/toCenter")
public String toCenter(HttpSession session, Model model){
// Reader reader = (Reader)session.getAttribute("reader");
// if(reader==null){
// return "login";
// }
Reader reader = readerService.findById(1 );
model.addAttribute("reader",reader);
return "front/center";
}
}圖書管理控制層
@Controller
public class BookController {
@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() {
return "book/book-add";
}
//
// // 添加小說
@RequestMapping("/book/add")
@ResponseBody
public ResultData add(Book book) {
return bookService.add(book);
}
// 編輯小說狀態(tài)
@RequestMapping("/book/editCondition")
@ResponseBody
public ResultData editCondition(Integer bookId, Integer condition){
return bookService.updateStatus(bookId,condition);
}
// 編輯頁面
@RequestMapping("/book/editPage")
public String editPage(Model model, Integer bookId){
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
@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,
@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){
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();
//將字符串數組轉為int數組
session.setAttribute("bookList",bookList);
session.setAttribute("randList",randList);
return "/front/personal";
}
}圖書訂單管理控制層
@Controller
public class BookOrderController {
@Autowired
private BookOrderService bookOrderService;
@Autowired
private BookService bookService;
@RequestMapping("/bookorder/bookorderlist")
public String bookorderlist(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize) {
PageInfo<BookOrder> pageInfo = bookOrderService.list(page, pageSize);
//將數據轉發(fā)到頁面
model.addAttribute("list", pageInfo.getList());
model.addAttribute("pageInfo", pageInfo);
return "bookorder/bookorder-list";
}
@RequestMapping("/bookorder/orderSearch")
public String searchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
String keyword) {
PageInfo<BookOrder> pageInfo = bookOrderService.searchList(page,pageSize,keyword);
//將數據轉發(fā)到頁面
model.addAttribute("list", pageInfo.getList());
model.addAttribute("pageInfo", pageInfo);
return "bookorder/bookorder-list";
}
@RequestMapping("/bookorder/bookorderadd")
public String bookorderadd() {
return "bookorder/bookorder-add";
}
@RequestMapping(value = "/bookorder/add",method = RequestMethod.POST)
@ResponseBody
public ResultData add(BookOrder bookOrder, HttpSession session) {
Reader reader = (Reader)session.getAttribute("reader");
if(reader==null){
return new ResultData(2001,"用戶未登陸",null);
}
int readerId = reader.getReaderId();
bookOrder.setUserId(1);
bookOrder.setDiscountId(1);
bookOrder.setOrderDate(new Timestamp(System.currentTimeMillis()));
bookOrder.setOrderStatus(1);
bookOrder.setPayStatus(1);
ResultData resultData = bookOrderService.add(bookOrder);
return resultData;
}
@RequestMapping("/bookorder/editStatus")
@ResponseBody
public ResultData editStatus(Integer id, Integer status) {
return bookOrderService.updateStatus(id,status);
}
@RequestMapping("/bookorder/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name = "ids") String ids){
// 將ids轉換成數組
String[] idArr = ids.split(",");
return bookOrderService.batchDelete(idArr);
}
@RequestMapping("/bookorder/delete")
@ResponseBody
public ResultData delete(Integer orderid,Integer orderStatus){
return bookOrderService.delete(orderid,orderStatus);
}
@RequestMapping("/bookOrder/toOrder")
public String delete(Integer bookId,Model model){
Book book = bookService.findById(bookId);
model.addAttribute("book",book);
return "front/order";
}
@RequestMapping("/bookOrder/toOrderCenter")
public String toOrderCenter(HttpSession session,Model model){
/*Reader reader = (Reader)session.getAttribute("reader");
if(reader==null){
return new ResultData(2001,"用戶未登陸",null);
}
int readerId = reader.getReaderId();*/
int readerId = 1;
List<BookOrder> bookOrderList = bookOrderService.getAll(readerId);
model.addAttribute("bookOrderList",bookOrderList);
return "front/orderCenter";
}
}角色管理控制層
@Controller
public class AuthorController {
@Autowired
private AuthorService authorService;
@RequestMapping("/zuozhe")
public String duzhe(){
return "loginauthor";
}
@RequestMapping("/zuoping")
public String zuoping(){
return "index11";
}
/**
* 登陸操作
* @return
*/
@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){
PageInfo<Author> pageInfo = authorService.searchList(page, pageSize, keyword);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "author/author-list";
}
//作者刪除列表
@RequestMapping("/author/deleteList")
public String deleteList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "5") Integer pageSize){
PageInfo<Author> pageInfo = authorService.DeleteList(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "author/author-del";
}
//添加作者
@RequestMapping("/author/addPage")
public String addPage(){
return "author/author-add";
}
// 添加作者的方法
@RequestMapping("/author/add")
@ResponseBody
public ResultData add(Author author){
return authorService.add(author);
}
/**
* 編輯作者狀態(tài)信息
* @param authorId : 當前作者Id
* @param authorStatus: 作者當前狀態(tài)
* @return
*/
@RequestMapping("/author/editStatus")
@ResponseBody
public ResultData editStatus(Integer authorId, Integer authorStatus){
return authorService.updateStatus(authorId, authorStatus);
}
/**
* 編輯作者
* @param
* @param
* @return
*/
@RequestMapping("/author/editPage")
public String editPage(Model model, Integer authorId){
Author dbreadder = authorService.findById(authorId);
model.addAttribute("author",dbreadder);
return "author/author-edit";
}
/**
* 更新作者基本信息的方法
* @param author
* @return
*/
@RequestMapping("/author/edit")
@ResponseBody
public ResultData edit(Author author){
return authorService.edit(author);
}
/**
* 批量刪除
* @param ids
* @return
*/
@RequestMapping("/author/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name = "ids") String ids){
// 將ids轉換成數組
String[] idArr=ids.split(",");
return authorService.batchDelete(idArr);
};
/**
* 批量恢復
* @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);
}
}歷史控制層
@Controller
public class HistoryController {
@Autowired
private HistoryService historyService;
//列表
@RequestMapping("/history/list")
public String list(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize) {
PageInfo<History> pageInfo=historyService.list(page,pageSize);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "history/history-list";
}
//添加
@RequestMapping("/history/addPage")
public String addPage(){
return "history/history-add";
}
// 添加
@RequestMapping("/history/add")
@ResponseBody
public ResultData add(History history){
return historyService.add(history);
}
// search
@RequestMapping("/history/search")
public String searchList(Model model,
@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "3") Integer pageSize,
String keyword) {
PageInfo<History> pageInfo=historyService.searchList(page,pageSize,keyword);
model.addAttribute("list",pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
return "history/history-list";
}
// 批量刪除
@RequestMapping("/history/deleteAll")
@ResponseBody
public ResultData deleteAll(@RequestParam(name="ids") String ids){
//將ids轉為數組
String[] idArr = ids.split(",");
//將字符串數組轉為int數組
return historyService.batchDelete(idArr);
}
}以上就是Java實戰(zhàn)之實現(xiàn)在線小說閱讀系統(tǒng)的詳細內容,更多關于Java的資料請關注腳本之家其它相關文章!
相關文章
Java通用BouncyCastle實現(xiàn)的DES3加密的方法
這篇文章主要介紹了Java通用BouncyCastle實現(xiàn)的DES3加密的方法,本文給大家介紹的非常詳細,對大家的學習或工作,具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12
使用ScheduledThreadPoolExecutor踩過最痛的坑
這篇文章主要介紹了使用ScheduledThreadPoolExecutor踩過最痛的坑及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08
java線程之使用Runnable接口創(chuàng)建線程的方法
本篇文章介紹了,java中使用Runnable接口創(chuàng)建線程的方法。需要的朋友參考下2013-05-05
Spring?Data?JPA關系映射@OneToOne實例解析
這篇文章主要為大家介紹了Spring?Data?JPA關系映射@OneToOne實例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08
java ArrayList.remove()的三種錯誤用法以及六種正確用法詳解
這篇文章主要介紹了java ArrayList.remove()的三種錯誤用法以及六種正確用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-01-01
解決SpringBoot的@DeleteMapping注解的方法不被調用問題
這篇文章主要介紹了解決SpringBoot的@DeleteMapping注解的方法不被調用問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01
java使用POI讀取properties文件并寫到Excel的方法
這篇文章主要介紹了java使用POI讀取properties文件并寫到Excel的方法,涉及java操作properties文件及Excel文件的相關技巧,需要的朋友可以參考下2015-06-06
詳解Spring Data Jpa當屬性為Null也更新的完美解決方案
這篇文章主要介紹了詳解Spring Data Jpa當屬性為Null也更新的完美解決方案,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-02-02

