美食网站是一个提供各种美食信息和食谱的网站,旨在帮助用户发现、学习和分享美食。旨在探讨美食网站在现代社会中的重要性和影响。随着互联网的普及,越来越多的人开始使用美食网站来获取各种美食信息和食谱。这些网站不仅提供了方便快捷的搜索功能,还为用户提供了分享和交流的平台。随着移动互联网的发展,美食网站应该更加注重用户体验和个性化服务,提供更加精准的推荐和定制化的功能。同时,美食网站也应该加强与餐饮业的合作,推动餐饮业的创新和发展。总之,美食网站为用户提供了一个全面了解和学习美食的平台,帮助他们发现新的食谱、餐厅和烹饪技巧,享受美食带来的乐趣。
前端:LayUI、JQuery、HTML5+CSS3、Ajax
后端:SpringBoot+Spring-Data-Jpa
安全控件:SpringSecurity
页面采用:Thymeleaf
项目管理:Maven
拥有管理员和普通用户两种角色;
注册、登录、发美食博客、查看美食博客、美食博客审核(管理员)、个人资料设置、密码修改、权限修改(管理员)等。
- @Controller
- @RequestMapping(value="/blog")
- public class BlogsController extends CommonController
{ - @Autowired
- private BlogsSerive blogService;
- @Autowired
- private SystemDataService dataService;
- @Autowired
- private UserUtils userUtils;
- @Autowired
- private CommentService commentService;
-
- @Override
- public void manage(ModelMap map) {
- map.put("user", userUtils.getUser());
- super.manage(map);
- }
-
- @Override
- public void edit(BlogsForm form, ModelMap map) throws InstantiationException, IllegalAccessException {
- map.put("sf", dataService.findByDictionariesCode("SJZD_BKFL"));
- map.put("type", dataService.findByDictionariesCode("SJZD_WZLX"));
- super.edit(form, map);
- }
-
- @Override
- public Object save(BlogsForm form) {
- System.out.println(form.getText()+"=========");
- form.setUser(userUtils.getUser());
- SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- try {
- Blogs model = new Blogs();
- String name = userUtils.getName();
- Integer id = form.getId();
- if(id != null) {
- model = blogService.findById(id);
- model.setUpdateDate(sdf.format(new Date()));
- model.setUpdateName(name);
- }else {
- form.setCreateDate(sdf.format(new Date()));
- form.setCreateName(name);
- model.setUpdateDate(sdf.format(new Date()));
- model.setUpdateName(name);
- }
- BeanUtils.copyProperties(form, model,"id");
- blogService.save(model);
- Integer id2;
- if(form.getId() != null) {
- id2 = form.getId();
- }else {
- id2 = blogService.findByUserNicknameAndUpdateDate(name, model.getUpdateDate()).getId();
- }
- return new AjaxResult(id2+"");
- } catch (Exception e) {
- return new AjaxResult(false,"数据保存失败");
- }
- }
-
- /**
- * 访问页面
- * @param id
- * @param map
- */
- @RequestMapping(value="/visit")
- public void visit(Integer id, ModelMap map) {
- map.put("blog", blogService.findById(id));
- map.put("comment", commentService.findByBlogId(id));
- }
-
- /**
- * 访问页面数据
- * @param id
- * @return
- */
- @RequestMapping(value="/blogText")
- @ResponseBody
- public Object blogText(Integer id) {
- return blogService.findById(id).getText();
- }
-
- @RequestMapping(value="/audit")
- public void audit(ModelMap map) {
-
- }
-
- @RequestMapping(value="/indexBlog")
- public void indexBlog() {
-
- }
-
- /**
- * 同意
- * @param id
- * @return
- */
- @RequestMapping(value="/consent")
- @ResponseBody
- public Object consent(Integer id) {
- try {
- Blogs blogs = blogService.findById(id);
- blogs.setBlogStatic("审核通过");
- blogService.save(blogs);
- return new AjaxResult("同意成功");
- } catch (Exception e) {
- return new AjaxResult(false,"同意失败");
- }
- }
-
- /**
- * 拒绝
- * @param id
- * @return
- */
- @RequestMapping(value="/refuse")
- @ResponseBody
- public Object refuse(Integer id, String jy) {
- try {
- Blogs blogs = blogService.findById(id);
- blogs.setBlogStatic("已拒绝");
- blogs.setSuggest(jy);
- blogService.save(blogs);
- return new AjaxResult("拒绝成功");
- } catch (Exception e) {
- return new AjaxResult(false,"拒绝失败");
- }
- }
-
- @RequestMapping(value="/fysj")
- @ResponseBody
- public Object fysj(Integer page, BlogsForm form) {
- Sort sort=Sort.by(Sort.Direction.DESC, "updateDate");
- Pageable pageable = PageRequest.of(page-1, 10, sort);
- Page
blog; - Specification
spec = buildSpec2(form); - blog = blogService.findAll(spec, pageable);
- return FlowloadUtils.buildResult(blog);
- }
-
- @RequestMapping(value="/fysj2")
- @ResponseBody
- public Object fysj2(Integer page, BlogsForm form) {
- Sort sort=Sort.by(Sort.Direction.DESC, "updateDate");
- Pageable pageable = PageRequest.of(page-1, 10, sort);
- Page
blog; - Specification
spec = buildSpec3(form); - blog = blogService.findAll(spec, pageable);
- return FlowloadUtils.buildResult(blog);
- }
-
- private Specification
buildSpec3(BlogsForm form) { - Specification
specification = new Specification() { -
- private static final long serialVersionUID = 1L;
-
- @Override
- public Predicate toPredicate(Root
root, CriteriaQuery> query, CriteriaBuilder cb) { - HashSet
rules=new HashSet<>(); - Predicate difficultylevel = cb.equal(root.get("blogStatic"), "审核通过");
- rules.add(difficultylevel);
- return cb.and(rules.toArray(new Predicate[rules.size()]));
- }
-
- };
- return specification;
- }
-
- private Specification
buildSpec2(BlogsForm form) { - Specification
specification = new Specification() { -
- private static final long serialVersionUID = 1L;
-
- @Override
- public Predicate toPredicate(Root
root, CriteriaQuery> query, CriteriaBuilder cb) { - HashSet
rules=new HashSet<>(); - SysUser user = userUtils.getUser();
- Predicate difficultylevel = cb.equal(root.get("user").get("id"), user.getId());
- rules.add(difficultylevel);
- return cb.and(rules.toArray(new Predicate[rules.size()]));
- }
-
- };
- return specification;
- }
-
- @RequestMapping(value="/page2")
- @ResponseBody
- public HashMap
page2(ModelMap map, DataGridParam param, BlogsForm form) { - Sort sort=Sort.by("id");
- Pageable pabeable = param.getPageable(sort);
- Specification
spec = buildSpec1(form); - Page
page = blogService.findAll(spec, pabeable); - return DataGridUtils.buildResult(page);
- }
-
- private Specification
buildSpec1(BlogsForm form) { - Specification
specification = new Specification() { -
- private static final long serialVersionUID = 1L;
-
- @Override
- public Predicate toPredicate(Root
root, CriteriaQuery> query, CriteriaBuilder cb) { - HashSet
rules=new HashSet<>(); - Predicate difficultylevel = cb.like(root.get("blogStatic"), "%待审核%");
- rules.add(difficultylevel);
- return cb.and(rules.toArray(new Predicate[rules.size()]));
- }
-
- };
- return specification;
- }
-
- /**
- * 评论
- */
- @RequestMapping(value="/comment")
- @ResponseBody
- public Object comment(String comment, Integer id) {
- try {
- SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- Comment model = new Comment();
- model.setText(comment);
- model.setUser(userUtils.getUser());
- model.setBlog(blogService.findById(id));
- model.setRead2(false);
- model.setCreateDate(sdf.format(new Date()));
- commentService.save(model);
- return new AjaxResult("评论成功");
- } catch (Exception e) {
- return new AjaxResult(false,"评论失败");
- }
- }
- }
基于JAVA SpringBoot和HTML美食网站博客程序