springboot的目录结构作用

news2024/12/23 14:05:46

springboot单体项目结构大概如下。

代码都在src/main下,

java是后端代码

     java下最基本的包

       dao(mapper)    entity(model)   service  controller 其他的包根据项目需求扩展。

resources下是配置文件。

如果不是前后端分离,resources下放的是静态文件和html

 

1. src/main/java: 存放代码。

  • dao: 全称Data Access Object。Dao层比较底层,负责与数据库打交道具体到对某个表、某个实体的增删改查,一般使用sql语句做出操作的都在dao层,如果用mybatis能省下很多sql。
  • service: 又叫服务层或业务层,封装Dao层的操作,使一个方法对外表现为实现一种功能,例如:网购生成订单时,不仅要插入订单信息记录,还要查询商品库存是否充足,购买是否超过限制等等,各种语句查询的功能实现。
  • controller: 业务控制层,负责接收数据和请求,并且调用Service层实现这个业务逻辑,一般接受和发送get和post请求在这里。
  • entity: 定义实体类的文件夹,不一定在java文件夹下一级文件,也可能在下下级文件,具体作用就是定义数据库里的数据,一般是属性加上get和set。(实体类可以用idea自带的插件完成,链接:http://t.csdn.cn/Xyr6J)

2. src/main/resources

  • resources: 存放静态资源
  • static: 静态文件(css、js、image)。
    访问方式:http://localhost:8080/js/main.js
  • public: 存放公共文件。
  • templates: 一般可以存放静态页面(如html、jsp)。
  • config: 定义的配置文件夹(如application.properties)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/636255.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

06【HTML5新增标签】

文章目录 六、HTML5新增标签6.1 布局标签6.1.1 常规布局标签6.1.2 控件标签1)meter标签2)progress标签3)details标签4)dialog标签 6.1.3 文本标签1)ruby标签2)mark标签 6.2 表单标签6.2.1 H5新增input类型6…

Hive序列化和反序列化

序列化和反序列化 文件读取/解析的方式 create table t1( id int, name string ) row format delimited fields terminated by , ;0,7369,SMITH,CLERK,7902,1980-12-17,800,null,20从文件里进行查询时,会不会在内存里产生hive的相关对象啊select * from student;…

Goland 包导入正常,但是无法解析函数和成员属性,编译不报错

这段时间 Goland 突然出现了一个毛病,每次 go get 依赖后,虽然依赖拉下来了,但是代码里使用了这个 module 的地方无法引用出他的成员和属性,大片的标红,都提示「Unresolved reference xxxxx」,但是只要把项…

6月29日Mendix北京见面会,抓紧时间报名!

喜欢Mendix的小伙伴们,好消息来啦📢! 6月29日,Mendix北京社区活动将在这个炎热的夏日中隆重推出,一起来参加吧! 听说这次meet-up的嘉宾们都在用心准备内容中,这次不仅有MX首席架构师Matt、懂中…

Spring配置动态数据库

前言 本文主要介绍使用spring boot 配置多个数据库&#xff0c;即动态数据库 开始搭建 首先创建一个SpringWeb项目——dynamicdb(spring-boot2.5.7) 然后引入相关依赖lombok、swagger2、mybatis-plus&#xff0c;如下&#xff1a; <?xml version"1.0" encoding&q…

【编码魔法师系列_六大原则1】单一职责原则(Single Responsibility Principle)

学会设计模式&#xff0c;你就可以像拥有魔法一样&#xff0c;在开发过程中解决一些复杂的问题。设计模式是由经验丰富的开发者们&#xff08;GoF&#xff09;凝聚出来的最佳实践&#xff0c;可以提高代码的可读性、可维护性和可重用性&#xff0c;从而让我们的开发效率更高。通…

ABAP: NUMBER_GET_NEXT用法

NUMBER_GET_NEXT 是用来自动获取编号的方法。 1、SNRO : 创建编号范围对象&#xff0c;例如&#xff0c;ZTEST_001 点击间隔编辑&#xff0c;可以设置编号范围&#xff0c;如下图所示。 2、SE11: 自定义设置编号长度域&#xff0c;例如&#xff0c;ZTEST_NUM 3、程序里面调用N…

自动驾驶——基于五次多项式螺旋线方程的换道曲线规划

1.BackGround 已知&#xff1a;换道初始纵坐标y0&#xff08;横向距离&#xff09;&#xff0c;换道初始航向角tan0&#xff0c;换道时间t&#xff0c;换道结束纵坐标yf&#xff0c;换道结束航向角tanf&#xff0c;车速VehSpd&#xff0c;曲线中点曲率q且曲率变化率为0。求解期…

