基于SSM框架和MySQL的教务公告信息管理系统

基于SSM框架和MySQL的教务公告信息管理系统 1, 需求分析 本系统主要为管理教务公告信息而设计开发,主要功能有发布,修改,删除教务公告信息,分为前台界面和后台管理界面

本文包含相关资料包-----> 点击直达获取<-------

基于SSM框架和MySQL的教务公告信息管理系统

1. 需求分析

本系统主要为管理教务公告信息而设计开发,主要功能有发布、修改、删除教务公告信息。分为前台界面和后台管理界面,前台界面主要功能有按照类别浏览教务公告,后台界面主要功能为教务管理员使用,可以进行教务公告按照类别进行编辑并发布,对于发布之后的教务公告可以进行修改或者删除。

2. 开发环境

  • 数据库开发软件 :Navicat for MySQL

  • 前端代码软件 :IntelliJ IDEA 2017.3.5 X64

  • 后台使用软件 :IntelliJ IDEA 2017.3.5 X64

  • 开发主要使用语言 :Java,JSP

  • 操作系统 :Windows 10 64位

3. 数据库设计

教务公告信息管理系统主要分为三个表,分别为文章表(article)、分类表(category)、用户表(user),表的结构设计如下所示:

文章表(article)

列名 备注 数据类型 长度 允许空/主键
id 文章ID int 11 非空/主键
title 文章标题 varchar 128 非空
content 文章内容 text 0 非空
categoryid 分类ID int 11 非空
summary 文章摘要 text 0 非空
date 发布日期 varchar 64 非空

分类表(category)

列名 备注 数据类型 长度 允许空/主键
id 分类ID int 11 非空/主键
name 分类标识 varchar 64 非空
display_name 分类名 varchar 64 非空

用户表(user)

列名 备注 数据类型 长度 允许空/主键
id 用户ID int 11 非空/主键
username 用户名 varchar 64 非空
password 密码 varchar 64 非空

4. 功能实现

4.1 数据库连接

本系统基于Java的SSM框架(Spring、SpringMVC、Mybatis)实现的,由Maven进行构建,数据库采用的是MySQL。数据库连接方面采用的是ORM框架Mybatis,它是一款优秀的持久层框架,支持定制化SQL,存储过程及高级映射,并且避免了几乎所有的JDBC代码和手动设置参数及获取结果集。采用简单的XML或注解方式来配置和映射原生信息,将接口和Java的POJOs映射成数据库中的记录。

数据库连接的关键代码如下:

java @Configuration @Component @PropertySource(value = "classpath:jdbc.properties",encoding = "UTF-8") public class DBConfig { @Value("${db.driverClass}") public String driver; @Value("${db.url}") public String url; @Value("${db.username}") public String username; @Value("${db.password}") public String password; @Value("${db.initialSize}") public int initialSize; @Value("${db.maxActive}") public int maxActive; @Value("${db.maxIdle}") public int maxIdle; @Value("${db.minIdle}") public int minIdle; @Value("${db.maxWait}") public int maxWait; }

4.2 添加功能的实现

添加功能即发布文章功能,由于采用了Mybatis框架,因此我的SQL代码都写在了映射的XML文件中,其中发布文章功能方法名为writeBlog,代码如下:

