springboot+mybatis动态创建数据表和删除数据库表
【摘要】
关于动态创建删除数据库表一共包含三个步骤,
引入依赖动态创建动态删除
前提自己先创建一个springboot的项目
第一步: 引入相关依赖(操作数据库的三剑客)
pom中mysql三剑客依赖<...
关于动态创建删除数据库表一共包含三个步骤,
- 引入依赖
- 动态创建
- 动态删除
前提自己先创建一个springboot的项目
第一步: 引入相关依赖(操作数据库的三剑客)
- pom中mysql三剑客依赖
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.4</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.9</version> </dependency>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
第二步:动态建表{自定义表明,字段}
-
controller
@RequestMapping("/createTable") //动态创建表 public void test2(){ String tableName = "t2"; //mybatis中#() 占位符,对应的变量会自动加上引号 $() 拼接符,对应的变量不会自动加上引号 String name = "name"; //表中字段名字 testService.test12(tableName,name);//创建表 return; }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
-
service
void test12(String tableName,String name);
- 1
-
serviceimpl
@Override public void test12(String tableName,String name) { testMapper.test2(tableName,name); return; }
- 1
- 2
- 3
- 4
- 5
-
mapper
void test2(@Param("tableName") String tableName,@Param("name") String name);
- 1
-
mapper.xml
<!--这个注意是用${} 因为$这个符号是拼接的意思,而#{}是占位符,会自动把变量的值两边加上引号--> <update id="test2" parameterType="java.lang.String"> CREATE TABLE ${tableName}( id int NOT NULL AUTO_INCREMENT PRIMARY KEY , ${name} varchar(10) NOT null ) </update>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
第三步:动态删除数据表
-
controller
@RequestMapping("/deleteTable") //动态删除表 public void deletetable(){ String tableName = "t2"; testService.test3(tableName); return; }
- 1
- 2
- 3
- 4
- 5
- 6
-
service
void test3(String tableName);
- 1
-
serviceimpl
@Override public void test3(String tableName) { testMapper.test3(tableName); }
- 1
- 2
- 3
- 4
-
mapper
void test3(@Param("tableName") String tableName);
- 1
-
mapper.xml
<update id="test3" parameterType="java.lang.String"> DROP TABLE IF EXISTS ${tableName} </update>
- 1
- 2
- 3
公众号:知识浅谈
到此就结束了,如果对您有帮助,请君三连哦。
文章来源: englishcode.blog.csdn.net,作者:知识浅谈,版权归原作者所有,如需转载,请联系作者。
原文链接:englishcode.blog.csdn.net/article/details/120138390
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)