下载nacos 1.在nacos官网下载nacos 2.解压nacos,启动 创建项目 1.创建一个maven的空项目(项目名为springcloudDenmo) 2.然后在该项目下创建四个spring Initializr项目(springcloud-api、springcloud-beans、springcloud-boot、springcloud-nacos) 添加依赖 1.springcloudDenmo添加依赖
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> //这里的问号要自己写自己的父 <groupId>???</groupId> <artifactId>???</artifactId> <version>2.0.2-SNAPSHOT</version> </parent> <groupId>com.jdrx</groupId> <artifactId>springcloudDemo</artifactId> <version>1.0.0</version> <packaging>pom</packaging> <modules> <module>springcloud-api</module> <module>springcloud-beans</module> <module>springcloud-boot</module> <module>springcloud-nacos</module> </modules> <properties> <springcloud-api.version>1.0.0</springcloud-api.version> <springcloud-beans.version>1.0.0</springcloud-beans.version> <springcloud-boot.version>1.0.0</springcloud-boot.version> <commons-lang3.version>3.3.2</commons-lang3.version> <commons-io.version>2.4</commons-io.version> <guava.version>20.0</guava.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties>2.springcloud-beans添加依赖
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.jdrx</groupId> <artifactId>springcloudDemo</artifactId> <version>1.0.0</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!--<groupId>com.jdrx</groupId>--> <artifactId>springcloud-beans</artifactId> <!--<version>0.0.1-SNAPSHOT</version>--> <!--<name>springcloud-beans</name>--> <!--<description>Demo project for Spring Boot</description>--> <!--<properties>--> <!--<java.version>1.8</java.version>--> <!--<spring-cloud.version>Greenwich.SR1</spring-cloud.version>--> <!--</properties>--> <dependencies> <dependency> <groupId>com.jdrx.platform</groupId> <artifactId>platform-rest</artifactId> <version>${platform.version}</version> <exclusions> <exclusion> <artifactId>guava</artifactId> <groupId>com.google.guava</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.jdrx.platform</groupId> <artifactId>platform-jdbc</artifactId> <version>${platform.version}</version> </dependency> <dependency> <groupId>com.jdrx.platform</groupId> <artifactId>platform-jdbc-pg</artifactId> <version>${platform.version}</version> </dependency> <!--<dependency>--> <!--<groupId>org.springframework.cloud</groupId>--> <!--<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>--> <!--</dependency>--> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>${commons-lang3.version}</version> </dependency> <!--<dependency>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-starter-test</artifactId>--> <!--<scope>test</scope>--> <!--</dependency>--> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.5</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.34</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.3.11.RELEASE</version> </dependency> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.10</version> </dependency> </dependencies> <!--<dependencyManagement>--> <!--<dependencies>--> <!--<dependency>--> <!--<groupId>org.springframework.cloud</groupId>--> <!--<artifactId>spring-cloud-dependencies</artifactId>--> <!--<version>${spring-cloud.version}</version>--> <!--<type>pom</type>--> <!--<scope>import</scope>--> <!--</dependency>--> <!--</dependencies>--> <!--</dependencyManagement>--> <!--<build>--> <!--<plugins>--> <!--<plugin>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-maven-plugin</artifactId>--> <!--</plugin>--> <!--</plugins>--> <!--</build>--> </project>3.springcloud-api添加依赖
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.jdrx</groupId> <artifactId>springcloudDemo</artifactId> <version>1.0.0</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!--<groupId>com.jdrx</groupId>--> <artifactId>springcloud-api</artifactId> <version>${springcloud-api.version}</version> <!--<name>springcloud-api</name>--> <!--<description>Demo project for Spring Boot</description>--> <!--<properties>--> <!--<java.version>1.8</java.version>--> <!--<spring-cloud.version>Greenwich.SR1</spring-cloud.version>--> <!--</properties>--> <dependencies> <dependency> <groupId>com.jdrx</groupId> <artifactId>springcloud-beans</artifactId> <version>${springcloud-beans.version}</version> <exclusions> <exclusion> <artifactId>guava</artifactId> <groupId>com.google.guava</groupId> </exclusion> </exclusions> </dependency> <!--<dependency>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-starter-test</artifactId>--> <!--<scope>test</scope>--> <!--</dependency>--> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>${commons-lang3.version}</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>${commons-io.version}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml --> <dependency> <artifactId>guava</artifactId> <groupId>com.google.guava</groupId> <version>${guava.version}</version> </dependency> <dependency> <groupId>xerces</groupId> <artifactId>xercesImpl</artifactId> <version>2.11.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.rocketmq/rocketmq-client --> <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId> <version>4.5.1</version> <exclusions> <exclusion> <artifactId>commons-lang3</artifactId> <groupId>org.apache.commons</groupId> </exclusion> </exclusions> </dependency> </dependencies> <!--<dependencyManagement>--> <!--<dependencies>--> <!--<dependency>--> <!--<groupId>org.springframework.cloud</groupId>--> <!--<artifactId>spring-cloud-dependencies</artifactId>--> <!--<version>${spring-cloud.version}</version>--> <!--<type>pom</type>--> <!--<scope>import</scope>--> <!--</dependency>--> <!--</dependencies>--> <!--</dependencyManagement>--> <!--<build>--> <!--<plugins>--> <!--<plugin>--> <!--<groupId>org.springframework.boot</groupId>--> <!--<artifactId>spring-boot-maven-plugin</artifactId>--> <!--</plugin>--> <!--</plugins>--> <!--</build>--> </project>4.springcloud-boot添加依赖
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.jdrx</groupId> <artifactId>springcloudDemo</artifactId> <version>1.0.0</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.jdrx</groupId> <artifactId>springcloud-boot</artifactId> <!--<version>0.0.1-SNAPSHOT</version>--> <!--<name>springcloud-boot</name>--> <!--<description>Demo project for Spring Boot</description>--> <!--<properties>--> <!--<java.version>1.8</java.version>--> <!--<spring-cloud.version>Greenwich.SR1</spring-cloud.version>--> <!--</properties>--> <dependencies> <dependency> <groupId>com.jdrx</groupId> <artifactId>springcloud-api</artifactId> <version>${springcloud-boot.version}</version> <exclusions> <exclusion> <artifactId>guava</artifactId> <groupId>com.google.guava</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <artifactId>guava</artifactId> <groupId>com.google.guava</groupId> <version>20.0</version> </dependency> </dependencies> <!--<dependencyManagement>--> <!--<dependencies>--> <!--<dependency>--> <!--<groupId>org.springframework.cloud</groupId>--> <!--<artifactId>spring-cloud-dependencies</artifactId>--> <!--<version>${spring-cloud.version}</version>--> <!--<type>pom</type>--> <!--<scope>import</scope>--> <!--</dependency>--> <!--</dependencies>--> <!--</dependencyManagement>--> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>5.springcloud-nacos添加依赖
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.jdrx</groupId> <artifactId>springcloudDemo</artifactId> <version>1.0.0</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.jdrx</groupId> <artifactId>springcloud-nacos</artifactId> <!--<version>0.0.1-SNAPSHOT</version>--> <!--<name>springcloud-nacos</name>--> <!--<description>Demo project for Spring Boot</description>--> <!--<properties>--> <!--<java.version>1.8</java.version>--> <!--<spring-cloud.version>Greenwich.SR1</spring-cloud.version>--> <!--</properties>--> <dependencies> <dependency> <groupId>com.jdrx</groupId> <artifactId>springcloud-api</artifactId> <version>1.0.0</version> <exclusions> <exclusion> <artifactId>guava</artifactId> <groupId>com.google.guava</groupId> </exclusion> <exclusion> <artifactId>fastjson</artifactId> <groupId>com.alibaba</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.jdrx.platform</groupId> <artifactId>platform-nacos-config</artifactId> <version>${platform.version}</version> </dependency> <dependency> <groupId>com.jdrx.platform</groupId> <artifactId>platform-nacos-registry</artifactId> <version>${platform.version}</version> </dependency> <dependency> <groupId>com.jdrx.platform</groupId> <artifactId>platform-dubbo-nacos</artifactId> <version>${platform.version}</version> </dependency> </dependencies> <!--<dependencyManagement>--> <!--<dependencies>--> <!--<dependency>--> <!--<groupId>org.springframework.cloud</groupId>--> <!--<artifactId>spring-cloud-dependencies</artifactId>--> <!--<version>${spring-cloud.version}</version>--> <!--<type>pom</type>--> <!--<scope>import</scope>--> <!--</dependency>--> <!--</dependencies>--> <!--</dependencyManagement>--> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>项目结构 1.传统项目我们都是从dao->service->controller 2.现在项目首先由beans开始到api再到boot(boot指的是本地的运行启动,运用nacos的时候在nacos启动)。 3.在beans中我们创建dao、dto、entry、vo,resources创建mapper放置配置文件 4.在api下创建controller、cinfg、mq、service、utils 5.在boot的resource下properties文件和yml文件 properties文件
spring.profiles.active=dev spring.application.name=springcloudDemo debug=trueyml文件
spring: #数据源配置 datasource: druid: db-type: mysql driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/test?characterEncoding=utf-8 username: r password: 1 server: port: 8080 servlet: context-path: /jdrx-demo info: name: springcloudDemo description: springcloudDemo version: 1.0.06.nacos下创建yml文件
spring: application: name: springcloudDemo cloud: nacos: config: server-addr: 192.168.60.51:8848 file-extension: yml group: demo profiles: active: d项目书写 1.beans test类下
package com.jdrx.springcloud; import org.apache.commons.lang3.StringUtils; import org.mybatis.generator.api.CommentGenerator; import org.mybatis.generator.api.IntrospectedColumn; import org.mybatis.generator.api.IntrospectedTable; import org.mybatis.generator.api.dom.java.*; import org.mybatis.generator.api.dom.xml.XmlElement; import org.mybatis.generator.config.MergeConstants; import org.mybatis.generator.config.PropertyRegistry; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashSet; import java.util.Properties; import static org.mybatis.generator.internal.util.StringUtility.isTrue; /** * 描述: * * @version 1.9.10 * @since 1.9.10 */ public class MyBatisCommentGenerator implements CommentGenerator { private Properties properties; private Properties systemPro; private boolean suppressDate; private boolean suppressAllComments; private String currentDateStr; public MyBatisCommentGenerator() { super(); properties = new Properties(); systemPro = System.getProperties(); suppressDate = false; suppressAllComments = false; currentDateStr = (new SimpleDateFormat("yyyy-MM-dd")).format(new Date()); } @Override public void addJavaFileComment(CompilationUnit compilationUnit) { // add no file level comments by default if (compilationUnit.getType().getShortName().endsWith("PO")) { compilationUnit.addImportedTypes(new HashSet<FullyQualifiedJavaType>() {{ add(new FullyQualifiedJavaType("io.swagger.annotations.ApiModel")); add(new FullyQualifiedJavaType("io.swagger.annotations.ApiModelProperty")); add(new FullyQualifiedJavaType("org.hibernate.validator.constraints.Range")); add(new FullyQualifiedJavaType("javax.validation.constraints.NotNull")); add(new FullyQualifiedJavaType("java.util.Date")); }}); } else if (compilationUnit.getType().getShortName().endsWith("DAO")) { compilationUnit.addImportedTypes(new HashSet<FullyQualifiedJavaType>() {{ add(new FullyQualifiedJavaType("org.apache.ibatis.annotations.Mapper")); }}); } } /** * Adds a suitable comment to warn users that the element was generated, and * when it was generated. */ @Override public void addComment(XmlElement xmlElement) { return; } @Override public void addRootComment(XmlElement rootElement) { // add no document level comments by default return; } @Override public void addConfigurationProperties(Properties properties) { this.properties.putAll(properties); suppressDate = isTrue(properties.getProperty(PropertyRegistry.COMMENT_GENERATOR_SUPPRESS_DATE)); suppressAllComments = isTrue(properties.getProperty(PropertyRegistry.COMMENT_GENERATOR_SUPPRESS_ALL_COMMENTS)); } /** * This method adds the custom javadoc tag for. You may do nothing if you do * not wish to include the Javadoc tag - however, if you do not include the * Javadoc tag then the Java merge capability of the eclipse plugin will * break. * * @param javaElement the java element */ protected void addJavadocTag(JavaElement javaElement, boolean markAsDoNotDelete) { javaElement.addJavaDocLine(" *"); StringBuilder sb = new StringBuilder(); sb.append(" * "); sb.append(MergeConstants.NEW_ELEMENT_TAG); if (markAsDoNotDelete) { sb.append(" do_not_delete_during_merge"); } String s = getDateString(); if (s != null) { sb.append(' '); sb.append(s); } javaElement.addJavaDocLine(sb.toString()); } /** * This method returns a formated date string to include in the Javadoc tag * and XML comments. You may return null if you do not want the date in * these documentation elements. * * @return a string representing the current timestamp, or null */ protected String getDateString() { String result = null; if (!suppressDate) { result = currentDateStr; } return result; } @Override public void addClassComment(InnerClass innerClass, IntrospectedTable introspectedTable) { System.out.println("========="+innerClass.getType().getShortName()); if (suppressAllComments) { return; } StringBuilder sb = new StringBuilder(); innerClass.addJavaDocLine("/**"); sb.append(" * "); sb.append(introspectedTable.getFullyQualifiedTable()); sb.append(" "); sb.append(getDateString()); innerClass.addJavaDocLine(sb.toString().replace("\n", " ")); innerClass.addJavaDocLine(" */"); } @Override public void addEnumComment(InnerEnum innerEnum, IntrospectedTable introspectedTable) { if (suppressAllComments) { return; } StringBuilder sb = new StringBuilder(); innerEnum.addJavaDocLine("/**"); sb.append(" * "); sb.append(introspectedTable.getFullyQualifiedTable()); innerEnum.addJavaDocLine(sb.toString().replace("\n", " ")); innerEnum.addJavaDocLine(" */"); } @Override public void addFieldComment(Field field, IntrospectedTable introspectedTable, IntrospectedColumn introspectedColumn) { if (suppressAllComments) { return; } StringBuilder sb = new StringBuilder(); // field.addJavaDocLine("/**"); // sb.append(" * "); // sb.append(introspectedColumn.getRemarks()); // field.addJavaDocLine(sb.toString().replace("\n", " ")); // field.addJavaDocLine(" */"); String require = "required = true"; if (!introspectedColumn.isNullable()) { if ("String".equals(introspectedColumn.getFullyQualifiedJavaType().getShortName())) { field.addJavaDocLine("@NotEmpty"); field.addJavaDocLine("@Length(min = 1, max = " + introspectedColumn.getLength() + ")"); } else if ("Integer".equals(introspectedColumn.getFullyQualifiedJavaType().getShortName())) { field.addJavaDocLine("@NotNull"); field.addJavaDocLine("@Range(min = 1, max = Integer.MAX_VALUE)"); } else if ("Long".equals(introspectedColumn.getFullyQualifiedJavaType().getShortName())) { field.addJavaDocLine("@NotNull"); field.addJavaDocLine("@Range(min = 1, max = Long.MAX_VALUE)"); } else { field.addJavaDocLine("@NotNull"); } } else { require = ""; } if (StringUtils.isNotEmpty(introspectedColumn.getRemarks())) { if (StringUtils.isNotEmpty(require)) { field.addJavaDocLine("@ApiModelProperty(value = \"" + introspectedColumn.getRemarks() + "\", " + require + ")"); } else { field.addJavaDocLine("@ApiModelProperty(value = \"" + introspectedColumn.getRemarks() + "\")"); } } } @Override public void addFieldComment(Field field, IntrospectedTable introspectedTable) { if (suppressAllComments) { return; } StringBuilder sb = new StringBuilder(); field.addJavaDocLine("/**"); sb.append(" * "); sb.append(introspectedTable.getFullyQualifiedTable()); field.addJavaDocLine(sb.toString().replace("\n", " ")); field.addJavaDocLine(" */"); } @Override public void addModelClassComment(TopLevelClass topLevelClass, IntrospectedTable introspectedTable) { if (suppressAllComments) { return; } StringBuilder sb = new StringBuilder(); topLevelClass.addJavaDocLine("/**"); sb.append(" * "); sb.append(introspectedTable.getFullyQualifiedTable()); topLevelClass.addJavaDocLine(sb.toString().replace("\n", " ")); sb.setLength(0); sb.append(" * @author "); sb.append(systemPro.getProperty("user.name")); sb.append(" "); sb.append(currentDateStr); topLevelClass.addJavaDocLine(" */"); topLevelClass.addJavaDocLine("@ApiModel(value = \"" + introspectedTable.getFullyQualifiedTable().getDomainObjectName() + "\", description = \"" + introspectedTable.getRemarks() + "\")"); } @Override public void addGeneralMethodComment(Method method, IntrospectedTable introspectedTable) { // if (suppressAllComments) { // return; // } // method.addJavaDocLine("/**"); // addJavadocTag(method, false); // method.addJavaDocLine(" */"); } @Override public void addGetterComment(Method method, IntrospectedTable introspectedTable, IntrospectedColumn introspectedColumn) { // if (suppressAllComments) { // return; // } // method.addJavaDocLine("/**"); // StringBuilder sb = new StringBuilder(); // sb.append(" * "); // sb.append(introspectedColumn.getRemarks()); // method.addJavaDocLine(sb.toString().replace("\n", " ")); // sb.setLength(0); // sb.append(" * @return "); // sb.append(introspectedColumn.getActualColumnName()); // sb.append(" "); // sb.append(introspectedColumn.getRemarks()); // method.addJavaDocLine(sb.toString().replace("\n", " ")); // method.addJavaDocLine(" */"); } @Override public void addSetterComment(Method method, IntrospectedTable introspectedTable, IntrospectedColumn introspectedColumn) { // if (suppressAllComments) { // return; // } // method.addJavaDocLine("/**"); // StringBuilder sb = new StringBuilder(); // sb.append(" * "); // sb.append(introspectedColumn.getRemarks()); // method.addJavaDocLine(sb.toString().replace("\n", " ")); // Parameter parm = method.getParameters().get(0); // sb.setLength(0); // sb.append(" * @param "); // sb.append(parm.getName()); // sb.append(" "); // sb.append(introspectedColumn.getRemarks()); // method.addJavaDocLine(sb.toString().replace("\n", " ")); // method.addJavaDocLine(" */"); } @Override public void addClassComment(InnerClass innerClass, IntrospectedTable introspectedTable, boolean markAsDoNotDelete) { System.out.println("========="+innerClass.getType().getShortName()); if (suppressAllComments) { return; } StringBuilder sb = new StringBuilder(); innerClass.addJavaDocLine("/**"); sb.append(" * "); sb.append(introspectedTable.getFullyQualifiedTable()); innerClass.addJavaDocLine(sb.toString().replace("\n", " ")); sb.setLength(0); sb.append(" * @author "); sb.append(systemPro.getProperty("user.name")); sb.append(" "); sb.append(currentDateStr); innerClass.addJavaDocLine(" */"); } } package com.jdrx.springcloud; import org.junit.Test; import org.mybatis.generator.api.MyBatisGenerator; import org.mybatis.generator.config.Configuration; import org.mybatis.generator.config.xml.ConfigurationParser; import org.mybatis.generator.internal.DefaultShellCallback; import java.io.InputStream; import java.util.ArrayList; import java.util.List; /** * 描述:启动mabitas插件 */ public class MyBatisGeneratorStartUp { @Test public void test() { try { List<String> warnings = new ArrayList<String>(); boolean overwrite = true; ClassLoader classloader = Thread.currentThread().getContextClassLoader(); InputStream is = classloader.getResourceAsStream("mybatis-generator.xml"); ConfigurationParser cp = new ConfigurationParser(warnings); Configuration config = cp.parseConfiguration(is); DefaultShellCallback callback = new DefaultShellCallback(overwrite); MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings); myBatisGenerator.generate(null); } catch (Exception e) { e.printStackTrace(); } } }2.当启动测试类后,我们将自动生成的xml文件和dao文件和po文件分别复制进入mapper、dao、entry下下· 3.在api下service书写简单的服务方法 4.在api下controller中书写接口 启动项目 1.在springcloud-boot下
package com.jdrx.springcloudboot; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.ComponentScan; import org.springframework.transaction.annotation.EnableTransactionManagement; @EnableTransactionManagement @ComponentScan("com") @SpringBootApplication @MapperScan("com.jdrx.beans.dao") public class SpringcloudBootApplication { public static void main(String[] args) { SpringApplication.run(SpringcloudBootApplication.class, args); } }2.在springcloud-nacos下
package com.jdrx.springcloudnacos; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.ComponentScan; import org.springframework.transaction.annotation.EnableTransactionManagement; @SpringBootApplication @EnableTransactionManagement @ComponentScan("com") @MapperScan("com.jdrx.beans.dao") public class SpringcloudNacosApplication { public static void main(String[] args) { SpringApplication.run(SpringcloudNacosApplication.class, args); } }