当前位置:   article > 正文

图书馆管理系统 1.架构项目以及加搭建项目

图书馆管理系统 1.架构项目以及加搭建项目

项目架构图

技术栈

后端

开发语言:java
开发环境:jdk11.0.12
开发工具:IntelliJ IDEA 2022.2.4
项目管理工具:maven
集成框架:springboot
权限控制框架:springSecurity
数据库:mysql
数据库框架:mybatis-plus
文件储存技术:fastdfs
工具:lombok、fastJSON、easyexcel

前端 

开发语言:JavaScript、html、css
开发工具:IntelliJ IDEA 2022.2.4
前端框架:vue3
异步请求:axios
路由:vue-router
状态管理:pinia
前端工程化:scss
组件库:element-plus 、vant
编辑器:tinymce
可视化:echarts
国际化:i18n

搭建java后端【java-book-single】

1.创建项目

2.引入依赖

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <groupId>org.example</groupId>
  7. <artifactId>java-book-single</artifactId>
  8. <version>1.0-SNAPSHOT</version>
  9. <parent>
  10. <groupId>org.springframework.boot</groupId>
  11. <artifactId>spring-boot-starter-parent</artifactId>
  12. <version>2.7.8</version>
  13. <relativePath/>
  14. </parent>
  15. <dependencies>
  16. <!-- EasyExcel-->
  17. <dependency>
  18. <groupId>com.alibaba</groupId>
  19. <artifactId>easyexcel</artifactId>
  20. <version>2.0.5</version>
  21. </dependency>
  22. <!-- 发邮件 -->
  23. <dependency>
  24. <groupId>org.springframework.boot</groupId>
  25. <artifactId>spring-boot-starter-mail</artifactId>
  26. </dependency>
  27. <!-- FastDFS -->
  28. <dependency>
  29. <groupId>com.github.tobato</groupId>
  30. <artifactId>fastdfs-client</artifactId>
  31. <version>1.26.5</version>
  32. </dependency>
  33. <!--fastjson-->
  34. <dependency>
  35. <groupId>com.alibaba</groupId>
  36. <artifactId>fastjson</artifactId>
  37. <version>1.2.62</version>
  38. </dependency>
  39. <!-- spring security -->
  40. <dependency>
  41. <groupId>org.springframework.boot</groupId>
  42. <artifactId>spring-boot-starter-security</artifactId>
  43. </dependency>
  44. <!-- MyBatisPlus -->
  45. <dependency>
  46. <groupId>com.baomidou</groupId>
  47. <artifactId>mybatis-plus-boot-starter</artifactId>
  48. <version>3.4.2</version>
  49. </dependency>
  50. <!--mysql-->
  51. <dependency>
  52. <groupId>com.mysql</groupId>
  53. <artifactId>mysql-connector-j</artifactId>
  54. <scope>runtime</scope>
  55. </dependency>
  56. <!--thymeleaf-->
  57. <dependency>
  58. <groupId>org.springframework.boot</groupId>
  59. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  60. </dependency>
  61. <!--lombok-->
  62. <dependency>
  63. <groupId>org.projectlombok</groupId>
  64. <artifactId>lombok</artifactId>
  65. <optional>true</optional>
  66. </dependency>
  67. <!--springMVC-->
  68. <dependency>
  69. <groupId>org.springframework.boot</groupId>
  70. <artifactId>spring-boot-starter-web</artifactId>
  71. </dependency>
  72. <!--springBoot起步依赖-->
  73. <dependency>
  74. <groupId>org.springframework.boot</groupId>
  75. <artifactId>spring-boot-starter</artifactId>
  76. </dependency>
  77. <!--test-->
  78. <dependency>
  79. <groupId>org.springframework.boot</groupId>
  80. <artifactId>spring-boot-starter-test</artifactId>
  81. <scope>test</scope>
  82. </dependency>
  83. </dependencies>
  84. <build>
  85. <plugins>
  86. <plugin>
  87. <groupId>org.springframework.boot</groupId>
  88. <artifactId>spring-boot-maven-plugin</artifactId>
  89. <configuration>
  90. <excludes>
  91. <exclude>
  92. <groupId>org.projectlombok</groupId>
  93. <artifactId>lombok</artifactId>
  94. </exclude>
  95. </excludes>
  96. </configuration>
  97. </plugin>
  98. </plugins>
  99. </build>
  100. </project>

