一、项目技术

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven

二、项目内容和功能介绍

  🎈1.项目内容

  
基于知识图谱的高考志愿智能推荐系统旨在利用知识图谱技术,结合高考生的个人信息、成绩、兴趣爱好等多维度数据,为考生提供精准、个性化的高考志愿推荐服务。该系统通过构建庞大的知识图谱,涵盖了各类高校、专业、高考志愿智能推荐设置、就业前景等详细信息,能够实时更新并维护数据的准确性和完整性。
系统通过采集和分析考生的历史成绩、兴趣爱好、职业规划等数据,结合知识图谱中的高校和专业信息,运用智能算法进行匹配和推荐。考生可以通过系统查询各类高校和专业的详细信息,了解高考志愿智能推荐设置、师资力量、就业情况等,进而做出更明智的志愿选择。
此外,该系统还提供了模拟填报、志愿填报指导等功能,帮助考生更好地理解和掌握志愿填报的规则和技巧。通过智能推荐和个性化服务,系统能够有效降低考生填报志愿的风险和不确定性,提高志愿填报的成功率和满意度。
综上所述,基于知识图谱的高考志愿智能推荐系统不仅提升了高考生志愿填报的效率和准确性,也为高校招生工作提供了有力支持,有助于推动高考招生工作的科学化和智能化发展。
  🎈2.功能介绍

  
基于知识图谱的高考志愿智能推荐系统,主要根据考生的成绩排名、选课、地区和考生意向,分析历年各学校各专业的录取情况和录取要求,智能化的为考生推荐满足考生需求且适合考试的志愿填报参考。其中知识图谱作为本系统的知识基础,在基于知识图谱的智能推荐上主要研究内容和达成目标为:
数据的提取:结构化数据、半结构化数据和非结构化数据的的抽取,这里主要是非结构化的信息的提取,NLP技术的使用等。进行属性的提取、关系的提取、实体的提取研究。
知识的表示于建模:主要包括谓语词逻辑表示法、框架表示法、基于语义网络的表示法、基于语义网的表示法等。
知识的融合。把表示相同概念的实体进行合并,把来源不同的知识融合为一个知识库。主要任务就是实体消歧和指代消解等。
知识的推理:包括基于逻辑规则的知识推理、基于分布表示的知识推理和基于神经网络的知识推理等。
用户数据的收集:主要研究内容为获取用户偏好、信息并对其进行表示,在知识图谱中进行匹配、生成推荐。
评判标准的建立和推荐算法的实现:包括对协同过滤算法、混合算法和基于内容的推荐算法等研究,分析多种推荐算法,进行归纳和评估最终应用于本系统。
7、系统前端的建立:包括数据库的连接、前端页面的开发等。最终对系统进行测试和训练,形成系统的设计和实现。。请添加图片描述

三、核心代码

部分代码:

package com.controller;


import java.util.Arrays;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.ConfigEntity;
import com.service.ConfigService;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;

/**
 * 登录相关
 */
@RequestMapping("config")
@RestController
public class ConfigController{
	
	@Autowired
	private ConfigService configService;

	/**
     * 列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,ConfigEntity config){
        EntityWrapper<ConfigEntity> ew = new EntityWrapper<ConfigEntity>();
    	PageUtils page = configService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, config), params), params));
        return R.ok().put("data", page);
    }
    
	/**
     * 列表
     */
    @IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,ConfigEntity config){
        EntityWrapper<ConfigEntity> ew = new EntityWrapper<ConfigEntity>();
    	PageUtils page = configService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, config), params), params));
        return R.ok().put("data", page);
    }

    /**
     * 信息
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        ConfigEntity config = configService.selectById(id);
        return R.ok().put("data", config);
    }
    
    /**
     * 详情
     */
    @IgnoreAuth
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") String id){
        ConfigEntity config = configService.selectById(id);
        return R.ok().put("data", config);
    }
    
    /**
     * 根据name获取信息
     */
    @RequestMapping("/info")
    public R infoByName(@RequestParam String name){
        ConfigEntity config = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "faceFile"));
        return R.ok().put("data", config);
    }
    
    /**
     * 保存
     */
    @PostMapping("/save")
    public R save(@RequestBody ConfigEntity config){
//    	ValidatorUtils.validateEntity(config);
    	configService.insert(config);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody ConfigEntity config){
//        ValidatorUtils.validateEntity(config);
        configService.updateById(config);//全部更新
        return R.ok();
    }

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
    	configService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
}



数据库参考

-- ----------------------------
-- Table structure for big_small_major
-- ----------------------------
DROP TABLE IF EXISTS `big_small_major`;
CREATE TABLE `big_small_major`  (
  `bs_code` varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
  `bs_bigMajor` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,
  `bs_smallMajor` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,
  `bs_level` varchar(2) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '',
  PRIMARY KEY (`bs_code`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Compact;

-- ----------------------------
-- Records of big_small_major
-- ----------------------------



四、效果图

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