前言
之前学习了SSM(Spring+SpringMVC+Mybatis),一直想自己弄一个小项目自己来写一下,最近写了一个,该项目使用Maven进行依赖包管理,使用MySQL5.6数据库实现了一个管理系统的基础功能。
项目源代码GitHub地址:https://github.com/lonecloud/ssm-student
(如果喜欢,可以点一个Star又不会怀孕,大家有什么好的意见,可以pull request一下啦)
如果有什么问题,也欢迎加入QQ群一起交流啦:416052025
技术栈:
- JDK 1.8
- (SSM) -> Spring,SpringMVC,Mybatis
- BootStrap,JQuery,Bootstrap-table
- POI
- Maven
- SLF4J
已经实现的功能:
- 用户登录注册
- 学生信息的增删改查(CRUD)
- 学生数据的Excel导入导出
后期添加功能:
- 前后端分离
- 邮件系统
- 注册认证
- 短信API接入
- ……不仅仅局限于这些
项目结构
目录结构
java
- common:基础通用类
- controller:控制层
- cts:常量类
- dao:DB仓库层
- exception:自定义异常
- filter:过滤器
- pojo:实体对象
- service:业务服务层
- util:工具类层
- vo:view-Objct:页面交互对象
resource
- mapper:存放mybatis的xml映射文件
- appliactionContext.xml:Spring总配置文件
- appliactionContext-datasource.xml:数据配置文件
- appliactionContext-mvc.xml:Spring mvc配置文件
- datasource.properties 数据库配置文件
- generatoorConfig.xml:生成mybatis的xml映射时候的配置文件
- logback.xml:日志配置文件
webapp
- assets:静态文件目录
- WEB-INF
- pages:页面文件
- web.xml:tomcat的配置文件
- index.jsp:引入的入口文件
pom.xml:Maven配置文件
基本代码演示
登录代码:
/**
* 登录认证
* @param username
* @param password
* @param session
* @param attributes
* @return
*/
@PostMapping("doLogin")
public String doLogin(String username, String password, HttpSession session, RedirectAttributes attributes){
try {
User user=userService.login(username,password);
session.setAttribute(Constants.CURRENT_USER,user);
return "redirect:/student/list";
}catch (Exception e){
if (e instanceof BusinessException){
logger.debug(e.getMessage());
attributes.addAttribute("msg",e.getMessage());
}
logger.error(e.getStackTrace().toString(),e.getMessage());
}
return "redirect:login";
}