基于SSM框架快速搭建maven后台项目

基于SSM框架快速搭建maven后台项目

环境准备

1.IntelliJ IDEA

2.Maven

https://maven.apache.org/

3.MYSQL

https://www.mysql.com/

4.Tomcat

http://tomcat.apache.org/

5.JDk

https://www.oracle.com/java/t...

SSM框架简介

无论你是前端,APP,后端开发工程师,搭建一个自己的后台对于学习都是很有帮助的,本文是作者搭建SSM后端环境的记录,阅读完本文你也可以快速搭建一个属于自己的后端代码。

SSM框架是Spring MVC ,Spring和Mybatis框架的整合,是标准的MVC模式,将整个系统划分为View层,Controller层,Service层,DAO层四层,使用Spring MVC负责请求的转发和视图管理,Spring实现业务对象管理,Mybatis作为数据对象的持久化引擎。

数据库配置

首先我们创建一个数据库和表。

创建数据库的SQL

CREATE DATABASE time_manager_app

创建数据表的SQL

DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` int(8) NOT NULL COMMENT '主键',
  `name` varchar(255) COLLATE utf8_bin NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

向数据表中插入一条数据

INSERT INTO `user` VALUES ('1', '1');

创建工程

现在我们打开IDEA创建我们的maven工程

File->New->Project

基于SSM框架快速搭建maven后台项目_第1张图片

选择maven,选中红框中的选项,点击Next

基于SSM框架快速搭建maven后台项目_第2张图片

红框中的两个选项随便输入,点击Next

基于SSM框架快速搭建maven后台项目_第3张图片

红框中选择本地安装的maven软件的位置,点击Next

基于SSM框架快速搭建maven后台项目_第4张图片

点击finish

基于SSM框架快速搭建maven后台项目_第5张图片

现在我们的maven工程就创建好了

基于SSM框架快速搭建maven后台项目_第6张图片

接下来我们要创建一些工程需要的文件夹

右键选择SRC->NEW->Directory

基于SSM框架快速搭建maven后台项目_第7张图片

创建好的文件目录如下

基于SSM框架快速搭建maven后台项目_第8张图片

右键JAVA将它设置为Source Root

基于SSM框架快速搭建maven后台项目_第9张图片

右键resource将它设置为Resources Root

基于SSM框架快速搭建maven后台项目_第10张图片

工程创建完毕,接下来我们编写我们需要的配置文件

配置文件编写

首先我们在POM.XML中添加我们需要的依赖包

注意,复制时从备注里的copy开始,复制到copy结束,不要整个文件复制



    4.0.0

    com.ssmtest
    ssmtest
    1.0-SNAPSHOT
      
    
    
        4.2.4.RELEASE
        3.2.8
        1.7.12
        1.2.17
        1.0.9
    
  
    
    
        
        
            junit
            junit
            4.11
            
            test
        
        
            org.aspectj
            aspectjweaver
            1.6.8
        
        
        
            org.springframework
            spring-test
            ${spring.version}
        
        
            org.springframework
            spring-core
            ${spring.version}
        
        
            org.springframework
            spring-oxm
            ${spring.version}
        
        
            org.springframework
            spring-tx
            ${spring.version}
        
        
            org.springframework
            spring-jdbc
            ${spring.version}
        
        
            org.springframework
            spring-aop
            ${spring.version}
        
        
            org.springframework
            spring-context
            ${spring.version}
        
        
            org.springframework
            spring-context-support
            ${spring.version}
        
        
            org.springframework
            spring-expression
            ${spring.version}
        
        
            org.springframework
            spring-orm
            ${spring.version}
        
        
            org.springframework
            spring-web
            ${spring.version}
        
        
            org.springframework
            spring-webmvc
            ${spring.version}
        
        
        
        
            org.mybatis
            mybatis
            ${mybatis.version}
        
        
            org.mybatis
            mybatis-spring
            1.2.2
        
        
        
        
            mysql
            mysql-connector-java
            5.1.35
        
        
        
            commons-dbcp
            commons-dbcp
            1.4
        
        
        
            jstl
            jstl
            1.2
        
        
        
            log4j
            log4j
            ${log4j.version}
        
        
            org.slf4j
            slf4j-api
            ${slf4j.version}
        
        
            org.slf4j
            slf4j-log4j12
            ${slf4j.version}
        
        
        
            com.alibaba
            druid
            ${druid.version}
        

        
        
        
            com.fasterxml.jackson.core
            jackson-annotations
            2.5.0
        
        
            com.fasterxml.jackson.core
            jackson-core
            2.5.0
        
        
            com.fasterxml.jackson.core
            jackson-databind
            2.5.0
        
        
            com.fasterxml.jackson.jr
            jackson-jr-all
            2.5.0
        
        
            com.alibaba
            fastjson
            1.2.46
        
        
            c3p0
            c3p0
            0.9.1.2
            jar
            compile
        
    

    
        jackwu
        
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.2
                
                    1.8
                    1.8
                    UTF-8
                
            
        

        
        
            
                src\main\resources
                
                    **/*.properties
                    **/*.xml
                    **/*.tld
                
                false
            
            
                src\main\java
                
                    **/*.java
                
            
        
    
    

PS:如果你的网络环境不好,Maven下载依赖包需要一段时间,不要着急,继续接下来的配置就可以了

接下来我们在WEB-INF目录下创建web.xml

web.xml内容如下,整个copy就可以




    
    
        contextConfigLocation
        classpath*:applicationContext.xml
    

    
    
        org.springframework.web.context.ContextLoaderListener
    
    
        org.springframework.web.context.request.RequestContextListener
    

    
    
        characterEncodingFilter
        org.springframework.web.filter.CharacterEncodingFilter
        
            encoding
            UTF-8
        
    
    
        characterEncodingFilter
        /*
    


    
    
        dispatcherServlet
        org.springframework.web.servlet.DispatcherServlet
        
        
            contextConfigLocation
            classpath:spring-mvc.xml
        
        
        1
    
    
        dispatcherServlet
        *.do
    



    
        index.html
        index.htm
        index.jsp
        default.html
        default.htm
        default.jsp
    

接着我们在resources文件夹下创建applicationContext.xml

同样内容整个复制




    
    
    
    
    

    
    
    
        
        
        
        
    
    
    
        

    
    
    
        
    

    
    
    
        
    

    

接着我们在resource文件夹下创建spring-mvc.xml

同样内容整个复制




    
    
    

    
    
        
        
        
        
    


    
    

    

    
    
    
    
        
            
                
                    
                        
                            text/html;charset=UTF-8
                            text/plain;charset=UTF-8
                            application/json;charset=UTF-8
                        
                    
                
            
        
    

接着我们在resource文件夹下创建db.properties

同样内容整个复制

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/time_manager_app?characterEncoding=utf-8
jdbc.username=root
jdbc.password=root

现在我们的工程文件结构是这样的

基于SSM框架快速搭建maven后台项目_第11张图片

接下来我们要编写我们的java代码

Java代码编写

首先我们创建几个需要的文件夹

基于SSM框架快速搭建maven后台项目_第12张图片

接着我们在相应的文件夹下创建我们的java文件

文件结构如下

基于SSM框架快速搭建maven后台项目_第13张图片

每个文件下的代码如下

UserController

package controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import service.UserService;

@Controller
@RequestMapping("/user")
public class UserController {
    @Autowired
    private UserService userService;

    @RequestMapping("/find.do")
    @ResponseBody
    public Object findAll(){
        Object a = userService.findAll();
        System.out.println(a);
        return  a;
    }
}

UserDao

package dao;

import org.apache.ibatis.annotations.Select;
import pojo.User;

import java.util.List;

public interface UserDao {
    @Select("select * from user")
    public List findAll();
}

User

package pojo;

public class User {
    private int id;
    private String name;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

UserServiceImpl

package service.impl;

import dao.UserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import pojo.User;
import service.UserService;

import java.util.List;

@Service
@Transactional
public class UserServiceImpl implements UserService {
    @Autowired
    private UserDao userDao;
    public List findAll(){
        return  userDao.findAll();
    }
}

UserService

package service;

import pojo.User;

import java.util.List;

public interface UserService {

    public List findAll();
}

到这里代码应该是没有错误的.如果有错误,可能是依赖包没有下载好,等待一下

接下来我们配置tomcat

配置tomcat

点击idea右上角的位置,接着点击edit

基于SSM框架快速搭建maven后台项目_第14张图片

按顺序点击红色框的位置

基于SSM框架快速搭建maven后台项目_第15张图片

在红框处选择tomcat版本

基于SSM框架快速搭建maven后台项目_第16张图片

接着配置我们的war包,点击红色框处

基于SSM框架快速搭建maven后台项目_第17张图片

选择第二个

基于SSM框架快速搭建maven后台项目_第18张图片

清空application context中的内容,点击apply

基于SSM框架快速搭建maven后台项目_第19张图片

NO NO NO配置中间我们出现了一个问题

应该把resource文件夹更名为resources Sorry

正确的工程路径如下

基于SSM框架快速搭建maven后台项目_第20张图片

启动程序

接下来我们要启动我们的程序,测试是否配置成功

按顺序点击红框处

基于SSM框架快速搭建maven后台项目_第21张图片

等待打包成功,会出现target文件夹,控制台log如下

基于SSM框架快速搭建maven后台项目_第22张图片

接着点击绿色箭头,启动程序

基于SSM框架快速搭建maven后台项目_第23张图片

测试

打开我们的浏览器,输入http://localhost:8080/user/find.do

Amazing数据库中的一条数据已经成功返回了,到此我们的SSM工程配置成功。

代码仓库位置

如果你觉得配置太麻烦,你也可以在github上下载作者配置好的项目

项目地址https://github.com/jack0-0wu/...

后续还会创作几篇如何快速使用此项目完善后台逻辑,欢迎关注

欢迎关注微信公众号,文章会首发在微信公众号。
可以搜索公众号名 ‘’杰克的程序人生‘’

师者,所以传道授业解惑也,教师节快乐

你可能感兴趣的:(java,spring,maven,mybatis)