xml <insert id="writeBlog" parameterType="com.geekerstar.entity.Article"> INSERT INTO article(title,content,categoryId,summary,date) VALUES (#{title},#{content},#{categoryId},#{summary},#{date}) </insert>

以上SQL对应于Article实体,通过INSERT语句将新的文章发布至系统。效果图如下所示:

文本编辑区我使用了从GitHub上的开源插件editor.md,并通过整合jsp页面应用到了系统中,可以使用Markdown语法进行文章的编写,拥有加粗、删除线、斜体、代码块、实时预览等功能。

点击分类按钮,可以选择“学院新闻”、“教务公告”、“学生公告”、“教育教学”四大板块,然后在标题区输入标题,在文本区输入文本内容,最后点击最下方的发布即可发布教务公告。

4.3 修改功能的实现

修改功能即对文章进行修改,在文章管理界面,可以点击修改按钮进行对文章进行修改,其SQL语句如下:

xml <update id="updateArticleById" parameterType="com.geekerstar.entity.Article"> UPDATE article set title=#{title},content=#{content},summary=#{summary},date=#{date} WHERE id=#{id} </update>

修改功能通过UPDATE语句文章表中的内容进行修改,同样在编辑文章窗口对文章进行修改然后发布即可。效果图如下所示:

修改按钮界面

修改编辑界面

4.4 删除功能的实现

删除功能在文章列表页点击删除即可,删除功能的SQL语句如下所示:

xml <delete id="deleteArticleById" parameterType="long"> DELETE FROM article WHERE id=#{id} </delete>

使用DELETE语句将删除相应的主键ID就可以实现删除功能了。修改功能界面和上图所示一样。

4.5 查询功能的实现

查询功能比较复杂,分为后台查询和前台展示,后台查询功能是为了方便管理员进行教务公告的管理,而前台查询功能是为了让教师和学生能够查看教务公告。以下是SQL代码:

根据ID查询文章信息

xml <select id="getArticleById" resultType="com.geekerstar.entity.Article"> select * from article a where id = #{id} </select>

查询文章(输出到首页的文章信息)

```xml

```

获取分类信息(首页展示分类信息)

xml <select id="getCategories" resultMap="categoryType"> SELECT * FROM category </select>

根据分类名获得分类ID

xml <select id="getCategoryIdByName" parameterType="string" resultType="long"> SELECT id FROM category WHERE name=#{name} </select>

根据ID获取所有分类信息

xml <select id="getCategoryById" parameterType="long" resultMap="categoryType"> SELECT * FROM category WHERE id=#{id} </select>

根据分类名获得分类下的文章(首页点击分类名操作)

xml <select id="getArticlesByCategoryName" parameterType="long" resultType="com.geekerstar.entity.Article"> SELECT a.*,c.name as category FROM article a,category c WHERE a.categoryId=c.id AND categoryId=#{categoryId} </select>

5. 界面截图

首页

查看公告内容

管理员公告管理列表

总结

通过本次实习,我回顾了数据库的基础知识,增强了对Java的SSM框架的理解,尤其是对Mybatis有了更进一步的认识,数据库对于任何程序员都是非常重要的知识,也是工作中使用非常频繁的技术,对于以后就业面试也是非常有帮助的。

参考文献

  • 基于web的院级教务管理系统的研究与实现(华中师范大学·周尚书)
  • 基于UML的教务管理系统分析与设计(南京理工大学·陈芬)
  • 基于Java与Web模式的教务管理系统的设计与实现(吉林大学·孙荣麟)
  • 基于J2EE的远程网络教育系统研究与实现(电子科技大学·陈南荪)
  • 基于SSH的教务管理系统的设计与实现(电子科技大学·冯鹏)
  • 基于Spring和MVC的高校教务管理系统的设计与实现(北京工业大学·栾晶晶)
  • 基于SSH的教务管理系统设计与实现(电子科技大学·关洪芬)
  • 基于J2EE的教研办公管理系统的设计与实现(电子科技大学·唐梦怡)
  • 基于Spring和MVC的高校教务管理系统的设计与实现(北京工业大学·栾晶晶)
  • 民办院校教务系统设计与实现(江西财经大学·贾静妮)
  • 基于SSM的某高校教室管理信息系统的设计与实现(苏州大学·陈夫真)
  • 电力职业学院教务管理系统的设计与实现(电子科技大学·骆玉)
  • 多层架构下教务管理系统的设计与实现(华南理工大学·陈菲)
  • 教务管理系统的研究与设计(华中师范大学·李玲)
  • 基于UML的教务管理系统分析与设计(南京理工大学·陈芬)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:源码码头网 ,原文地址:https://m.bishedaima.com/yuanma/35335.html

相关推荐

  • 基于SpringBoot框架的医疗挂号管理系统

    这是一套采用Java编程语言,基于SpringBoot框架构建的医疗预约管理系统源代码,项目中融入了Vue技术,开发工具为Idea或Eclipse,此系统适用于毕业设计或课程实践
    2024年05月23日
    2 1 1
  • 基于Python设计的信息检索系统

    基于Python设计的信息检索系统 【实验目的】: 开发一款针对英文文本的信息检索系统,可以实现建立索引表,布尔查询,通配符查询, 短语查询等功能
    2024年05月14日
    4 1 1
  • 基于Python的信息检索课程设计

    基于Python的信息检索课程设计 sdu视点新闻 全站爬虫爬取+索引构建+搜索引擎查询练习程序 爬虫功能使用Python的scrapy库实现
    2024年05月14日
    3 1 1
  • 学生评奖评优管理系统

    这是一个🔥🔥基于SpringBoot框架的学生评奖评优管理系统设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    1 1 1
  • 基于Python实现书店销售管理系统

    书店销售管理管理子系统 一,设 计 总 说 明 现在社会随着计算机技术迅速发展与技术的逐渐成熟,信息技术已经使人们的生活发生深刻的变化,生活中的各种服务系统也使人们在生活中的联系日常销售活动方式发生了很大的变化
    2024年05月14日
    6 1 1
  • 网上摄影工作室

    这是一个🔥🔥基于SpringBoot框架的网上摄影工作室设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    2 1 1
  • java+swing实现推箱子小游戏课程设计源码

    在计算机科学领域,游戏设计一直是一个备受关注的话题,随着计算机技术的不断发展,人们对于游戏的需求也越来越高,《java+swing实现推箱子小游戏课程设计源码》是一个旨在使用Java语言和Swing框架实现的推箱子小游戏项目
    2024年05月07日
    5 1 1
  • 基于python + dlib实现人脸识别

    python 进行人脸识别 人脸识别的主要算法 其核心算法是 欧式距离算法使用该算法计算两张脸的面部特征差异,一般在 0,6 以下都可以被认为是同一张脸 人脸识别的主要步骤 获得人脸图片 将人脸图片转为 128D 的矩阵(这个也就是人脸特征的一种数字化表现) 保存人脸 128D 的特征到文件中 获取其他人脸转为 128D 特征通过欧式距离算法与我们保存的特征对比
    2024年05月14日
    2 1 1
  • 网上商城系统

    这是一个🔥🔥基于SpringBoot框架的网上商城系统设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    1 1 1
  • 基于python实现的CS通信和P2P通信

    基于python实现的CS通信和P2P通信 一,实验要求 C/S通信实现要求 两台计算机分别模拟服务器,客户端 通过编程实现服务器端
    2024年05月14日
    1 1 1

发表回复

登录后才能评论