Spring+SpringMVC+MyBatis的整合,它是一种轻量级的企业级框架,能够帮助开发者快速构建高效的Java Web应用程序。
spring:Spring是一个轻量级的Java开发框架,提供了控制反转(IoC)和面向切面编程(AOP)等功能。通过IoC容器来实现对象的创建、组装和管理。
springmvc:springmvc是基于Spring的MVC框架,用于构建Web应用程序。SpringMVC框架提供了控制器来处理用户的请求,根据请求的URL映射到相应的处理方法。可以通过注解或配置文件来定义URL与处理方法的映射关系。
mybatis:MyBatis是一个持久层框架,用于将Java对象与数据库表进行映射。通过XML或注解的方式来定义SQL映射,将Java对象和数据库表进行映射。MyBatis框架支持动态SQL,可以根据条件动态生成SQL语句,提高SQL的灵活性和可维护性。
(1)导入项目依赖坐标
4.0.0
com.manage
manage1021
1.0-SNAPSHOT
manage1021
war
UTF-8
1.8
1.8
5.9.2
5.0.2.RELEASE
1.6.6
1.2.12
5.1.6
3.4.5
2.9.4
junit
junit
4.12
test
mysql
mysql-connector-java
8.0.24
javax.servlet
servlet-api
2.5
provided
javax.servlet.jsp
jsp-api
2.0
provided
jstl
jstl
1.2
log4j
log4j
${log4j.version}
org.slf4j
slf4j-api
${slf4j.version}
org.slf4j
slf4j-log4j12
${slf4j.version}
org.mybatis
mybatis
${mybatis.version}
org.mybatis
mybatis-spring
1.3.0
com.alibaba
druid
1.1.10
org.mybatis.generator
mybatis-generator-core
1.3.5
com.fasterxml.jackson.core
jackson-core
${jackson.version}
com.fasterxml.jackson.core
jackson-databind
${jackson.version}
com.github.pagehelper
pagehelper
5.1.10
cn.hutool
hutool-all
5.2.3
org.projectlombok
lombok
1.18.24
ssm
org.apache.maven.plugins
maven-compiler-plugin
3.2
1.8
1.8
UTF-8
true
org.mybatis.generator
mybatis-generator-maven-plugin
1.4.2
src/main/resources/mbg.xml
true
true
(2)项目结构
分为控制层controller、业务层service、持久层dao。mybatis的映射文件放在resources下面的mapper文件下。
DispatcherServlet
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc.xml
1
DispatcherServlet
/
CharacterEncodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
CharacterEncodingFilter
/*
Archetype Created Web Application
org.springframework.web.context.ContextLoaderListener
contextConfigLocation
classpath:spring.xml
(1)创建jdbc属性文件jdbc.properties文件
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/score_manage?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC&useSSL=false
jdbc.username=root
jdbc.password=R1u84bvrltLn4vY
(2)创建映射文件
insert into student(name, age, address,sex,create_time,class_id)values (#{name},#{age},#{address},#{sex}, #{createTime}, #{classId})
delete from student where id = #{id}
update student set class_id = #{classId},name = #{name},age=#{age}, address = #{address},sex = #{sex},create_time = #{createTime} where id = #{id}
(3)创建日志文件log4j.properties
log4j.rootCategory=DEBUG, CONSOLE
#log4j.logger.com.demo.mapper=DEBUG
log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%C %d{YYYY-MM-dd hh:mm:ss} %m %n
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=./logs/my.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%m %n
(1)controller层
(2)dao层
(3)service层的接口和实现类
在这里我创建了一个工具类,方便控制层返回前端的数据
package com.qcby.utils;
import java.awt.*;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class MapUse {
private MapUse(){}
public static Map tableData(int code, String msg, List list,int count){
Map tableData = new HashMap<>();
tableData.put("code", 0);
tableData.put("msg", "");
tableData.put("data", list);
tableData.put("count", count);
return tableData;
}
public static Map success(int code, String msg){
Map tableData = new HashMap<>();
tableData.put("code", 0);
tableData.put("msg", "");
return tableData;
}
}
项目成果,下面是前端的页面。以及交互效果
前端使用了简单的layui框架。实现了最基本的增、删、改、查,有着较为良好的用户交互页面。
服务器使用了tomcat,数据库用的是mysql8.0版本的,如何你的数据库是5.0版本的需要修改项目依赖中的数据库驱动的坐标。
#私我可以要全部的源码#