前言:我是IT源码社,从事计算机开发行业数年,专注Java领域,专业提供程序设计开发、源码分享、技术指导讲解、定制和毕业设计服务
项目名
基于SpringBoot的大学生就业资讯平台
技术栈
SpringBoot+Vue+Redis+MySQL+Maven
开发语言:Java
数据库:MySQL+Redis
系统架构:B/S
后端:SpringBoot(MyBatis)
前端:Vue
工具:IDEA,JDK1.8,Maven
大学生就业资讯平台是一个为广大大学生提供全面就业信息和支持的在线资源。在当今竞争激烈的就业市场中,这个平台扮演着至关重要的角色。
这个平台的背景可追溯到社会对大学毕业生就业困难的关切。随着社会的发展,大学生毕业后面临的挑战也不断增加,他们需要更多的支持来实现就业目标。大学生就业资讯平台应运而生,旨在为大学生提供包括职位招聘、实习机会、职业规划、简历建设等多方面的资源和建议,以助力他们顺利融入职场。
现如今,这个平台已经成为大学生就业的重要工具。它汇集了各种各样的企业和组织,提供了广泛的工作机会,从传统职业到新兴行业都有涵盖。同时,平台还提供了各种职业规划工具,帮助学生明确职业目标和制定实现计划。此外,平台还为大学生提供了丰富的培训资源,帮助他们提升职业技能,提高竞争力。
总之,大学生就业资讯平台在连接大学生和职业机会之间架起了一座桥梁。它不仅帮助大学生更好地融入职场,还促进了社会经济的发展,为年轻人的职业发展提供了坚实的支持。这个平台的存在意义重大,对于塑造未来的人才也具有深远的影响。
B/S架构
该项目是前后端分离
前端是Vue2脚手架
/**
* 文章api
*
*/
@RestController
@RequestMapping(value = "/articles")
public class ArticleController {
@Autowired
private ArticleService articleService;
@Autowired
private TagService tagService;
@GetMapping
@FastJsonView(
exclude = {
@FastJsonFilter(clazz = Article.class, props = {"body", "category", "comments"}),
@FastJsonFilter(clazz = Tag.class, props = {"id", "avatar"})},
include = {@FastJsonFilter(clazz = User.class, props = {"nickname"})})
@LogAnnotation(module = "文章", operation = "获取所有文章")
public Result listArticles(ArticleVo article, PageVo page) {
System.out.println(article);
System.out.println(page);
List articles = articleService.listArticles(article, page);
return Result.success(articles);
}
@GetMapping("/hot")
@FastJsonView(include = {@FastJsonFilter(clazz = Article.class, props = {"id", "title"})})
@LogAnnotation(module = "文章", operation = "获取最热文章")
public Result listHotArticles() {
int limit = 6;
List articles = articleService.listHotArticles(limit);
return Result.success(articles);
}
@GetMapping("/new")
@FastJsonView(include = {@FastJsonFilter(clazz = Article.class, props = {"id", "title"})})
@LogAnnotation(module = "文章", operation = "获取最新文章")
public Result listNewArticles() {
int limit = 6;
List articles = articleService.listNewArticles(limit);
return Result.success(articles);
}
@GetMapping("/{id}")
@FastJsonView(
exclude = {
@FastJsonFilter(clazz = Article.class, props = {"comments"}),
@FastJsonFilter(clazz = ArticleBody.class, props = {"contentHtml"})})
@LogAnnotation(module = "文章", operation = "根据id获取文章")
public Result getArticleById(@PathVariable("id") Integer id) {
Result r = new Result();
if (null == id) {
r.setResultCode(ResultCode.PARAM_IS_BLANK);
return r;
}
Article article = articleService.getArticleById(id);
r.setResultCode(ResultCode.SUCCESS);
r.setData(article);
return r;
}
@GetMapping("/view/{id}")
@FastJsonView(
exclude = {
@FastJsonFilter(clazz = Article.class, props = {"comments"}),
@FastJsonFilter(clazz = ArticleBody.class, props = {"contentHtml"}),
@FastJsonFilter(clazz = Tag.class, props = {"avatar"})},
include = {@FastJsonFilter(clazz = User.class, props = {"id", "nickname", "avatar"})})
@LogAnnotation(module = "文章", operation = "根据id获取文章,添加阅读数")
public Result getArticleAndAddViews(@PathVariable("id") Integer id) {
Result r = new Result();
if (null == id) {
r.setResultCode(ResultCode.PARAM_IS_BLANK);
return r;
}
Article article = articleService.getArticleAndAddViews(id);
r.setResultCode(ResultCode.SUCCESS);
r.setData(article);
return r;
}
@GetMapping("/tag/{id}")
@FastJsonView(
exclude = {
@FastJsonFilter(clazz = Article.class, props = {"body", "category", "comments"}),
@FastJsonFilter(clazz = Tag.class, props = {"id", "avatar"})},
include = {@FastJsonFilter(clazz = User.class, props = {"nickname"})})
@LogAnnotation(module = "文章", operation = "根据标签获取文章")
public Result listArticlesByTag(@PathVariable Integer id) {
List articles = articleService.listArticlesByTag(id);
return Result.success(articles);
}
@GetMapping("/category/{id}")
@FastJsonView(
exclude = {
@FastJsonFilter(clazz = Article.class, props = {"body", "category", "comments"}),
@FastJsonFilter(clazz = Tag.class, props = {"id", "avatar"})},
include = {@FastJsonFilter(clazz = User.class, props = {"nickname"})})
@LogAnnotation(module = "文章", operation = "根据分类获取文章")
public Result listArticlesByCategory(@PathVariable Integer id) {
List articles = articleService.listArticlesByCategory(id);
return Result.success(articles);
}
@PostMapping("/publish")
@RequiresAuthentication
@LogAnnotation(module = "文章", operation = "发布文章")
public Result saveArticle(@Validated @RequestBody Article article) {
Integer articleId = articleService.publishArticle(article);
Result r = Result.success();
r.simple().put("articleId", articleId);
return r;
}
@PostMapping("/update")
@RequiresRoles(Base.ROLE_ADMIN)
@LogAnnotation(module = "文章", operation = "修改文章")
public Result updateArticle(@RequestBody Article article) {
Result r = new Result();
if (null == article.getId()) {
r.setResultCode(ResultCode.USER_NOT_EXIST);
return r;
}
Integer articleId = articleService.updateArticle(article);
r.setResultCode(ResultCode.SUCCESS);
r.simple().put("articleId", articleId);
return r;
}
@GetMapping("/delete/{id}")
//@RequiresRoles(Base.ROLE_ADMIN)
@LogAnnotation(module = "文章", operation = "删除文章")
public Result deleteArticleById(@PathVariable("id") Integer id) {
Result r = new Result();
if (null == id) {
r.setResultCode(ResultCode.PARAM_IS_BLANK);
return r;
}
articleService.deleteArticleById(id);
r.setResultCode(ResultCode.SUCCESS);
return r;
}
@GetMapping("/listArchives")
@LogAnnotation(module = "文章", operation = "获取文章归档日期")
public Result listArchives() {
return Result.success(articleService.listArchives());
}
}
点赞收藏关注+厚台获取源码(程序设计/定制/讲解/调试运行)