Java项目:148 基于springboot的校友管理系统

news2024/11/24 20:45:40
作者主页:舒克日记

简介:Java领域优质创作者、Java项目、学习资料、技术互助

文中获取源码

校友管理系统项目说明

本系统是一个学校与毕业生的交流平台。方便校友们了解母校的最新动态,同学的情况;同时学校也可以通过平台了解毕业生的就业状况等等。根据具体的需求。

本系统包括了校友管理、新闻、行业联谊、捐赠这四大功能模块。

校友管理系统部署说明

线上访问地址(后台):localhost:9200

线上访问地址(前台):localhost:9100/index

运行指导

idea导入源码空间站顶目教程说明(Vindows版)-ssm篇:

http://mtw.so/5MHvZq

源码地址:http://codegym.top

技术栈

SpringBoot、MybatisPlus、Thymeleaf、MySQL、阿里云OSS、光年后台管理模板

本地部署

1.在mysql中新建数据库xiaoyou,将xiaoyou.sql导入该数据库。

2.打开IDEA,导入此项目, 打开xiaoyou3\xiaoyou_manage\src\main\resources\application.yml 和xiaoyou3\xiaoyou_index\src\main\resources\application.yml的配置文件, 修改数据库用户名和密码为自己本地数据库的用户名和密码,修改数据库地址为本机的对应数据库地址如下:

spring:
datasource:
#数据库地址
url: jdbc:mysql://localhost:3306/xiaoyou?serverTimezone=GMT%2B8
type: com.alibaba.druid.pool.DruidDataSource
#mysql的账号
username: root
#mysql的密码
password: root
driver-class-name: com.mysql.jdbc.Driver

3.配置阿里云OSS图片服务(可选操作):

在xiaoyou3\xiaoyou_tools\src\main\java\com\lgy\tools\common\utils下配置阿里云OSS服务(建议使用自己的,个人的流量耗不起哈哈哈哈,也不知道什么时候到期了就挂了),参考教程:阿里云OSS图片服务配置

4.邮件服务配置(可选操作):

在xiaoyou3\xiaoyou_tools\src\main\java\com\lgy\tools\common\utils下的MailUtils类中配置如下:

附:主要是更改邮箱服务器和你的邮箱账号和密码(当然你也可以不改,我的邮箱用多了可能就被视为垃圾邮箱账号了)

package com.lgy.tools.common.utils;

import javax.mail.*;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;

public class MailUtils {

//邮件发送协议
private final static String PROTOCOL = “smtp”;
//SMTP邮件服务器(这里使用的是QQ邮箱也可以使用其他的)
private final static String HOST = “smtp.qq.com”;
//是否要求身份验证
private final static String IS_AUTH = “true”;
// 是否启用调试模式(启用调试模式可打印客户 端与服务器交互过程时一问一答的响应消息)
private final static String IS_ENABLED_DEBUG_MOD = “true”;
/**

  • @param mailAddress 收件人地址
  • @param mailMsg 邮件正文
  • @throws MessagingException
  • @throws AddressException
    */
    public static void sendMail(String mailAddress, String mailMsg,String mailContent) throws MessagingException {
    // – 1.创建一个Properties对象.里面 封装基本协议和数据
    Properties props = new Properties();
    // – 设置邮件的发送协议
    props.setProperty(“mail.transport.protocol”, PROTOCOL);
    // – 设置发送邮件的服务器地址
    props.setProperty(“mail.smtp.host”, HOST);
    // – 设置发送邮件需要验证
    props.setProperty(“mail.smtp.auth”, IS_AUTH);
    props.setProperty(“mail.debug”, IS_ENABLED_DEBUG_MOD);
    //-- 提供验证器
    Authenticator auth = new Authenticator() {
    @Override
    protected PasswordAuthentication getPasswordAuthentication() {
    // TODO Auto-generated method stub
    //更改成自己的账号和密码(不是QQ密码)
    return new PasswordAuthentication(“921650190@qq.com”, “qreuugzpvxkebefd”);
    }
    };
    //-- 开启和服务器的会话
    Session session = Session.getDefaultInstance(props, auth);
    //-- 创建消息对象.一个Message对象就 是一封邮件的内容
    Message msg = new MimeMessage(session);
    //-- 设置邮件的发送者(自己的邮箱)
    msg.setFrom(new InternetAddress(“921650190@qq.com”));
    //-- 设置邮件的发送方式和接受者
    msg.setRecipient(Message.RecipientType.TO, new InternetAddress(mailAddress));
    //设置邮件的主题
    msg.setSubject(mailMsg);
    //设置邮件的正文
    String url = “http://localhost:9200/index”;
    String content = mailContent+“请去官网查看更多" + url + "”;
    msg.setContent(content, “text/html;charset=utf-8”);
    //-- 创建Transport用于发送邮件
    Transport.send(msg);
    }

}

