zoukankan      html  css  js  c++  java
  • 使用Springboot快速搭建SSM框架

    Spring Boot设计目的是用来简化Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

    一、环境准备

      Idea 2017 或 2018,直接安装即可,太低版本webapp模板不同。

      tomcat8.0 解压缩即可,配置不配置tomcathome都可。

      mysql5.6

      maven3.5.0

      Java安装jdk版本即可。

     二、通过maven模板创建Java web项目

       1、点击 New project,选择maven-webapp项目

       2、输入groupid和artifactid,随便输入即可。单机next

       3、如果没有maven选择即可,选好后单击 next

       4、选择存放目录后,单击 Finish,开始创建项目

     

       5、第一次根据你的网络不同所需时间不同,我第一次创建大概用了10多分钟。成功后如下图能看到web.xml部署描述文件。

    三、创建Java web项目文件结构

       1、创建好后结构如下图

    srcmain
    	java
    		com
    			huatu
    				qa
    					controller
    					dao
    					entity
    					service
    						impl
    					Application.java
    	resources
    		application.yml
    	test
    

      2、目录创建完毕选择,源码 Source root;资源 resource,test等资源目录

     

    四、配置pom.xml导入必要的jar包

      1、添加 spring-boot-starter-parent

      <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.1.RELEASE</version>
      </parent>
    

      2、添加 “spring-boot-starter-web”、“mysql-connector-java”、“org.mybatis.spring.boot”

        <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
          <groupId>mysql</groupId>
          <artifactId>mysql-connector-java</artifactId>
          <version>6.0.6</version>
        </dependency>
        <dependency>
          <groupId>org.mybatis.spring.boot</groupId>
          <artifactId>mybatis-spring-boot-starter</artifactId>
          <version>1.3.1</version>
        </dependency>
    

      配置好后如下图:

     五、配置tomcat

       1、点击 Run -> Edit Configurations

       2、如果第一次配置需要选择“Templates” -> Local

      主要设置tomcat位置,选择你的tomcat加压缩目录即可。

      3、再次点击 Run -> Edit Configurations,点 + 号,选择里边的 Tomcat server -> local

       4、选择 “Deployment” -> + 号,选择 “war exploded”,在开发阶段选择这个支持热部署。

       5、保存后设置context

     

      6、返回后确认下端口,之后点击“run”即可启动tomcat

       7、运行成功后会自动打开浏览器看到如下图

      8、下次再次运行可以直接点击 run -> tomcat

     

     六、配置mybatis

      1、 在mysql中创建数据库及表,表明 user_info。字段两个 user_id、user_name。创建好后再增加几条数据

      2、在 resources 目录添加 application.yml  配置数据源和映射文件路径

    #application.yml
    spring:
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://127.0.0.1:3306/aaa?serverTimezone=GMT
        username: root
        password: 123456
    
    mybatis:
      mapper-locations: classpath:dao/**/*Dao.xml
    

      其中:

        1、serverTimezone=GMT 是高版本mysql jar需要配置服务器时区

        2、com.mysql.cj.jdbc.Driver 为高版本mysql使用的driver

    七、编写代码

    1、编写实体类 

      在 entity 目录创建 UserInfo.java 类,内容如下

    package com.huatu.qa.entity;
    
    public class UserInfo {
        private String userId;
        private String userName;
    
    下边是get set方法
    

    2、Dao层代码

       在 dao 目录中添加 UserInfoDao.java、UserInfoDao.xml

      dao接口

    package com.huatu.qa.dao;
    
    import com.huatu.qa.entity.UserInfo;
    import org.apache.ibatis.annotations.Mapper;
    import org.springframework.stereotype.Repository;
    
    import java.util.List;
    
    @Mapper
    @Repository
    public interface UserInfoDao {
        public List<UserInfo> selectAll();
    }
    

      mapper映射文件

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
    <mapper namespace="com.huatu.qa.dao.UserInfoDao">
    
        <resultMap id="AllColumnMap" type="com.huatu.qa.entity.UserInfo">
            <result column="user_id" property="userId"/>
            <result column="user_name" property="userName"/>
        </resultMap>
    
        <select id="selectAll" resultMap="AllColumnMap">
            SELECT * FROM user_info
        </select>
    </mapper>
    

      修改pom.xml复制mapper映射文件到resource目录

        <resources>
          <resource>
            <directory>src/main/java/com/huatu/qa</directory>
            <includes>
              <include>**/*.xml</include>
            </includes>
          </resource>
        </resources>
    

      pom改完后如下,这里有两个选择

        1、将mapper直接放到resource目录。mvn编译时会自动将xml复制到运行resource目录。但这样有一个问题就是如果你有多个配置,比如测试配置,生产配置每个目录里都要有一份mapper文件。

        2、就是放到dao或其它目录运行时在通过pom中的resource配置,复制到运行resource目录。之前就是这里忘记配置了,导致找不到mapper文件。

    3、Service层代码

      在 service 目录中创建一个接口 IUserInfoService.java

    package com.huatu.qa.service;
    
    public interface IUserInfoService {
        Object selectAll();
    }
    

      在 serviceimpl 目录下创建一个实现类 UserInfoService.java

    package com.huatu.qa.service.impl;
    
    import com.huatu.qa.dao.UserInfoDao;
    import com.huatu.qa.entity.UserInfo;
    import com.huatu.qa.service.IUserInfoService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    
    import java.util.List;
    
    @Service
    public class UserInfoService implements IUserInfoService {
    
        @Autowired
        UserInfoDao userInforDao;
    
        @Override
        public Object selectAll() {
            List<UserInfo> list = userInforDao.selectAll();
            return list;
        }
    }
    

    4、controller层代码 

      在 controller 目录下创建 UserInfoController.java

    package com.huatu.qa.controller;
    
    import com.huatu.qa.service.IUserInfoService;
    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;
    
    @Controller
    public class UserInfoController {
        @Autowired
        IUserInfoService userInfoService;
    
        @RequestMapping("/users")
        @ResponseBody
        public Object selectAll(){
            return userInfoService.selectAll();
        }
    
    }
    

    5、配置快速启动类

      在 package 目录 创建 Application.java

    package com.huatu.qa;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.builder.SpringApplicationBuilder;
    import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
    
    @SpringBootApplication
    public class Application extends SpringBootServletInitializer {
    
        public static void main(String[] args){
            SpringApplication.run(Application.class, args);
        }
    
        @Override
        protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
            return builder.sources(Application.class);
        }
    
    }
    

      以上都完成后如下图

    八、运行

      1、点击 run -> tomcat ,如果之前已经启动tomcat请重启。如果启动两个tomcat会报端口冲突,需要手动找到那个java进程kill掉。

     

      2、浏览器输入接口地址 http://localhost:8080/htqa_war_exploded/users  会看到请求回来的数据

      到此使用springboot搭建一个完整ssm项目框架,是不是越来越简单。

     

    参考文档:

      Springboot快速搭建SSM框架

      https://blog.csdn.net/qq1131410679/article/details/79958441

       快速搭建一个SSM框架demo

      https://www.cnblogs.com/wchxj/p/8017449.html

  • 相关阅读:
    WPF 获得DataTemplate中的控件
    WPF 制作模板页示例
    ListBox 单击变大动画效果(使用模板、样式、绑定数据源等)
    【转】关于“The type **** is not accessible due to restr
    【转】关于“The type **** is not accessible due to restr
    Jquery主要控件的取值、赋值,包括textbox,button,lable,radio,chec
    List转换成为数组
    如何把两个rs结果集中的内容合并到一个结果集中
    Jquery主要控件的取值、赋值,包括textbox,button,lable,radio,chec
    chrome新建标签 打开主页 谷歌浏览器新建标签页自动打开主页
  • 原文地址:https://www.cnblogs.com/rslai/p/10125810.html
Copyright © 2011-2022 走看看