You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

CodeGenServiceTest.java 2.3 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package com.xkcoding.codegen;
  2. import cn.hutool.core.io.IoUtil;
  3. import cn.hutool.db.Entity;
  4. import com.xkcoding.codegen.common.PageResult;
  5. import com.xkcoding.codegen.entity.GenConfig;
  6. import com.xkcoding.codegen.entity.TableRequest;
  7. import com.xkcoding.codegen.service.CodeGenService;
  8. import lombok.SneakyThrows;
  9. import lombok.extern.slf4j.Slf4j;
  10. import org.junit.Test;
  11. import org.junit.runner.RunWith;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.boot.test.context.SpringBootTest;
  14. import org.springframework.test.context.junit4.SpringRunner;
  15. import java.io.File;
  16. import java.io.FileOutputStream;
  17. import java.io.OutputStream;
  18. /**
  19. * <p>
  20. * 代码生成service测试
  21. * </p>
  22. *
  23. * @author yangkai.shen
  24. * @date Created in 2019-03-22 10:34
  25. */
  26. @RunWith(SpringRunner.class)
  27. @SpringBootTest
  28. @Slf4j
  29. public class CodeGenServiceTest {
  30. @Autowired
  31. private CodeGenService codeGenService;
  32. @Test
  33. public void testTablePage() {
  34. TableRequest request = new TableRequest();
  35. request.setCurrentPage(1);
  36. request.setPageSize(10);
  37. request.setPrepend("jdbc:mysql://");
  38. request.setUrl("127.0.0.1:3306/spring-boot-demo");
  39. request.setUsername("root");
  40. request.setPassword("root");
  41. request.setTableName("sec_");
  42. PageResult<Entity> pageResult = codeGenService.listTables(request);
  43. log.info("【pageResult】= {}", pageResult);
  44. }
  45. @Test
  46. @SneakyThrows
  47. public void testGeneratorCode() {
  48. GenConfig config = new GenConfig();
  49. TableRequest request = new TableRequest();
  50. request.setPrepend("jdbc:mysql://");
  51. request.setUrl("127.0.0.1:3306/spring-boot-demo");
  52. request.setUsername("root");
  53. request.setPassword("root");
  54. request.setTableName("shiro_user");
  55. config.setRequest(request);
  56. config.setModuleName("shiro");
  57. config.setAuthor("Yangkai.Shen");
  58. config.setComments("用户角色信息");
  59. config.setPackageName("com.xkcoding");
  60. config.setTablePrefix("shiro_");
  61. byte[] zip = codeGenService.generatorCode(config);
  62. OutputStream outputStream = new FileOutputStream(new File("/Users/yangkai.shen/Desktop/" + request.getTableName() + ".zip"));
  63. IoUtil.write(outputStream, true, zip);
  64. }
  65. }

一个用来深度学习并实战 spring boot 的项目,目前总共包含 66 个集成demo,已经完成 55 个。