5.运行xiaoyou3\xiaoyou_index\src\main\java\com\lgy\xiaoyou_index\下的XiaoyouIndexApplication.java类,启动前台。

6.运行xiaoyou3\xiaoyou_manage\src\main\java\com\lgy\xiaoyou_manage\下的XiaoyouManageApplication.java类,启动后台。

7.打开浏览器,输入 localhost:9200 进入后台登录界面;输入localhost:9100/index进入前台首页。

8.输入用户名和密码访问系统。

运行说明

1.运行环境:

JDK1.8;Tomcat9.0;MySQL5.5

2.账号密码:

管理员账号: 111

管理员密码: 123

普通用户账号:2020

普通用户密码:2020

3.访问:

在启动之后访问localhost:9200进入后台登录界面,输入管理员账户名密码进行登录,登录成功便可使用后台系统;访问localhost:9100/index进入前台首页,点击右上角登录按钮,输入普通用户账户名密码进行登录,成功即可使用前台。

系统展示

1.前台部分界面

前台界面

2.后台部分界面

后台

部分系统截图1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2207963.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

<<迷雾>> 第11章 全自动加法计算机(2)--5 比特存储器 示例电路

可以读/写单个5位二进制数的存储器. info::操作说明 将多个比特单元组合的结果, 整体操作流程类似, 只是可同时读取多位 注: D0~D4 处没有引入写入测试开关, 读者可仿照前面自行引入 primary::在线交互操作链接 https://cc.xiaogd.net/?startCircuitLinkhttps://book.xiaogd.n…

【React】React18核心源码解读

前言 本文使用 React18.2.0 的源码,如果想回退到某一版本执行git checkout tags/v18.2.0即可。如果打开源码发现js文件报ts类型错误请看本人另一篇文章:VsCode查看React源码全是类型报错如何解决。 阅读源码的过程: 下载源码 观察 package…

MySQL 【日期】函数大全(二)

DATE_ADDDATE_FORMATDATE_SUBDATEDIFFDAYDAYNAMEDAYOFMONTHDAYOFWEEK 1、DATE_ADD DATE_ADD(date, value) :在指定的日期/时间上加上指定的时间间隔加并返回新的日期/时间。 DATE_ADD(date, value) DATE_ADD(date, INTERVAL value unit) date:需要操作…

Qt-系统处理键盘按键相关事件(58)

目录 描述 使用 单个按键 组合键 描述 Qt 中的按键事件是通过 QKeyEvent 类来实现的。当键盘上的按键被按下或者被释放时,键盘事件便会触发 Qt 中对按键事件进行了封装,QShortCut 就是封装出来的,这里我们介绍底层的函数 使用 单个按键…

如何将csdn文章导出为pdf

