为了让自己更好记住后端,在这里贴一下后端的评论操作和文章操作的相关代码;
pojo包
Book类
package com.example.demo.pojo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import javax.persistence.*;
@Entity
@Table(name = "book")
@JsonIgnoreProperties({"hander","hibernateLazyInitializer"})
public class Book {
@Id
@Column(name = "id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
int id;
String textTitle;
String textHeader;
String textBody;
String textFooter;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getTextTitle() {
return textTitle;
}
public void setTextTitle(String textTitle) {
this.textTitle = textTitle;
}
public String getTextHeader() {
return textHeader;
}
public void setTextHeader(String textHeader) {
this.textHeader = textHeader;
}
public String getTextBody() {
return textBody;
}
public void setTextBody(String textBody) {
this.textBody = textBody;
}
public String getTextFooter() {
return textFooter;
}
public void setTextFooter(String textFooter) {
this.textFooter = textFooter;
}
}
PingLun类
package com.example.demo.pojo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import javax.persistence.*;
@Entity
@Table(name = "pinglun")
@JsonIgnoreProperties({"hander","hibernateLazyInitializer"})
public class PingLun {
@Id
@Column(name = "id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
int id;
String about;
int bookId;
public int getBookId() {
return bookId;
}
public void setBookId(int bookId) {
this.bookId = bookId;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getAbout() {
return about;
}
public void setAbout(String about) {
this.about = about;
}
}
dao包
BookDAO类
package com.example.demo.dao;
import com.example.demo.pojo.Book;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
//此层为对数据的基本处理层,用来编写直接对数据库进行操作的代码。
public interface BookDao extends JpaRepository<Book,Integer> {
List<Book> findByTextTitle(String name);
List<Book> findById(int id);
}
PingLunDAO类
package com.example.demo.dao;
import com.example.demo.pojo.PingLun;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface PingLunDAO extends JpaRepository<PingLun,Integer> {
List<PingLun> findByBookId(int BookId);
}
service包
BookService类
package com.example.demo.service;
import com.example.demo.dao.BookDao;
import com.example.demo.pojo.Book;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
//service层主要用于处理逻辑,是业务逻辑层。
@Service
public class BookService {
@Autowired
BookDao bookDao;
// 按标题查找表
public List<Book> FindById(int num){
// return bookDao.findByTextTitle("hello");
return bookDao.findById(num);
}
// 获取数据库所有信息
public List<Book> getAll(){
return bookDao.findAll();
}
//从前端获取数据加入数据库
public Book addOrUpdate(Book book){
return bookDao.save(book);
}
// 从前端获取id删除信息
public void deleteTable(int id){
bookDao.deleteById(id);
}
}
PingLunService类
package com.example.demo.service;
import com.example.demo.dao.PingLunDAO;
import com.example.demo.pojo.PingLun;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class PingLunService {
@Autowired
PingLunDAO pingLunDAO;
public List<PingLun> findAll(int num){
return pingLunDAO.findByBookId(num);
}
public PingLun add(PingLun pingLun){
return pingLunDAO.save(pingLun);
}
public void delecet(int num){
pingLunDAO.deleteById(num);
}
}
controller包
BookController类
package com.example.demo.controller;
import com.example.demo.pojo.Book;
import com.example.demo.service.BookService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.util.HtmlUtils;
import java.util.List;
//此层主要进行对页面的处理,包括跳转或者传参等等。
@RestController
public class BookController {
@Autowired
BookService bookService;
//按标题查找文章
// 跨域注解
@CrossOrigin
@PostMapping("/FindTitle")
public List<Book> list(@RequestBody Book book) throws Exception {
int num = book.getId();
return bookService.FindById(num);
}
//获取数据库所有信息
@CrossOrigin
@GetMapping("/FindAll")
public List<Book> list_1() throws Exception{
return bookService.getAll();
}
// 从前端获取数据添加到数据库
@CrossOrigin
@PostMapping("/AddOrUpdate")
public Book addOrUpdate(@RequestBody Book book) throws Exception{
bookService.addOrUpdate(book);
return book;
}
// 从前端获取数据删除数据库对应id的数据
@CrossOrigin
@PostMapping("/DeleteById")
public void deleteTable(@RequestBody Book book) throws Exception{
bookService.deleteTable(book.getId());
}
}
PingLunController类
package com.example.demo.controller;
import com.example.demo.pojo.PingLun;
import com.example.demo.service.PingLunService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
public class PingLunController {
@Autowired
PingLunService pingLunService;
@CrossOrigin
@PostMapping(value = "/getPingLun")
@ResponseBody
public List<PingLun> findAll(@RequestBody PingLun pingLun) throws Exception{
return pingLunService.findAll(pingLun.getBookId());
}
@CrossOrigin
@PostMapping(value = "/addPingLun")
@ResponseBody
public PingLun Add(@RequestBody PingLun pingLun) throws Exception{
return pingLunService.add(pingLun);
}
@CrossOrigin
@PostMapping(value = "/delectPingLun")
@ResponseBody
public void delect(@RequestBody PingLun pingLun) throws Exception{
pingLunService.delecet(pingLun.getId());
}
}
如果有缘人能看到这,可以参考一下小白的写法。下面是我参考的博主
Springboot打包方法
Vue路由传参