3.搭建项目结构

java/jkw

--Config:配置类

--Controller:控制层

--Mapper:mybatis的mapper映射接口

--Pojo:实体类

--Security:springsecurity相关业务逻辑

--Service:服务层

--Utils:工具类

--vo:封装类

--Main:启动类

resources

--Law:mybatis的mapper映射实现

--static:静态资源,一般是js和css文件

--templates:动态资源,一般是页面,如html

--application.yml:springboot配置文件

 

4.编写启动类

  1. package jkw;
  2. import com.baomidou.mybatisplus.annotation.DbType;
  3. import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
  4. import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
  5. import org.mybatis.spring.annotation.MapperScan;
  6. import org.springframework.boot.SpringApplication;
  7. import org.springframework.boot.autoconfigure.SpringBootApplication;
  8. import org.springframework.context.annotation.Bean;
  9. @MapperScan("jkw.mapper")
  10. @SpringBootApplication
  11. public class Main {
  12. @Bean
  13. public MybatisPlusInterceptor mybatisPlusInterceptor() {
  14. MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
  15. //分页插件
  16. interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
  17. return interceptor;
  18. }
  19. public static void main(String[] args) {
  20. SpringApplication.run(Main.class, args);
  21. }
  22. }

5.编写配置文件

  1. server:
  2. port: 8129
  3. spring:
  4. datasource:
  5. driver-class-name: com.mysql.cj.jdbc.Driver
  6. url: jdbc:mysql://localhost:3306/book?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
  7. username: root
  8. password: root
  9. # 打成jar包必须添加如下配置才能找到页面
  10. thymeleaf:
  11. mode: HTML
  12. cache: false
  13. prefix: classpath:/templates
  14. #配置mybatis-plus(使用代码生成器时不要配置)
  15. mybatis-plus:
  16. global-config:
  17. db-config:
  18. # 设置实体类所对应的表的统一前缀
  19. # table-prefix: t_
  20. # 主键生成策略为自增(属性只用加上@TableId 即可)
  21. id-type: auto
  22. configuration:
  23. # 关闭列名自动驼峰命名规则映射(列名的_自动映射成驼峰)(本项目中实体类和数据库表的列名一致,
  24. map-underscore-to-camel-case: false
  25. log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #开启sql日志
  26. # 分布式文件系统FDFS配置
  27. fdfs:
  28. #读取时间
  29. so-timeout: 30000
  30. #连接超时时间
  31. connect-timeout: 60000
  32. # TrackerList路径,支持多个121.41.118.73
  33. tracker-list:
  34. - ip:22122
  35. # 自定义配置,文件访问路径(这个ip为nginx的ip)http://121.41.118.73:8888
  36. fileUrl: http://ip:8888
  37. # 日志格式
  38. logging:
  39. pattern:
  40. console: '%d{HH:mm:ss.SSS} %clr(%-5level) --- [%-15thread] %cyan(%-50logger{50}):%msg%n'

搭建vue后台【vue-jkw】

1.项目结构

2.引入依赖

cnpm install --save axios
cnpm install --save querystring
cnpm install vue-router@4 --save
cnpm install pinia --save
cnpm install --save pinia-plugin-persist
cnpm add sass -D
cnpm install element-plus --save
cnpm install @element-plus/icons-vue
cnpm install -D unplugin-vue-components unplugin-auto-import
cnpm i vant
cnpm i unplugin-vue-components -D
cnpm install tinymce@6.2.0 --save
cnpm install @tinymce/tinymce-vue@5.0.0 --save
cnpm install --save echarts
cnpm install --save vue-i18n@next
解决问题【这俩反复安装】
cnpm install --save echarts
cnpm install --save vue-i18n@next

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/302557?site
推荐阅读
相关标签
  

闽ICP备14008679号