SSM整合项目:简易同学录
A Simple Alumnn Book
我的第一个SSM小项目 (づ ̄3 ̄)づ╭❤~
赶紧来学习吧 ! 期待你的issues哟(っ•̀ω•́)っ✎⁾⁾~ 该项目地址 : https://github.com/YUbuntu0109/SSM-CURD-Alumni
项目概述
一个简单的,基于SSM的同学录小项目,通过本项目可以学习SSM的整合及CURD操作的基本思路,同时也可以帮助你学习Intellij IEAD开发利器的使用哟,可以说非常适合初学SSM的同学啦~
代码注释非常详细,思路也很清晰 :
12345678910111213141516171819202122232425262728293031323334 @Autowired //注入业务对象 private FriendService friendService; //存储预返回给页面的对象数据 private Map<String, Object> result = new HashMap<>(); /** * @description: 分页查询: 获取所有好友信息,分页后返回给页面 ...
Java web项目:学生管理系统
Student Information Management System
我的第一个Java web项目 (づ ̄3 ̄)づ╭❤~
赶紧来学习吧 ! 期待你的issues哟(っ•̀ω•́)っ✎⁾⁾~ 该项目的GitHub仓库地址 : https://github.com/YUbuntu0109/SMS
项目概述项目阶段介绍
第一阶段:+信息管理功能 :white_check_mark:
第二阶段:+成绩管理功能 :x:
用户权限介绍
管理员 : 具有所有管理模块的权限
教师 : 具有学生管理信息模块的所有权限,但在教师信息管理模块中只具有查询并修改个人信息的权限
学生 : 只具有查询并修改个人信息的权限
设置权限的核心示例代码如下 :
12345678// 用户权限设置: 如果当前用户类型为教师,则将其权限设置为仅能查询个人信息if (userType == 3) { TeacherInfo currentTeacherInfo = (TeacherInfo) request.getSession().getAttribute("userInfo" ...
DBUtils
学习笔记 : DBUtils工具简介 : 为了更加简单地使用JDBC,Apache组织提供了一个工具类库commons-dbutils,它是操作数据库的一个组件,实现了对JDBC的简单封装,可以在不影响性能的情况下极大地简化JDBC的编码工作量.
API 介绍简介 : commons-dbutils的核心是两个类为DbUtils,QueryRunner,和一个接口ResultSetHandler.
org.apache.commons.dbutils.DbUtils : 该类主要为如何关闭数据库连接,装载JDBC驱动程序之类的常规工作提供静态方法.
org.apache.commons.dbutils.QueryRunner : 该类简化了执行SQL语句的代码,它与ResultSetHandler组合在一起就能完成大部分的数据库操作,大大减少编码量.
org.apache.commons.dbutils.ResultSetHandler : 该接口用于处理ResultSet结果集,它可以将结果集中的数据转换为不同的形式.
CURE 案例
数据表信息
1234567-- auto-g ...
Spring MVC之JSON数据交互
学习笔记 : Spring MVC之JSON数据交互JSON 数据交互简介 : JSON(JavaScript Object Notation,JS对象标记) 是一种轻量级的数据交换格式. 它基于JavaScript的一个子集,使用了C,C++,C#,Java,JavaScript,Perl,Python等其它语言的约定,采用完全独立于编程语言的文本格式来存储和表示数据. 这些特性使JSON称为理性的数据交互语言 !
JSON 数据转换简介 : 为了实现浏览器与控制器Controller之间的数据交互,Spring提供了一个HttpMessageConverter<T>接口来完成此项工作. 该接口主要用于将请求消息中的数据转换为一个T的对象,并将类型为T的对象绑定到请求方法的参数中,或者将对象转换为响应消息传递给浏览器显示. Spring为HttpMessageConverter<T>接口提供了很多实现类,这些实现类可以对不同的类型的数据进行信息转换,其中MappingJackson2HttpMessageConverter是Spring MVC默认处理JSON ...
Spring MVC之文件上传与下载
学习笔记 : Spring MVC之文件的上传与下载文件上传简介 : 多数文件上传都是通过表单形式提交给服务器的,因此,要实现文件长传功能后,就需要提供一个文件上传的表单,而表单必须满足以下三个条件.
form表单的method的属性设置为post
form表单的enctype属性设置为multipart/form-data
提供<input type="file" name="filename"/>的文件上传输入框
当客户端form表单的enctype属性为multipart/form-data时,浏览器就会采用二进制流的方式来处理表单数据,服务器端就会对文件上传的请求进行解析处理. Spring MVC为文件上传提供了支持,这种支持是通过MultipartResolver(多部件解析器)对象实现的. MultipartResolver是一个接口对象,需要通过它的实现类CommonsMultipartResolver来完成文件的上传工作,在需要在spring mvc配置文件中定义MultipartResolver接口的Bean即 ...
Database Connection Pool
学习笔记 : 数据库连接池简介 : 在JDBC编程中,每次创建和断开Connection对象都会消耗一定的时间和IO资源.为了避免频繁地创建数据库连接,工程师们提出了数据库连接池技术,其负责分配,管理和释放数据库连接,它允许应用程序重复使用现有的数据库连接,而不是重新建立连接 !
DataSource 接口简介 : 为了获取数据库连接对象(Connection),JDBC提供了javax.sql.DataSource接口,它负责与数据库建立连接,并定义了返回值为Connection对象的方法. 人们习惯性地把实现了该接口的类称为数据源,在数据源中存储了所有建立数据库连接的信息.
数据源中包含数据库库连接池,如果数据是水,数据库就是水库,数据源就是连接水库的管道,终端用户看到的数据集是管道里流出来的水.
DBCP 数据源简介 : DBCP是数据库连接池(DataBase Connection Pool)的简称,是Apache组织下的开源连接池实现.其jar包中包含两个核心的类,分别是BasicDataSourceFactory和BasicDataSource.
BasicDataS ...
SSM框架整合
学习笔记 : SSM整合整合环境搭建简介 : 由于Spring MVC是Spring框架中的一个模块,所以Spring MVC与Spring之间不存在整合问题,因此SSM整合主要只涉及Spring与MyBatis的整合.下面通过客户id查询数据表中指定的客户信息的简单案例来演示SSM整合思路 ~
编写配置文件
db.properties : 数据库配置文件
12345678910111213##database configuration information#jdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=jdbc:mysql:xxxxxx?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=truejdbc.username=xxxxxxjdbc.password=xxxxxx##DBCP configuration#jdbc.maxTotal=30 #最大连接数jdbc.maxIdle=10 #最大空闲连接数jdbc.initialSize=5 ...
Spring MVC之拦截器
学习笔记 : Spring MVC之拦截器简介 : Spring MVC中的拦截器(Interceptor)类似于Servlet中的过滤器(Filter),主要用于拦截用户请求并做相应的处理,例如通过拦截器可以进行权限验证,记录请求信息的日志,判断用户是否登录等..要使用Spring MVC中的拦截器,就需要对拦截器类进行定义和配置,通常拦截器类可以通过两种方式来定义,如下所示 :
实现HandlerInterceptor接口,或继承HandlerInterceptor接口的实现类,如HandlerInterceptorAdapter.
实现WebRequestInterceptor接口,或继承WebRequestInterceptor接口的实现类.
拦截器的执行流程单个拦截器的执行流程
web.xml
1234567891011121314151617181920212223242526272829<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi=" ...
Spring MVC之数据绑定
学习笔记 : Spring MVC之数据绑定简介 : 在执行程序时,Spring MVC会根据客户端请求参数的不同,将请求消息中的信息以一定的方式转换并绑定到控制器类的方法参数中.这种将请求消息与后台方法参数建立连接的过程就是Sping MVC中的数据绑定.
数据绑定介绍在数据绑定过程中,Spring MVC框架会通过数据绑定组件(DataBinder)将请求参数串的内容进行类型转换,然后将和转换后的值赋给控制器类中方法的形参,这样后台就可以正确绑定并获取客户端请求携带的参数了.整个数据绑定过程如下图所示 :
上图信息处理过程的步骤如下 :
Spring MVC将ServletsRequest对象传递给DataBinder.
将处理方法的入参对象传递给DataBinder.
DataBinder调用ConversionService组件进行数据类型转换,数据格式化等工作,并将ServletRequest对象中的消息填充到参数对象中.
调用Validator组件对已经绑定了请求消息数据的参数对象进行数据合法性效验.
效验完成后生成数据绑定结果BindingResult对象,Spri ...
MyBatis与Spring的整合
学习笔记 : Spring与MyBatis整合传统DAO方式的开发整合简介 : 采用传统DAO开发方式进行MyBatis与Spring框架的整合时,需要编写DAO接口以及接口的实现类,并且需要向DAO实现类中注入SqlSessionFactory,然后通过SqlSessionFactory创建SqlSession. 下面通过一个使用客户id查询数据表中客户信息的案例来演示该开发方式.
customer.sql : 客户信息表
123456789# 客户信息表create table t_customer ( id INT(20) PRIMARY KEY AUTO_INCREMENT, name VARCHAR(10) NOT NULL, job VARCHAR(10) NOT NULL, phone VARCHAR(12) NOT NULL )
db.properties : 数据库配置文件
12345678910111213##database configuration information#jdbc.driver=com.mysql.cj.jdbc.Driverjdbc.ur ...