提醒1:本篇所有内容(源代码、使用图片、配置文件)已开源至Gitee,[开源地址](https://gitee.com/morales/java-web-project)
提醒2:本篇内容所提到的项目为东北林业大学软件工程专业课程《Web开发技术》的课程设计,可供参考
提醒3:本项目未使用任何框架,基于IDEA和JDK11编写,连接MySQL数据库,适合初学者参考,但因页面风格等问题,不建议直接使用
提醒4:运行时请记得修改Maven仓库地址、配置文件中的数据库连接信息以及某些细节数据等
提醒5:推荐您参考本项目时的查看以上提醒作为食用方法
Project课程设计要求
项目要求
基于HTML/CSS/JS/Servlet/JDBC等技术完成以下设计内容
允许并鼓励使用Bootstrap/easy-ui/flat-ui等UI框架,及轮播/动画/图表/全屏滚动等等插件
允许使用vue/react/springboot等技术,但需部署在学生个人服务器,提供访问网址
本设计占总成绩40%,按功能完成设计状况评分
分组:每人1组,独立完成
截至时间:15周(具体日期待定)
提交/部署方式:以war包上传到指定系统,项目统一部署在华为云服务器
部署环境:Docker Tomcat9+MySQL8容器
项目展示:所有学生项目在公网公开展示
设计内容
软件工程专业网站
主要考核内容:网站整体设计,用户互交体验
包括:HTML布局,HTML标签的使用,应用CSS样式增强网站显示效果,使用JS动态改变页面,Servlet对数据的处理,JDBC数据库访问等
主要功能
前台网站
主要板块内容:专业介绍,实验室,教师队伍,就业指南,新闻,公告等。
要求至少包含导航。
要求板块必须包含2级内容。例如,专业介绍:专业简介,方向简介等;实验室:923创新实验室,925移动开发实验室,923实验室等;并能跳转至2级详细内容。
教师队伍:教授,副教授,讲师等
例如,当点击副教授时,跳转至副教授列表,再次点击某教师时,跳转至教师详细介绍,内容应尽可能包含文字/图片多媒体等信息
新闻公告:主页列出最近5个新闻与公告,显示标题时间等,要求从数据库中获取,点击标题跳转至信息的详细描述。
后台系统
需在前台网站显示提供后台管理系统入口链接,后台统一管理员登录用户名/密码admin
管理员登录后,可在后台对新闻公告信息进行增加,增删改查全部完成有加分
过滤器,未登录状态无法访问进入后台管理系统
仅需实现发布基本文本信息,无需包含图片等附件,实现富文本提交有加分
信息无需分页
除新闻公告外,教师实验室介绍等可使用静态数据
所有介绍类内容应尽可能包含文字与图片
所有文字/图片不必使用真实信息
Readme项目介绍
项目概要
项目简介
项目名:moraweb
版本:1.0-SNAPSHOT
项目类型:Maven
语言:JavaWeb
数据库:MySQL
环境
操作系统: Windows 10 20H2
IDE: IntelliJ IDEA 2021.2.3
JDK: 11.0.2
Markdown: Typora 0.11.17
本地服务器: tomcat 9.0.52
测试环境: Chrome 98 dev
项目部署
生成war包
url:http://123.57.27.150/2019214204
(目前已发现二级页面无法跳转login页面的问题,已在源代码中修复)
代码编写
开源地址:课设 - Web开发技术: Web开发技术的课程设计 (gitee.com)
静态
HTML5
CSS3
JavaScript
动态
Servlet
Java Server Page
JDBC
外部库
实现功能
轮播图
回顶部功能
Servlet重定向与转发
数据库查询
Modal模态框
Layui富文本
此博客仅展示Maven配置文件pom.xml,其他代码请移步项目开源地址
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.morales</groupId>
<artifactId>moraweb</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-spec</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>org.apache.taglibs</groupId>
<artifactId>taglibs-standard-impl</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.2</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.3.1</version>
</plugin>
</plugins>
</build>
</project>