新建Maven后台项目.返回接口(2020-1-20 15:23:25)

IDEA新建项目->org.jetbrains.idea.maven.model.MavenArchetype@47f82e57

也就是.maven-archetype-webapp模板.
(2020-1-20 15:30:56)
将模板往里面套.

模板git位置

(2020-1-20 15:34:38)
配置Spring和Mybatis
创建简单数据库.
实现该有的功能.
(2020-1-20 15:35:04)
模仿模板配置.

从pom.xml开启.启用Mybatis及其插件.自动生成pojo类.以及.dao层Java读取数据基本操作文件.以及dao层对应的xml配置文件.

设计数据库.

(2020-1-20 15:39:33)
简单数据库.
在这里插入图片描述
新建并标记两个文件夹.
在这里插入图片描述
一个警告.
在这里插入图片描述
复制该文件.

mysql> create database message;
Query OK, 1 row affected (0.05 sec)

使用cmd命令行创建数据库.(2020-1-20 15:46:29)

修改jdbc.properties复制的这个文件:

jdbc.url=jdbc:mysql://localhost:3306/message?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT

使用IDEA的Database.导入.import.上述文件.
在这里插入图片描述
新建表格
新建一个table.

关于数据库字符类型

关于日期时间的类型细分

使用DATETIME(2020-1-20 15:57:05)

设置默认值?为当前值?插入时

CURRENT_TIMESTAMP

默认值设为以上.

执行代码.
自动生成SQL语句

create table messages
(
	time datetime default CURRENT_TIMESTAMP not null,
	message varchar(200) not null
)
comment '回复表格';

无主键.无其他.(2020-1-20 16:03:06)

数据库产生完毕.

使用Mybatis进行生成pojo类和等等.

(2020-1-20 16:04:10)
在这里插入图片描述
创建包和文件夹(2020-1-20 16:08:41)

从模板拷贝几个Spring的依赖.

在这里插入图片描述
(2020-1-20 16:11:33)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<project ...>
...
	<build>
		<finalName>ssm</finalName>
		<plugins>
			<!--<groupId>org.mybatis.generator</groupId>-->
			<!--<artifactId>mybatis-generator-maven-plugin</artifactId>-->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>7</source>
                    <target>7</target>
                </configuration>
            </plugin>
        </plugins>
	</build>
</project>

以及模板中的插件.(2020-1-20 16:15:04)
复制到自己的pom后如下:

<build>
    <finalName>message</finalName>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>

        <!--增加的插件.-->
        <plugin>
          <groupId>org.mybatis.generator</groupId>
          <artifactId>mybatis-generator-maven-plugin</artifactId>
          <version>1.3.5</version>
          <configuration>
            <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
            <verbose>true</verbose>
            <overwrite>true</overwrite>
          </configuration>
          <executions>
            <execution>
              <id>Generate MyBatis Artifacts</id>
              <goals>
                <goal>generate</goal>
              </goals>
            </execution>
          </executions>
          <dependencies>
            <dependency>
              <groupId>org.mybatis.generator</groupId>
              <artifactId>mybatis-generator-core</artifactId>
              <version>1.3.5</version>
            </dependency>
          </dependencies>
        </plugin>
        ...自动生成的内容
      </plugins>
    </pluginManagement>
  </build>

将要用到的plugin移动到?pluginManagement外面?
最终插件效果:

<build>
    <finalName>message</finalName>
    <plugins>
      <plugin>
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-maven-plugin</artifactId>
        <version>1.3.5</version>
        <configuration>
          <!--配置????-->
          <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
          <!--重要,这个文件是mybatis-generator的重点。-->
          <verbose>true</verbose>
          <overwrite>true</overwrite>
        </configuration>
        <executions>
          <execution>
            <id>Generate MyBatis Artifacts</id>
            <goals>
              <goal>generate</goal>
            </goals>
          </execution>
        </executions>
        <dependencies>
          <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.3.5</version>
          </dependency>
        </dependencies>
      </plugin>
    </plugins>




    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>

        <!--增加的插件.-->
        ...等等等等
      </plugins>
    </pluginManagement>
  </build>

查看IDEA-Maven面板
在这里插入图片描述

差一个配置文件.

