新建Maven后台项目.返回接口(2020-1-20 15:23:25)
IDEA新建项目->aaa@qq.com
也就是.maven-archetype-webapp模板.
将模板往里面套.
模板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&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)
双击运行.
成功.
然后是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项目.访问该接口即可.
上一篇: C语言递归函数
下一篇: FileZilla 支持 sftp 传输