相关推荐recommended
【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统
作者:mmseoamin日期:2024-02-24

✅作者简介:热爱Java后端开发的一名学习者,大家可以跟我一起讨论各种问题喔。

🍎个人主页:Hhzzy99

🍊个人信条:坚持就是胜利!

💞当前专栏:【Spring】

🥭本文内容:SSM框架的整合使用,还有bootstrap等前端框架的简单使用,做一个简单的新闻管理系统

SSM整合


文章目录

  • SSM整合
  • 前言
  • 系统功能需求
  • 整合环境搭建
    • 创建一个maven项目
    • 编辑pom.xml
    • 编写配置文件
    • 运行结果图
    • 结语

      前言

      在前文中,我们学完了Spring、SpringMVC的内容,现在我们就将学过的内容做一个整合使用,做一个新闻管理系统。


      系统功能需求

      【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,结构图,第1张

      系统结构设计

      本系统根据功能的不同,项目结构可以划分为以下几个层次:

      • 持久对象层:由若干持久化类(实体类)组成。
      • 数据访问层:曲若干DAO 接口和Mybatis映射文件组成。接口的名称统一以DAO结尾,且 MyBatis 的映射文件名称要与接口的名称相同。
      • 业务逻辑层:该层由若干 Service 接口和实现类组成。在本系统中,业务逻辑层的接口统一使用Service结尾,共实现类名称统一在接口名后加Impl。该层主要用于实现系统的业务逻辑。
      • Web表现层:该层主要包括 SpringMVC 中的Controller类和 JSP 页面。Controller 类主要负责拦截用户请求,并调用业务逻拜层中相应组件的业务逻輯方法来处理用户请求,然后将相应的结果返回给 JSP 页面。

        数据库设计

        数据库设计比较简单,这里我直接放建表语句

        create database news;
        use news;
        #创建一个角色表
        create table t_role(
        roleId int primary key,
        roleName varchar(20)
        );
        #插入两条数据
        insert into t_role values(1,'管理员'),(2,'信息员');
        #创建一个名为t_user的表
        create table t_user(
        	`userId` int primary key AUTO_INCREMENT,
        	`userName` varchar(20),
        	`loginName` varchar(20),
        	`password` varchar(20),
        	`tel` varchar(50),
        	`registerTime` datetime,
        	`status` char(1),
        	`roleId` int,
        	foreign key (roleId) references t_role(roleId)
        	);
        #插入一条数据
        insert into t_user(userName, loginName, `password`, `status`, roleId) values("至简","admin","abc123456","2",1);
        #创建一个名称为t_category的表
        create table t_category(
        categoryId int primary key,
        categoryName varchar(20)
        );
        #插入四条数据
        insert into t_category values(1,"今日头条"),(2,"综合资讯"),(3,"国内新闻"),(4,"国际新闻");
        #创建一个名为t_news的表
        create table t_news(
        newsId int primary key AUTO_INCREMENT,
        title varchar(60),
        contentTitle varchar(120),
        titlePicUrl varchar(120),
        content TEXT,
        contentAbstract varchar(300),
        keywords varchar(100),
        author varchar(30),
        publishTime dateTime,
        clicks int,
        publishStatus char(1),
        categoryId int,
        userId int,
        foreign key (categoryId) references t_category(categoryId),
        foreign key (userId) references t_user(userId)
        );
        

        整合环境搭建

        创建一个maven项目

        添加Web整合(在Project structure里面的Facets中)

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第2张

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,第3张

        编辑pom.xml

        
        
            4.0.0
            com.hhzzy99
            newsManagerment
            1.0-SNAPSHOT
            war
            
                5.2.4.RELEASE
                1.8
                1.8
                1.8
            
            
                
                
                    org.springframework
                    spring-context
                    ${spring.version}
                
                
                    org.springframework
                    spring-aspects
                    ${spring.version}
                
                
                    org.springframework
                    spring-jdbc
                    ${spring.version}
                
                
                    org.springframework
                    spring-tx
                    ${spring.version}
                
                
                    org.springframework
                    spring-web
                    ${spring.version}
                
                
                    org.springframework
                    spring-webmvc
                    ${spring.version}
                
                
                
                    mysql
                    mysql-connector-java
                    5.1.38
                
                
                    org.mybatis
                    mybatis
                    3.5.3
                
                
                    org.mybatis
                    mybatis-spring
                    2.0.3
                
                
                
                
                    org.apache.commons
                    commons-dbcp2
                    2.1.1
                
                
                    org.apache.commons
                    commons-pool2
                    2.4.2
                
                
                    commons-logging
                    commons-logging
                    1.2
                
                
                    org.apache.ant
                    ant
                    1.9.6
                
                
                    org.apache.ant
                    ant-launcher
                    1.9.6
                
                
                    aopalliance
                    aopalliance
                    1.0
                
                
                    org.ow2.asm
                    asm
                    7.2
                
                
                    org.aspectj
                    aspectjweaver
                    1.9.5
                    runtime
                
                
                
                    cglib
                    cglib
                    3.2.6
                
                
                
                    org.javassist
                    javassist
                    3.24.1-GA
                
                
                    log4j
                    log4j
                    1.2.17
                
                
                    org.apache.logging.log4j
                    log4j-api
                    2.12.1
                
                
                
                    org.apache.logging.log4j
                    log4j-core
                    2.11.0
                
                
                    org.slf4j
                    slf4j-api
                    1.7.30
                
                
                    org.slf4j
                    slf4j-log4j12
                    1.7.22
                
                
                
                    ognl
                    ognl
                    3.2.10
                
                
                
                    org.apache.taglibs
                    taglibs-standard-spec
                    1.2.5
                
                
                    org.apache.taglibs
                    taglibs-standard-impl
                    1.2.5
                
                
                
                    com.fasterxml.jackson.core
                    jackson-annotations
                    2.10.1
                
                
                    com.fasterxml.jackson.core
                    jackson-core
                    2.10.1
                
                
                    com.fasterxml.jackson.core
                    jackson-databind
                    2.10.1
                
                
                
                    org.apache.commons
                    commons-lang3
                    3.4
                
                
                    javax.servlet
                    servlet-api
                    2.5
                
            
            
            
                
                    
                        src/main
                        
                            **/*.properties
                            **/*.xml
                            **/**/*.xml
                        
                        false
                    
                
                
                    
                    
                        org.apache.maven.plugins
                        maven-war-plugin
                        3.0.0
                        
                            
                                
                                    web
                                
                            
                        
                    
                
            
        
        

        编写配置文件

        在resources下创建相应的文件

        db.properties

        jdbc.driver=com.mysql.jdbc.Driver
        jdbc.url=jdbc:mysql:/localhost:3306/news?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&useSSL=false
        jdbc.username=root
        jdbc.password=123456
        jdbc.maxTotal=30
        jdbc.maxIdle=10
        jdbc.initialSize=5
        

        applicationContext.xml

        
        
            
            
            
            
                
                
                
                
                
                
                
            
            
            
                
            
            
            
                
                    
                    
                    
                    
                    
                    
                    
                    
                    
                    
                
            
            
            
                
            
            
            
                
                
                
                
            
            
            
                
            
            
            
        
        

        mybatis-config.xml

        
        
        
            
            
                
            
            
                
                
                
                
            
        
        

        springmvc-config.xml

        
        
            
            
            
            
            
            
            
            
            
            
            
                
                
                
                
            
            
            
                
                
                
                    
                    
                    
                    
                    
                
            
        
        

        编写/web/WEB-INF目录下的web.xml文件

        
        
            
            
                contextConfigLocation
                classpath*:applicationContext.xml
            
            
                org.springframework.web.context.ContextLoaderListener
            
            
            
                encoding
                org.springframework.web.filter.CharacterEncodingFilter
                
                    encoding
                    UTF-8
                
            
            
                encoding
                *.action
            
            
            
                springmvc
                org.springframework.web.servlet.DispatcherServlet
                
                
                    contextConfigLocation
                    classpath*:springmvc-config.xml
                
                
                1
            
            
                springmvc
                *.action
            
            
            
                index.jsp
            
        
        

        此时配置文件基本完成

        下面是项目的目录结构

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,目录结构,第4张

        运行结果图

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第5张

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第6张

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第7张

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第8张

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第9张

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第10张

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第11张

        【SSM整合】对Spring、SpringMVC、MyBatis的整合,以及Bootstrap的使用,简单的新闻管理系统,在这里插入图片描述,第12张


        结语

        以上就是今天要讲的内容,主要是SSM的整合使用,因为代码太多了,不好放在这上面,所以大家可以关注公众号 回复 新闻就可以获取代码哟。

        如果各位大哥大姐对我所写的内容觉得还行的话,希望可以点个关注,点个收藏,您的支持就是我最大的动力,非常感谢您的阅读(❁´◡`❁)