将该文件放在resources下面.
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="jdbc.properties"/>-->
    <classPathEntry location="D:\Maven\Repository\mysql\mysql-connector-java\8.0.15\mysql-connector-java-8.0.15.jar"/>
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="false"/>
        </commentGenerator>
        <!--<jdbcConnection driverClass="${jdbc.driver}"
                        connectionURL="${jdbc.url}" userId="${jdbc.username}" password="${jdbc.password}">
        </jdbcConnection>-->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/message?serverTimezone=GMT&amp;useSSL=false"
                        userId="root" password="">
            <!--<property name="serverTimezone" value="UTC"/>-->
            <!--参考 : http://www.mybatis.org/generator/usage/mysql.html-->
            <property name="nullCatalogMeansCurrent" value="true"/>
        </jdbcConnection>
        <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer true,把JDBC DECIMAL 和
            NUMERIC 类型解析为java.math.BigDecimal -->
        <!--???什么意思啊?-->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 生成模型的包名和位置 -->
        <!--改--><!--实体类??-->
        <javaModelGenerator targetPackage="com.ss.pojo"
                            targetProject="src/main/java">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="true"/>
            <!-- 从数据库返回的值被清理前后的空格 -->
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- 生成映射文件的包名和位置XML文件 -->
        <!--改,dao的xml实现--><!--targetProject也要改-->
        <sqlMapGenerator targetPackage="dao_mapper"
                         targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!-- 生成DAO的包名和位置 -->
        <!--改,dao层接口-->
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="com.ss.dao" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
        <!-- tableName:用于自动生成代码的数据库表;domainObjectName:对应于数据库表的javaBean类名 -->
        <!--book_info数据库表明-->                  <!--别名Book_Info  pojo(实体类明)-->
        <table tableName="messages"
               domainObjectName="messages"
               enableCountByExample="false"
               enableUpdateByExample="false"
               enableDeleteByExample="false"
               enableSelectByExample="false"
               selectByExampleQueryId="false">
        </table>
    </context>
</generatorConfiguration>

尝试运行?(2020-1-20 16:36:49)
在这里插入图片描述
双击运行.
成功.
(2020-1-20 16:38:20)

然后是Service层开始写?

(2020-1-20 16:40:57)
在这里插入图片描述
新建接口.(2020-1-20 16:43:23)

缺少配置文件.

在这里插入图片描述
拷贝模板Mybatis.
拷贝Spring三个配置文件.并修改.
在这里插入图片描述
稍作修改.并且点击配置.
在这里插入图片描述
在这里插入图片描述
实现接口messageService并且.对messageServiceImpl类添加@Service标注.(2020-1-20 16:55:45)ok可以进行业务的开发了.

-------------------------------------------------------------------------

(2020-1-20 19:42:53)
遇到一些问题.
Mybatis访问出错.以及接口访问失败?

关于Mybatis

在这里插入图片描述
最终测试可以访问数据库并且插入数据.
测试有用.如果不加环境也会出错.考虑是Spring配置有问题?(2020-1-20 19:49:20)
考虑到可能是web层没有配置好Spring的配置.
web.xml添加Spring配置.
复制模板.(2020-1-20 19:51:21)

<web-app>
  <display-name>Archetype Created Web Application</display-name>
  
  <servlet>
    <servlet-name>mvc-dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:spring/spring-web.xml</param-value>
    </init-param>
  </servlet>
  <servlet-mapping>
    <servlet-name>mvc-dispatcher</servlet-name>
    <!-- 默认匹配所有的请求 -->
    <url-pattern>/</url-pattern>
  </servlet-mapping>
  
</web-app>

添加到web.xml下面.(2020-1-20 19:52:52).
重启Tomcat显示成功.(2020-1-20 19:54:10).

自己添加的Mybatis代码成功查询所有.

<select id="selectAll" resultType="com.gwdsss.pojo.messages">
    select * from messages
  </select>

返回类型没有问题.可以使用.(2020-1-20 20:23:43)
成功.
后端补充一下.
完成前端即可.

上传服务器之前.build时.会把我们的数据库生成的三个文件重新生成.一定要把Mybatis自动生成插件.注释掉.

否则…
当然.也可以在History中恢复.IDEA很全面.(2020-1-20 20:57:12).

<!--<groupId>org.mybatis.generator</groupId>-->
                <!--<artifactId>mybatis-generator-maven-plugin</artifactId>-->

把这一段代码及外面的到plugin及里面的代码全部注释掉.
在这里插入图片描述
已经可以访问了.目前需要把本地数据库导出.并且上传到服务器数据库.即可.(2020-1-20 20:55:48)

导出数据库数据.

(2020-1-20 21:03:26)
在这里插入图片描述
或者选择上面的SQL Scripts也可以查看一些SQL语句复制.
第一个.
选Inserts即可.

数据成功上传.下面开发前端

(2020-1-20 21:14:14)
在这里插入图片描述
利用Ajax和vue项目.访问该接口即可.

发布了65 篇原创文章 · 获赞 16 · 访问量 5036

猜你喜欢

转载自blog.csdn.net/gwdfff/article/details/104052451