python:tkinter图形界面通讯录+txt文本存储数据

1 实验目的与要求 实验目的&#xff1a;设计一个实用的小型通讯录程序 实验要求&#xff1a;最后的通讯录要写入文件中保存起来 2 实验内容 本次实验内容如下&#xff1a; 设计一个实用的小型通讯录程序&#xff0c;具有添加&#xff0c;查询和删除功能。由姓名&#xff0…

jmeter008:结婚fiddler查看结果

如果通过jmeter的(察看结果树)查看响应数据不完整时&#xff0c; 可以结合fiddler来查看请求数据&#xff0c; 方法如下&#xff1a; 在请求的(高级)填写本地ip&#xff0c; 端口号&#xff0c;打开fiddler&#xff0c;运行jmeter请求即可抓包

【新版】系统架构设计师 - 计算机网络

个人总结&#xff0c;仅供参考&#xff0c;欢迎加好友一起讨论 架构 - 计算机网络 考点摘要 TCP/IP协议族&#xff08;★★★★&#xff09; 网路规划与设计&#xff08;★★★★&#xff09; 组网技术&#xff08;★&#xff09; 网络存储&#xff08;★&#xff09; IPv…

LabVIEW开发经济高效的多轴运动控制

LabVIEW开发经济高效的多轴运动控制 使用PC并行端口到驱动器电路接口技术开发的&#xff0c;该技术消除了在PC内部安装昂贵的插入式运动控制板的要求。为所介绍的系统开发了PC到电机接口和驱动器电路板。该系统能够使用直流电机控制四轴运动或使用步进电机控制两轴运动。 运动…

chatgpt赋能Python-python怎么在程序环境中保存

介绍 Python是一个广泛应用于各种领域的高级编程语言&#xff0c;它具有易于学习、可读性强、支持多种编程范式、强大且丰富的库、较高的运行速度等众多优点。无论是数据科学、人工智能、Web开发、自动化测试、游戏开发等领域&#xff0c;Python都是优秀的选择。 然而&#x…

GPDB中Latch等待与唤醒实现机制

GPDB中Latch等待与唤醒实现机制 GreenPlum/PostgreSQL中有很多Latch以帮助多进程以及主线程与从线程之间协作。那么Latch是如何实现的呢&#xff1f;Latch可以在多进程之间以及主线程和从线程之间实现等待与唤醒&#xff0c;WaitEventSet是实现这项功能的关键结构。本文我们聊聊…

基于SpringBoot+Vue的平时成绩管理系统

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 在现代教育环境中&…

2023全新微信公众号无限回调系统源码 亲测可用

2023年微信公众号无限回调全新升级&#xff0c;无限回调系统功能更强大&#xff0c;现已对接易支付&#xff0c;支持用户自助充值、购买授权、更换授权和续费授权。此次升级还增加了多项实用性功能&#xff0c;为公众号运营者提供更好的服务和支持。

使用Python中的Pandas工具将多个CSV格式的数据文件合并为一个

文章目录 使用软件安装Pandas工具编写py程序运行程序注意事项 使用软件 Pycharm 2020.1 安装Pandas工具 执行命令&#xff1a;pip install pandas 编写py程序 path&#xff1a;文件所处路径 import pandas as pd import os# 指定多个csv文件所在的目录 csv_dir path# 获…

LinkedHashSet源码

介绍 LinkedHashSet是HashSet的子类 LinkedHashSet底层是一个LinkedHashMap&#xff0c;底层维护了一个数组双向链表 LinkedHashSet根据元素的hashCOde值来决定元素的存储位置&#xff0c;同时使用链表维护元素的次序&#xff0c;这使元素看起来以插入顺序保存的 LinkedHas…

辅助驾驶功能开发-功能规范篇(27)-导航辅助驾驶NAP-微避障策略

1.微避障策略功能概述 微避障策略是在NAP功能激活过程中,当邻车道有大型车辆时(卡车、公交车、大巴等)或小车压线或左右侧靠近路沿时,控制本车进行横向偏移,达到远离目标车或路沿的效果。本文分别对大型车辆偏移、小车压线偏移、路沿偏移、Merge处理和偏移规划这五个部分展…

华为OD机试真题 JavaScript 实现【不爱施肥的小布】【2023Q1 100分】

一、题目描述 某农村主管理了一大片果园&#xff0c;fields[i]表示不同国林的面积&#xff0c;单位m2&#xff0c;现在要为所有的果林施肥且必须在n天之内完成&#xff0c;否则影响收成。小布是国林的工作人员&#xff0c;他每次选择一片果林进行施肥&#xff0c;且一片国林施…