前言 在csdn上浏览文章的时候我发现有的文章支持pdf导出,但是有的文章不支持pdf导出,为了解决能将csdn上所有文章都能以pdf格式导出遂作此文。 正文 先上代码: (function(){use strict;var contentBox $("div.article_content")…

智能 AI 应用为什么需要知识库

智能 AI 应用为什么需要知识库 上回我们讲到如何在 Dify 上搭建企业知识库,并引入大语言模型应用中,实现企业内部知识助手。 使用 Dify 快速搭建企业内部知识助手。 其中提到的企业知识库,正是 “检索增强生成(Retrieval-Augmented Generat…

开放式耳机哪个品牌音质好?开放式耳机排行榜10强推荐!

耳机在我们的日常生活中扮演着重要角色,无论是上班路上还是运动时,它们都能帮助我们放松并增强安全感。选择一款合适的耳机很关键,开放式耳机因其设计,在不同场合都适用,特别是在运动时,它们提供了稳固而舒…

【笔记】Day2.2.1表设计说明

主键ID一般使用bigint类型 运送类型 使用比int更小的tinyint类型 eg:普快代表1 特快代表2(没写反) 关联城市 varchar 2代表京津冀 3代表江浙沪 4代表川渝 首重和续重都有小数点 故使用double 轻抛系数都为整数 故使用int 创建时间和修改…

基于SpringBoot+Vue的体育馆场地预约系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…

【测试】自动化——概念篇

自动化测试 自动化概念 什么是自动化? 自动化操作在生活中处处可见,自动化洒水机、自动洗手液、超市自动闸门。 自动化测试——>自动的测试软件(减少人力和时间的消耗,提高软件的测试质量)。 人力:2…

自定义实现项目进度图

目录 0.背景 1. 演示效果 2.实现原理 2.1 处理表头数据(日期对应的是星期几) 2.2 获取项目数据 2.3 合并单元格 3.源码 0.背景 目遇到一个展示项目进度的需求,类似甘特图的效果,不同的是,每一个项目都有计划和实…

MySQL:基于Spring监听Binlog日志

binlog的三种模式 MySQL 的二进制日志(binlog)有三种不同的格式,通常被称为 binlog 模式。这三种模式分别是 Statement 模式、Row 模式和Mixed 模式。 Statement 模式: 在 Statement 模式下,MySQL 记录每个会更改数…

代码随想录训练营Day30 | 491.递增子序列 | 46.全排列 | 47.全排列 II

学习文档:代码随想录 (programmercarl.com) 学习视频:代码随想录算法公开课 | 最强算法公开课 | 代码随想录 (programmercarl.com) Leetcode 491. 非递减子序列 题目描述 给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列…

AI赋能!0基础小白自媒体创业,成功率提升90%的秘诀?

本文背景 好多小伙伴也想写公众号文章,但是自己又没有写过,不知道如何开始。 今天分享个小方法,就算是写作新手,也能靠 AI 快速上手,写出好内容! 一起来看看怎么用 AI 工具 助力写作,提高效率&a…

STM32(十八):实时时钟

时间戳 Unix 时间戳(Unix Timestamp)定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数,不考虑闰秒。 时间戳存储在一个秒计数器中,秒计数器为32位/64位的整型变量。 世界上所有时区的秒计数器相同,不同时…

一次性使用病毒采样管-保存运输呼吸道 肠道等多种病毒样本的有力工具!

远离了新冠病毒却又来了流感病毒、手足口、猴痘病毒、诺如病毒等多种病毒,对于众多病毒的检测诊断,确保病毒样本的高效采集、安全保存和准确运输是至关重要的。为了满足这一需求,一次性使用病毒采样管应运而生。 在研究、医学诊断和疫情监测…

10.12 标准IO

练习:针对fscanf和fprintf练习 有如下结构体: typedef struct Student { char name[20]; int id; float chinese;//语文成绩 float math; float english; float physical; float chemical; float biological; }stu_t; *Pstu_t//声明学生结构体类型 在栈区…

逆向思维的力量:Prolog在游戏编程中的应用与代码实践

在主流游戏开发语言如C++、Python和Unity统治的今天,Prolog作为一种基于逻辑编程的语言,似乎与游戏开发不太沾边。然而,Prolog的逻辑推理机制和简洁的语法在解决复杂逻辑问题上有着独特的优势,尤其是在人工智能(AI)决策和路径规划等领域。通过Prolog,我们可以以极简的代…

【C++】C++的引用

一.引用 1.引用的概念和定义 引用不是新定义⼀个变量,而是给已存在变量取了⼀个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同⼀块内存空间。 类型& 引用别名 引用对象; 2.引用的特征 a.引用在定义时必须初始化 …

从数据到结论:ChatGPT如何帮助你完成复杂的数据分析?

AIPaperGPT,论文写作神器~ https://www.aipapergpt.com/ 在撰写学术论文时,数据分析往往是最具挑战性的部分之一。无论是定量研究还是定性研究,如何有效分析数据、得出合理结论都是关键所在。 ChatGPT的优势 1. 快速处理大量数据 在面对大…