zoukankan      html  css  js  c++  java
  • springboot相关配置

    博客搬家:springboot相关配置

    配置mybatis

    • application.properties中配置
    mybatis.mapper-location=classpath:com/leida/mapper/*.xml
    
    #配置数据库连接信息
    spring.datasource.username=root
    spring.datasource.password=123456
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver
    spring.datasource.url=jdbc:mysql://127.0.0.1:3307/mls?useUnicode=true&characterEncoding=utf8&useSSL=false
    
    • pom.xml中添加以下配置
    <!-- 继承springboot的父级项目依赖 -->
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.2.0.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
    
        <!-- 属性配置 -->
        <properties>
            <java.version>1.8</java.version>
        </properties>
    
        <dependencies>
            <!-- 开发web项目的起步依赖 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <!--加载mybatis整合springboot-->
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>1.3.2</version>
            </dependency>
            <!--mysql的jdbc驱动包-->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
            </dependency>
    
        </dependencies>
    
    • 编写generatorConfig.xml,自动生成代码的根文件
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE generatorConfiguration
            PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
            "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
    <generatorConfiguration>
        <!--导入属性配置 -->
        <properties resource="application.properties"></properties>
    
        <!--指定特定数据库的jdbc驱动jar包的位置 -->
        <classPathEntry location="C:Usersleida.m2
    epositorymysqlmysql-connector-java8.0.18mysql-connector-java-8.0.18.jar"/>
    
        <context id="default" targetRuntime="MyBatis3">
    
    
            <!-- optional,旨在创建class时,对注释进行控制 -->
            <commentGenerator>
                <property name="suppressDate" value="true" />
            </commentGenerator>
    
    
            <!--jdbc的数据库连接 -->
            <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3307/mls" userId="root" password="123456">
            </jdbcConnection>
    
    
    
            <!-- 非必需,类型处理器,在数据库类型和java类型之间的转换控制-->
            <javaTypeResolver >
                <property name="forceBigDecimals" value="false" />
            </javaTypeResolver>
    
            <!-- Model模型生成器,用来生成含有主键key的类,记录类 以及查询Example类
                targetPackage     指定生成的model生成所在的包名
                targetProject     指定在该项目下所在的路径
            -->
            <javaModelGenerator targetPackage="com.leida.model" targetProject="src/main/java">
                <!-- 是否对model添加 构造函数 -->
                <property name="constructorBased" value="true"/>
    
                <!-- 是否允许子包,即targetPackage.schemaName.tableName -->
                <property name="enableSubPackages" value="false"/>
    
                <!-- 建立的Model对象是否 不可改变  即生成的Model对象不会有 setter方法,只有构造方法 -->
                <property name="immutable" value="true"/>
    
                <!-- 给Model添加一个父类 -->
    <!--            <property name="rootClass" value="com.foo.louis.Hello"/>-->
    
                <!-- 是否对类CHAR类型的列的数据进行trim操作 -->
                <property name="trimStrings" value="true"/>
            </javaModelGenerator>
    
            <!--Mapper映射文件生成所在的目录 为每一个数据库的表生成对应的SqlMap文件 -->
            <sqlMapGenerator targetPackage="com.leida.mapper" targetProject="src/main/java">
                <property name="enableSubPackages" value="false"/>
            </sqlMapGenerator>
    
    
            <!-- 客户端代码,生成易于使用的针对Model对象和XML配置文件 的代码
                    type="ANNOTATEDMAPPER",生成Java Model 和基于注解的Mapper对象
                    type="MIXEDMAPPER",生成基于注解的Java Model 和相应的Mapper对象
                    type="XMLMAPPER",生成SQLMap XML文件和独立的Mapper接口
            -->
            <javaClientGenerator targetPackage="com.leida.mapper" targetProject="src/main/java" type="MIXEDMAPPER">
                <property name="enableSubPackages" value=""/>
                <!--
                        定义Maper.java 源代码中的ByExample() 方法的可视性,可选的值有:
                        public;
                        private;
                        protected;
                        default
                        注意:如果 targetRuntime="MyBatis3",此参数被忽略
                 -->
                <property name="exampleMethodVisibility" value=""/>
                <!--
                                               方法名计数器
                  Important note: this property is ignored if the target runtime is MyBatis3.
                 -->
                <property name="methodNameCalculator" value=""/>
    
                <!--
                                                    为生成的接口添加父接口
                 -->
                <property name="rootInterface" value=""/>
    
            </javaClientGenerator>
    
    
            <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
            <table tableName="test"
                   domainObjectName="Test"
                   enableCountByExample="false"
                   enableUpdateByExample="false"
                   enableDeleteByExample="false"
                   enableSelectByExample="false"
                   selectByExampleQueryId="false">
            </table>
    
        </context>
    </generatorConfiguration>  
    
    • 在pom.xml中添加自动生成代码的插件,在build中添加如下代码
    <plugins>
        <!--mybatis代码自动生成插件-->
        <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.6</version>
            <configuration>
                <!--配置文件位置-->
                <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
                <verbose>true</verbose>
                <overwrite>true</overwrite>
            </configuration>
        </plugin>
    </plugins>
    
    • 在maven中generate生成代码,会生成model的类和接口和mapper
    • 添加controller包,添加controller
    package com.leida.controller;
    
    import com.leida.service.TestDataService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class TestController {
    
        @Autowired
        private TestDataService testDataService;
    
        @GetMapping("/testData")
        public Object testData () {
            return testDataService.getAllTestData();
        }
    }
    
    • 添加service包,里面添加接口和impl包,impl包中添加实现接口的类
    #接口
    package com.leida.service;
    
    import com.leida.model.Test;
    
    import java.util.List;
    
    public interface TestDataService {
    
        public List<Test> getAllTestData();
    }
    
    

    实现上面接口的类

    package com.leida.service.impl;
    
    import com.leida.mapper.TestMapper;
    import com.leida.model.Test;
    import com.leida.service.TestDataService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    
    import java.util.List;
    
    @Service
    public class TestDataServiceImpl implements TestDataService {
    
        @Autowired
        private TestMapper testMapper;
        @Override
        public List<Test> getAllTestData() {
            return testMapper.getAllData();
        }
    }
    
    
    • Mapper中添加底层方法
    List<Test> getAllData();
    
    • 编写TestMapper.xml,与Mapper.class中的方法名相对应
    <!--  查询所有数据-->
      <select id="getAllData"  resultMap="BaseResultMap">
        <!--
          WARNING - @mbg.generated
          This element is automatically generated by MyBatis Generator, do not modify.
        -->
        select
         *
         from test
      </select>
    </mapper>
    
    • 测试还需要在pom.xml中,plugins下面添加如下配置,主要是第一个,否则xml无法编译进文件夹
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/**</include>
            </includes>
            <!-- 开启过滤,用指定的参数替换directory下的文件中的参数 -->
            <filtering>false</filtering>
        </resource>
    
        <resource>
            <directory>src/main/webapp</directory>
            <targetPath>META-INF/resources</targetPath>
            <includes>
                <include>**/**</include>
            </includes>
        </resource>
    
        <resource>
            <directory>src/main/java</directory>
            <excludes>
                <exclude>
                    **/*.java
                </exclude>
            </excludes>
        </resource>
    </resources>
    

    集成jsp

    • pom.xml需要额外这些依赖,在dependencies中
    <!-- 测试的起步依赖 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
        <exclusions>
            <exclusion>
                <groupId>org.junit.vintage</groupId>
                <artifactId>junit-vintage-engine</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    
    <!-- 使用jsp引擎,springboot内置的tomcat没有此依赖 -->
    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
    </dependency>
    <!-- 添加servlet依赖模块 -->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <scope>provided</scope>
    </dependency>
    <!-- 添加jstl标签库依赖模块 -->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
    </dependency>
    <!--添加tomcat依赖模块.-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>
    
    • resources中的application.properties
    server.port=8080
    #上下文
    server.servlet.context-path=/mls
    
    #jsp访问路径
    spring.mvc.view.prefix=/WEB-INF/jsp/
    spring.mvc.view.suffix=.jsp
    
    • main下面建webapp/WEB-INF,下面建jsp文件
    • controller中建jspcontroller
    package com.leida.springboot.mls.controller;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.GetMapping;
    
    @Controller
    public class JSPController {
        @GetMapping("/")
        public String login(){
            return "index";
        }
    }
    
    
  • 相关阅读:
    [原][python]把python文件编译成exe(解决安装pyinstaller出现的错误)
    [原][c++][公式]计算球弧面体积------球缺
    Java运行时动态生成类几种方式
    Flink窗口Window机制详解
    Bootstrap 提示工具(Tooltip)插件
    Bootstrap-table 使用说明--如何在表格td里增加一个按钮
    如何在列表操作列区域添加按钮及控制已有按钮显示
    fastadmin 如何去掉 权重拖拽 图标
    如何设置select下拉禁止选择
    js引用cdn,如果cdn挂了,用本地js替补
  • 原文地址:https://www.cnblogs.com/buptleida/p/12090384.html
Copyright © 2011-2022 走看看