当前位置: 首页 > news >正文

鄂尔多斯市建设网站临沂百度联系方式

鄂尔多斯市建设网站,临沂百度联系方式,怎么用html5做自适应网站,莱州网络建站SpringBoot使用MyBatis多数据源 我们以 Mybatis Xml和注解两种版本为例#xff0c;给大家展示如何如何配置多数据源。 1、注解方式 数据库文件#xff1a; DROP TABLE IF EXISTS users; CREATE TABLE users (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键id,userN…SpringBoot使用MyBatis多数据源 我们以 Mybatis Xml和注解两种版本为例给大家展示如何如何配置多数据源。 1、注解方式 数据库文件 DROP TABLE IF EXISTS users; CREATE TABLE users (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键id,userName varchar(32) DEFAULT NULL COMMENT 用户名,passWord varchar(32) DEFAULT NULL COMMENT 密码,user_sex varchar(32) DEFAULT NULL,nick_name varchar(32) DEFAULT NULL,PRIMARY KEY (id) ) ENGINEInnoDB AUTO_INCREMENT1 DEFAULT CHARSETutf8;1.1 pom依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.1.0.RELEASE/versionrelativePath//parentgroupIdcom.example/groupIdartifactIdspring-boot-mybatis-annotation-mulidatasource/artifactIdversion0.0.1-SNAPSHOT/versionnamespring-boot-mybatis-annotation-mulidatasource/namedescriptionspring-boot-mybatis-annotation-mulidatasource/descriptionpropertiesproject.build.sourceEncodingUTF-8/project.build.sourceEncodingjava.version1.8/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion2.0.0/version/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build/project1.2 配置文件 mybatis.type-aliases-packagecom.example.modelspring.datasource.test1.jdbc-urljdbc:mysql://localhost:3306/test1?serverTimezoneUTCuseUnicodetruecharacterEncodingutf-8useSSLtrue spring.datasource.test1.usernameroot spring.datasource.test1.passwordroot spring.datasource.test1.driver-class-namecom.mysql.cj.jdbc.Driverspring.datasource.test2.jdbc-urljdbc:mysql://localhost:3306/test2?serverTimezoneUTCuseUnicodetruecharacterEncodingutf-8useSSLtrue spring.datasource.test2.usernameroot spring.datasource.test2.passwordroot spring.datasource.test2.driver-class-namecom.mysql.cj.jdbc.Driver1.3 Mapper package com.example.mapper.test1;import com.example.enums.UserSexEnum; import com.example.model.User; import org.apache.ibatis.annotations.*; import org.springframework.stereotype.Component;import java.util.List;Component public interface User1Mapper {Select(SELECT * FROM users)Results({Result(property userSex, column user_sex, javaType UserSexEnum.class),Result(property nickName, column nick_name)})ListUser getAll();Select(SELECT * FROM users WHERE id #{id})Results({Result(property userSex, column user_sex, javaType UserSexEnum.class),Result(property nickName, column nick_name)})User getOne(Long id);Insert(INSERT INTO users(userName,passWord,user_sex) VALUES(#{userName}, #{passWord}, #{userSex}))void insert(User user);Update(UPDATE users SET userName#{userName},nick_name#{nickName} WHERE id #{id})void update(User user);Delete(DELETE FROM users WHERE id #{id})void delete(Long id);}package com.example.mapper.test2;import java.util.List;import com.example.enums.UserSexEnum; import com.example.model.User; import org.apache.ibatis.annotations.*; import org.springframework.stereotype.Component;Component public interface User2Mapper {Select(SELECT * FROM users)Results({Result(property userSex, column user_sex, javaType UserSexEnum.class),Result(property nickName, column nick_name)})ListUser getAll();Select(SELECT * FROM users WHERE id #{id})Results({Result(property userSex, column user_sex, javaType UserSexEnum.class),Result(property nickName, column nick_name)})User getOne(Long id);Insert(INSERT INTO users(userName,passWord,user_sex) VALUES(#{userName}, #{passWord}, #{userSex}))void insert(User user);Update(UPDATE users SET userName#{userName},nick_name#{nickName} WHERE id #{id})void update(User user);Delete(DELETE FROM users WHERE id #{id})void delete(Long id);}1.4 实体类 package com.example.model;import java.io.Serializable;import com.example.enums.UserSexEnum;public class User implements Serializable {private static final long serialVersionUID 1L;private Long id;private String userName;private String passWord;private UserSexEnum userSex;private String nickName;public User() {super();}public User(String userName, String passWord, UserSexEnum userSex) {super();this.passWord passWord;this.userName userName;this.userSex userSex;}public Long getId() {return id;}public void setId(Long id) {this.id id;}public String getUserName() {return userName;}public void setUserName(String userName) {this.userName userName;}public String getPassWord() {return passWord;}public void setPassWord(String passWord) {this.passWord passWord;}public UserSexEnum getUserSex() {return userSex;}public void setUserSex(UserSexEnum userSex) {this.userSex userSex;}public String getNickName() {return nickName;}public void setNickName(String nickName) {this.nickName nickName;}Overridepublic String toString() {return userName this.userName , pasword this.passWord sex userSex.name();}}package com.example.enums;public enum UserSexEnum {MAN, WOMAN }1.5 配置类 package com.example.datasource;import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.SqlSessionTemplate; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.jdbc.DataSourceBuilder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; import org.springframework.jdbc.datasource.DataSourceTransactionManager;import javax.sql.DataSource;Configuration MapperScan(basePackages com.example.mapper.test1, sqlSessionTemplateRef test1SqlSessionTemplate) public class DataSource1Config {Bean(name test1DataSource)ConfigurationProperties(prefix spring.datasource.test1)Primarypublic DataSource testDataSource() {return DataSourceBuilder.create().build();}Bean(name test1SqlSessionFactory)Primarypublic SqlSessionFactory testSqlSessionFactory(Qualifier(test1DataSource) DataSource dataSource) throws Exception {SqlSessionFactoryBean bean new SqlSessionFactoryBean();bean.setDataSource(dataSource);return bean.getObject();}Bean(name test1TransactionManager)Primarypublic DataSourceTransactionManager testTransactionManager(Qualifier(test1DataSource) DataSource dataSource) {return new DataSourceTransactionManager(dataSource);}Bean(name test1SqlSessionTemplate)Primarypublic SqlSessionTemplate testSqlSessionTemplate(Qualifier(test1SqlSessionFactory) SqlSessionFactory sqlSessionFactory) throws Exception {return new SqlSessionTemplate(sqlSessionFactory);}}package com.example.datasource;import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.SqlSessionTemplate; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.jdbc.DataSourceBuilder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.jdbc.datasource.DataSourceTransactionManager;import javax.sql.DataSource;Configuration MapperScan(basePackages com.example.mapper.test2, sqlSessionTemplateRef test2SqlSessionTemplate) public class DataSource2Config {Bean(name test2DataSource)ConfigurationProperties(prefix spring.datasource.test2)public DataSource testDataSource() {return DataSourceBuilder.create().build();}Bean(name test2SqlSessionFactory)public SqlSessionFactory testSqlSessionFactory(Qualifier(test2DataSource) DataSource dataSource) throws Exception {SqlSessionFactoryBean bean new SqlSessionFactoryBean();bean.setDataSource(dataSource);return bean.getObject();}Bean(name test2TransactionManager)public DataSourceTransactionManager testTransactionManager(Qualifier(test2DataSource) DataSource dataSource) {return new DataSourceTransactionManager(dataSource);}Bean(name test2SqlSessionTemplate)public SqlSessionTemplate testSqlSessionTemplate(Qualifier(test2SqlSessionFactory) SqlSessionFactory sqlSessionFactory) throws Exception {return new SqlSessionTemplate(sqlSessionFactory);}}1.6 启动类 package com.example;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication public class SpringBootMybatisAnnotationMulidatasourceApplication {public static void main(String[] args) {SpringApplication.run(SpringBootMybatisAnnotationMulidatasourceApplication.class, args);}}1.7 控制器 package com.example.web;import java.util.List;import com.example.mapper.test1.User1Mapper; import com.example.mapper.test2.User2Mapper; import com.example.model.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController public class UserController {Autowiredprivate User1Mapper user1Mapper;Autowiredprivate User2Mapper user2Mapper;RequestMapping(/getUsers)public ListUser getUsers() {ListUser usersuser1Mapper.getAll();return users;}RequestMapping(/getUser)public User getUser(Long id) {User useruser2Mapper.getOne(id);return user;}RequestMapping(/add)public void save(User user) {user2Mapper.insert(user);}RequestMapping(valueupdate)public void update(User user) {user2Mapper.update(user);}RequestMapping(value/delete/{id})public void delete(PathVariable(id) Long id) {user1Mapper.delete(id);}}1.8 测试类 package com.example.mapper;import com.example.enums.UserSexEnum; import com.example.mapper.test1.User1Mapper; import com.example.model.User; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner;import java.util.List;RunWith(SpringRunner.class) SpringBootTest public class User1MapperTest {Autowiredprivate User1Mapper userMapper;Testpublic void testInsert() throws Exception {userMapper.insert(new User(aa, a123456, UserSexEnum.MAN));userMapper.insert(new User(bb, b123456, UserSexEnum.WOMAN));userMapper.insert(new User(cc, b123456, UserSexEnum.WOMAN));// Assert.assertEquals(3, userMapper.getAll().size());}Testpublic void testQuery() throws Exception {ListUser users userMapper.getAll();if(usersnull || users.size()0){System.out.println(is null);}else{System.out.println(users.size());}}Testpublic void testUpdate() throws Exception {User user userMapper.getOne(6l);System.out.println(user.toString());user.setNickName(neo);userMapper.update(user);Assert.assertTrue((neo.equals(userMapper.getOne(6l).getNickName())));}}package com.example.mapper;import com.example.enums.UserSexEnum; import com.example.mapper.test2.User2Mapper; import com.example.model.User; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner;import java.util.List;RunWith(SpringRunner.class) SpringBootTest public class User2MapperTest {Autowiredprivate User2Mapper userMapper;Testpublic void testInsert() throws Exception {userMapper.insert(new User(aa, a123456, UserSexEnum.MAN));userMapper.insert(new User(bb, b123456, UserSexEnum.WOMAN));userMapper.insert(new User(cc, b123456, UserSexEnum.WOMAN));// Assert.assertEquals(3, userMapper.getAll().size());}Testpublic void testQuery() throws Exception {ListUser users userMapper.getAll();if(usersnull || users.size()0){System.out.println(is null);}else{System.out.println(users.toString());}}Testpublic void testUpdate() throws Exception {User user userMapper.getOne(6l);System.out.println(user.toString());user.setNickName(neo);userMapper.update(user);Assert.assertTrue((neo.equals(userMapper.getOne(6l).getNickName())));}}2、Xml 方式 数据库文件 DROP TABLE IF EXISTS users; CREATE TABLE users (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键id,userName varchar(32) DEFAULT NULL COMMENT 用户名,passWord varchar(32) DEFAULT NULL COMMENT 密码,user_sex varchar(32) DEFAULT NULL,nick_name varchar(32) DEFAULT NULL,PRIMARY KEY (id) ) ENGINEInnoDB AUTO_INCREMENT1 DEFAULT CHARSETutf8;2.1 pom依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.1.0.RELEASE/versionrelativePath//parentgroupIdcom.example/groupIdartifactIdspring-boot-mybatis-xml-mulidatasource/artifactIdversion0.0.1-SNAPSHOT/versionnamespring-boot-mybatis-xml-mulidatasource/namedescriptionspring-boot-mybatis-xml-mulidatasource/descriptionpropertiesproject.build.sourceEncodingUTF-8/project.build.sourceEncodingjava.version1.8/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion2.0.0/version/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build/project2.2 配置文件 mybatis.config-locationclasspath:mybatis/mybatis-config.xmlspring.datasource.test1.jdbc-urljdbc:mysql://localhost:3306/test1?serverTimezoneUTCuseUnicodetruecharacterEncodingutf-8useSSLtrue spring.datasource.test1.usernameroot spring.datasource.test1.passwordroot spring.datasource.test1.driver-class-namecom.mysql.cj.jdbc.Driverspring.datasource.test2.jdbc-urljdbc:mysql://localhost:3306/test2?serverTimezoneUTCuseUnicodetruecharacterEncodingutf-8useSSLtrue spring.datasource.test2.usernameroot spring.datasource.test2.passwordroot spring.datasource.test2.driver-class-namecom.mysql.cj.jdbc.Driver一个 test1 库和一个 test2 库其中 test1 位主库在使用的过程中必须指定主库不然会报错。 2.3 数据源配置 package com.example.datasource;import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.SqlSessionTemplate; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.jdbc.DataSourceBuilder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.jdbc.datasource.DataSourceTransactionManager;import javax.sql.DataSource;Configuration MapperScan(basePackages com.example.mapper.test1, sqlSessionTemplateRef test1SqlSessionTemplate) public class DataSource1Config {Bean(name test1DataSource)ConfigurationProperties(prefix spring.datasource.test1)Primarypublic DataSource testDataSource() {return DataSourceBuilder.create().build();}Bean(name test1SqlSessionFactory)Primarypublic SqlSessionFactory testSqlSessionFactory(Qualifier(test1DataSource) DataSource dataSource) throws Exception {SqlSessionFactoryBean bean new SqlSessionFactoryBean();bean.setDataSource(dataSource);bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(classpath:mybatis/mapper/test1/*.xml));return bean.getObject();}Bean(name test1TransactionManager)Primarypublic DataSourceTransactionManager testTransactionManager(Qualifier(test1DataSource) DataSource dataSource) {return new DataSourceTransactionManager(dataSource);}Bean(name test1SqlSessionTemplate)Primarypublic SqlSessionTemplate testSqlSessionTemplate(Qualifier(test1SqlSessionFactory) SqlSessionFactory sqlSessionFactory) throws Exception {return new SqlSessionTemplate(sqlSessionFactory);}}package com.example.datasource;import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.mybatis.spring.SqlSessionTemplate; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.boot.jdbc.DataSourceBuilder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.jdbc.datasource.DataSourceTransactionManager;import javax.sql.DataSource;Configuration MapperScan(basePackages com.example.mapper.test2, sqlSessionTemplateRef test2SqlSessionTemplate) public class DataSource2Config {Bean(name test2DataSource)ConfigurationProperties(prefix spring.datasource.test2)public DataSource testDataSource() {return DataSourceBuilder.create().build();}Bean(name test2SqlSessionFactory)public SqlSessionFactory testSqlSessionFactory(Qualifier(test2DataSource) DataSource dataSource) throws Exception {SqlSessionFactoryBean bean new SqlSessionFactoryBean();bean.setDataSource(dataSource);bean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(classpath:mybatis/mapper/test2/*.xml));return bean.getObject();}Bean(name test2TransactionManager)public DataSourceTransactionManager testTransactionManager(Qualifier(test2DataSource) DataSource dataSource) {return new DataSourceTransactionManager(dataSource);}Bean(name test2SqlSessionTemplate)public SqlSessionTemplate testSqlSessionTemplate(Qualifier(test2SqlSessionFactory) SqlSessionFactory sqlSessionFactory) throws Exception {return new SqlSessionTemplate(sqlSessionFactory);}}最关键的地方就是这块了一层一层注入,首先创建 DataSource然后创建 SqlSessionFactory 再创建事务最后 包装到 SqlSessionTemplate 中。其中需要指定分库的 mapper 文件地址以及分库dao层代码 MapperScan(basePackages com.neo.mapper.test1, sqlSessionTemplateRef test1SqlSessionTemplate)这块的注解就是指明了扫描 dao 层并且给 dao 层注入指定的 SqlSessionTemplate。所有Bean都需要按照命 名指定正确。 2.4 dao 层和 xml层 dao 层和 xml 需要按照库来分在不同的目录比如test1 库 dao 层在 com.neo.mapper.test1 包下test2 库 在com.neo.mapper.test2 package com.example.mapper.test1;import com.example.model.User; import org.springframework.stereotype.Component;import java.util.List;Component public interface User1Mapper {ListUser getAll();User getOne(Long id);void insert(User user);void update(User user);void delete(Long id);}package com.example.mapper.test2;import com.example.model.User; import org.springframework.stereotype.Component;import java.util.List;Component public interface User2Mapper {ListUser getAll();User getOne(Long id);void insert(User user);void update(User user);void delete(Long id);}xml 层 ?xml version1.0 encodingUTF-8 ? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN http://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespacecom.example.mapper.test1.User1Mapper resultMap idBaseResultMap typecom.example.model.User id columnid propertyid jdbcTypeBIGINT /result columnuserName propertyuserName jdbcTypeVARCHAR /result columnpassWord propertypassWord jdbcTypeVARCHAR /result columnuser_sex propertyuserSex javaTypecom.example.enums.UserSexEnum/result columnnick_name propertynickName jdbcTypeVARCHAR //resultMapsql idBase_Column_List id, userName, passWord, user_sex, nick_name/sqlselect idgetAll resultMapBaseResultMap SELECT include refidBase_Column_List /FROM users/selectselect idgetOne parameterTypejava.lang.Long resultMapBaseResultMap SELECT include refidBase_Column_List /FROM usersWHERE id #{id}/selectinsert idinsert parameterTypecom.example.model.User INSERT INTO users(userName,passWord,user_sex) VALUES(#{userName}, #{passWord}, #{userSex})/insertupdate idupdate parameterTypecom.example.model.User UPDATE users SET if testuserName ! nulluserName #{userName},/ifif testpassWord ! nullpassWord #{passWord},/ifnick_name #{nickName}WHERE id #{id}/updatedelete iddelete parameterTypejava.lang.Long DELETE FROMusers WHERE id #{id}/delete/mapper?xml version1.0 encodingUTF-8 ? !DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN http://mybatis.org/dtd/mybatis-3-mapper.dtd mapper namespacecom.example.mapper.test2.User2Mapper resultMap idBaseResultMap typecom.example.model.User id columnid propertyid jdbcTypeBIGINT /result columnuserName propertyuserName jdbcTypeVARCHAR /result columnpassWord propertypassWord jdbcTypeVARCHAR /result columnuser_sex propertyuserSex javaTypecom.example.enums.UserSexEnum/result columnnick_name propertynickName jdbcTypeVARCHAR //resultMapsql idBase_Column_List id, userName, passWord, user_sex, nick_name/sqlselect idgetAll resultMapBaseResultMap SELECT include refidBase_Column_List /FROM users/selectselect idgetOne parameterTypejava.lang.Long resultMapBaseResultMap SELECT include refidBase_Column_List /FROM usersWHERE id #{id}/selectinsert idinsert parameterTypecom.example.model.User INSERT INTO users(userName,passWord,user_sex) VALUES(#{userName}, #{passWord}, #{userSex})/insertupdate idupdate parameterTypecom.example.model.User UPDATE users SET if testuserName ! nulluserName #{userName},/ifif testpassWord ! nullpassWord #{passWord},/ifnick_name #{nickName}WHERE id #{id}/updatedelete iddelete parameterTypejava.lang.Long DELETE FROMusers WHERE id #{id}/delete/mapper?xml version1.0 encodingUTF-8 ? !DOCTYPE configuration PUBLIC -//mybatis.org//DTD Config 3.0//EN http://mybatis.org/dtd/mybatis-3-config.dtd configurationtypeAliasestypeAlias aliasInteger typejava.lang.Integer /typeAlias aliasLong typejava.lang.Long /typeAlias aliasHashMap typejava.util.HashMap /typeAlias aliasLinkedHashMap typejava.util.LinkedHashMap /typeAlias aliasArrayList typejava.util.ArrayList /typeAlias aliasLinkedList typejava.util.LinkedList //typeAliases /configuration实体类 package com.example.enums;public enum UserSexEnum {MAN, WOMAN }package com.example.model;import com.example.enums.UserSexEnum;import java.io.Serializable;public class User implements Serializable {private static final long serialVersionUID 1L;private Long id;private String userName;private String passWord;private UserSexEnum userSex;private String nickName;public User() {super();}public User(String userName, String passWord, UserSexEnum userSex) {super();this.passWord passWord;this.userName userName;this.userSex userSex;}public Long getId() {return id;}public void setId(Long id) {this.id id;}public String getUserName() {return userName;}public void setUserName(String userName) {this.userName userName;}public String getPassWord() {return passWord;}public void setPassWord(String passWord) {this.passWord passWord;}public UserSexEnum getUserSex() {return userSex;}public void setUserSex(UserSexEnum userSex) {this.userSex userSex;}public String getNickName() {return nickName;}public void setNickName(String nickName) {this.nickName nickName;}Overridepublic String toString() {return userName this.userName , pasword this.passWord , sex userSex.name();}}2.5 控制器 package com.example.web;import com.example.mapper.test1.User1Mapper; import com.example.mapper.test2.User2Mapper; import com.example.model.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;import java.util.List;RestController public class UserController {Autowiredprivate User1Mapper user1Mapper;Autowiredprivate User2Mapper user2Mapper;RequestMapping(/getUsers)public ListUser getUsers() {ListUser usersuser1Mapper.getAll();return users;}RequestMapping(/getUser)public User getUser(Long id) {User useruser2Mapper.getOne(id);return user;}RequestMapping(/add)public void save(User user) {user2Mapper.insert(user);}RequestMapping(valueupdate)public void update(User user) {user2Mapper.update(user);}RequestMapping(value/delete/{id})public void delete(PathVariable(id) Long id) {user1Mapper.delete(id);}}2.6 启动类 package com.example;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication public class SpringBootMybatisXmlMulidatasourceApplication {public static void main(String[] args) {SpringApplication.run(SpringBootMybatisXmlMulidatasourceApplication.class, args);}}2.7 测试 package com.example.mapper;import com.example.enums.UserSexEnum; import com.example.mapper.test1.User1Mapper; import com.example.model.User; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner;import java.util.List;RunWith(SpringRunner.class) SpringBootTest public class User1MapperTest {Autowiredprivate User1Mapper userMapper;Testpublic void testInsert() throws Exception {userMapper.insert(new User(aa, a123456, UserSexEnum.MAN));userMapper.insert(new User(bb, b123456, UserSexEnum.WOMAN));userMapper.insert(new User(cc, b123456, UserSexEnum.WOMAN));// Assert.assertEquals(3, userMapper.getAll().size());}Testpublic void testQuery() throws Exception {ListUser users userMapper.getAll();if (users null || users.size() 0) {System.out.println(is null);} else {System.out.println(users.size());}}Testpublic void testUpdate() throws Exception {User user userMapper.getOne(6l);System.out.println(user.toString());user.setNickName(neo);userMapper.update(user);Assert.assertTrue((neo.equals(userMapper.getOne(6l).getNickName())));}}package com.example.mapper;import com.example.enums.UserSexEnum; import com.example.mapper.test2.User2Mapper; import com.example.model.User; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner;import java.util.List;RunWith(SpringRunner.class) SpringBootTest public class User2MapperTest {Autowiredprivate User2Mapper userMapper;Testpublic void testInsert() throws Exception {userMapper.insert(new User(aa, a123456, UserSexEnum.MAN));userMapper.insert(new User(bb, b123456, UserSexEnum.WOMAN));userMapper.insert(new User(cc, b123456, UserSexEnum.WOMAN));// Assert.assertEquals(3, userMapper.getAll().size());}Testpublic void testQuery() throws Exception {ListUser users userMapper.getAll();if(usersnull || users.size()0){System.out.println(is null);}else{System.out.println(users.toString());}}Testpublic void testUpdate() throws Exception {User user userMapper.getOne(6l);System.out.println(user.toString());user.setNickName(neo);userMapper.update(user);Assert.assertTrue((neo.equals(userMapper.getOne(6l).getNickName())));}}
http://www.hkea.cn/news/14278177/

