SSM学习+学生信息管理系统项目

一、技术准备

编程语言:Java
前端:HTML, CSS, JavaScript, jQuery
J2EE:Tomcat, Servlet, JSP, Filter
框架:Spring, Spring MVC, MyBatis, Spring 与 MyBatis 整合, SSM 整合
数据库:MySQL
开发工具:IDEA, Maven

二、项目要实现的功能:

能增删改查学生的信息(学号,名称,年龄,性别,出生日期)

三、项目实现:

1.前期准备

1.使用idea新建一个maven项目,使用webapp骨架进行搭建

2.目录完善
在java包下增加controller、service、entity、dao层,在resources中增加mapper文件夹
下图为最终的项目的目录结构
在这里插入图片描述

3.编写配置文件
(1)在【pom.xml】文件中声明依赖的 jar 包
(2)在【web.xml】中声明编码过滤器并配置 DispatcherServlet
(3)在【spring-mybatis.xml】中完成 spring 和 mybatis 的配置
(4)在【spring-mvc.xml】中完成 Spring MVC 的相关配置
(5)在【jdbc.properties】中配置 c3p0 数据库连接池
(6)在【logback.xml】中完成日志输出的相关配置

2.设计实体类Student

在entity中创建实体类Student
包含属性如下
在这里插入图片描述

3.创建数据库以及表

在这里插入图片描述

4.设计dao类

在dao包下创建【StudentDao】接口:
规范所要实现的方法
在这里插入图片描述
然后在【resources/mapper】下创建好对应的映射文件【StudentDao.xml】:实现上述接口的功能

5.设计service层

在service包下创建【StudentService】接口:规范所要实现的方法,方法同dao层
并在相同包名下创建实现类【StudentServiceImpl】,进行方法的实现,即调用dao层自动装载的bean调用其方法进行实现

6.设计controller层

接收前端参数,调用service层的方法,进行功能的实现,方法同service层的方法

7.编写前端界面

listStudent.jsp,editStudent.jsp

四、界面展示

在这里插入图片描述
在增加学生表里填写信息之后,点击提交,上面学生列表里会新增一行该学生信息;
点击删除按钮,会删除该行学生信息;
点击编辑按钮,跳转到下面界面:
在这里插入图片描述
点击提交后,会跳转回学生列表页面

五、遇到的问题:

空指针异常
将int改为Integer,解决

六、知识

1.javabean实体类为什么都用包装类型?

举个例子,一个Student类,其成绩属性,我们设置为
private Integer socre;
而不设置为
private int socre;
这是因为有的学生会出现考0分,而有的学生缺考,这样,就没有办法去区分了。
包装类型 Integer 和 基本类型 int 的最大区别就是包装类可以设置为 null。
缺考设置为null,就ok了。

再举例 在我们使用mybatis的时候,mybatis会判断参数属性是否为空null,而我们实体类中的某个属性如果使用基本数据类型,如int,默认为0,那mybatis就无法对这个参数进行判断。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值