相关文章:

  • 北京做网站便宜的公司哪家好网络销售有前途吗
  • 怎么做招聘有哪些网站在线设计公司logo图标
  • 南江县建设局网站大连网站建设 领超最好
  • 江苏建设工程招标网官方网站如何免费自做企业网站
  • 惠城网站建设服务网站怎么设置二级域名
  • 如何简单快速的制作网站家具全屋定制
  • 静态网页做的网站怎么发到网上wordpress下载失败
  • 网站描述优化秦皇岛做网站公司排名
  • 多元网站wordpress 点赞 开启
  • 网站建设任务平台软件开发工资高吗
  • 网站会员功能介绍jquery+js网站模板免费下载
  • 还有哪些行业可以做垂直网站菲斯曼售后服务中心
  • 常德行业网站亦庄网站建设公司
  • 怎么制作网站视频教程步骤建筑行业官网
  • 可信的郑州网站建设邢台做移动网站费用
  • 东莞做网站优化哪家好网站开发用的开源系统
  • wordpress网站翻译文本文档做网站
  • 课程网站建设的财务分析上海第五届中国国际进口博览会地址
  • 用爬虫做网站软件开发步骤包括哪些过程
  • 怎么访问域名网站制作灯笼图片
  • 建设网站费用明细做我的奴隶腾讯网站
  • 医院手机网站购物网站首页分成几个模块
  • 成都网站建设推荐到访率公司网站链接的常见形式
  • 携程旅行的网站建设腾讯云网站免费建设
  • 贵阳网站建设zu97百度手机网站提交
  • 保健品网站模版网站与经营网站
  • 网站开发公司会计服务区里可以做多少个网站
  • 软件库网站大全网站设计制作公司排名
  • 口碑好的网站开发公司计算机网络技术就业方向及前景
  • 有没有正规的毕设代做网站健康养老网站建设