Springboot项目

《《《《《《《《《《《------ 项目建立 ------》》》》》》》》》》》》

1.新建项目,选择Spring Initializer(新版本选择Spring boot)

我的项目是JDK1.8的,所以在项目SDK就选择了1.8版本的,选择启动服务URL地址为默认

2.Spring Initializer项目设置,项目组就是打开后项目一层层的包名,正常情况下就默认就可以了,但是,类型得选择为Maven类型,然后下一步

3.进入依赖界面,选择Web下的Spring Web,右上角Spring Boot根据自己的情况选择,我选的版本比较低3.3.4版本的SpringBoot ,然后下一步

4.项目命名 demo(根据自己的需求去写项目名),然后点击完成

《《《《《《《《《《《------ 项目目录文件说明 ------》》》》》》》》》》》》

1.先把.mvn文件夹删了(包含其下所有东西),再删除mvnw文件和mvnw.cmd文件

2.配置pom.xml文件,系统运行时,首先加载运行的就是它,里面存放着的依赖根据需求配置

①需要修改springboot版本的和java版本的找两个模块,并直接修改版本号,在IDEA中会自动下载更新配置,如果修改后没更新,请关了IDEA重新打开就可以了

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<!-- springboot版本3.3.4-->

<version>2.7.3</version>

<relativePath/> <!-- lookup parent from repository -->

</parent>

<properties>

<java.version>8</java.version>

</properties>

②添加依赖

<!-- 加入mybits依赖-->

<dependency>

<groupId>org.mybatis.spring.boot</groupId>

<artifactId>mybatis-spring-boot-starter</artifactId>

<version>2.2.2</version>

</dependency>

<dependency>

<groupId>org.mybatis.spring.boot</groupId>

<artifactId>mybatis-spring-boot-starter-test</artifactId>

<version>2.2.2</version>

<scope>test</scope>

</dependency>

<!-- mysql驱动包 -->

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>8.0.25</version>

</dependency>

<!-- AOP的包 -->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-aop</artifactId>

</dependency>

<!-- FastJson -->

<dependency>

<groupId>com.alibaba</groupId>

<artifactId>fastjson</artifactId>

<version>1.2.83</version>

</dependency>

③然后打开src源码路径下的包 com.dx.wlmq

在该包下创建

controller(控制层)、

domain(Dao层 存放实体类)、

mapper(Dao层 存放接口,接口下是要实现的抽象方法)

service(业务层 存放业务实现的接口和实现类) 在其下有一个impl的包

DemoApplication是Springboot的启动类,必须存放于其他所有类上层包

④在resources包下创建一个名为mapper的包,用于存放.xml文件(例如RolesMapper.xml),改文件写的都是Dao层的sql语句,查询的话别忘了属性映射,也别忘了修改命名空间的接口位置包名

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE mapper

PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<!--命名空间,接口位置-->

<mapper namespace="com.dx.wlmq.mapper.SuppliersMapper">

<resultMap id="suplist" type="com.dx.wlmq.domain.Supplier">

<id property="supplierId" column="supplier_id"></id>

<id property="supplierName" column="supplier_name"></id>

<id property="supplierPerson" column="supplier_person"></id>

<id property="supplierPhone" column="supplier_phone"></id>

<id property="supplierAddress" column="supplier_address"></id>

<id property="supplierUserId" column="supplier_user_id"></id>

<id property="supplierBank" column="supplier_bank"></id>

<id property="supplierBanknum" column="supplier_banknum"></id>

<id property="supplierBankperson" column="supplier_bankperson"></id>

<id property="supplierRemark" column="supplier_remark"></id>

<id property="supplierVersion" column="supplier_version"></id>

<id property="createTime" column="create_time"></id>

<id property="updateTime" column="update_time"></id>

</resultMap>

<select id="Supplierlist" resultMap="suplist">

SELECT *

FROM `or_supplier`;

</select>

</mapper>

⑤配置resource下的application.properties文件,里面规定本地访问的端口修改,源数据配置(一定要确定表在哪个数据库),实体对象映射,mapper的加载文件映射,以及驼峰命名规则是否启用

《《《《《《《《《《《------ 实现步骤 ------》》》》》》》》》》》》

1.先写domain里面的实体类

遇见Date类型的属性时要加上以下两个注释,确保经过JSON输出后,反序列化为时间格式》每出现一个Date就需要重新写一个

@JSONField(format = "yyyy-MM-dd HH:mm:ss")

@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")

都写好后生成Get和Set方法,toString方法,全部参数构造方法和无参构造方法

2.书写mapper里面的接口,并在接口中写出要实现的方法

每个mapper接口上一定要添加@Mapper(作用:"不知道")

3.书写Service层

在service包下创建名为 XXXsService 接口,并将其方法mapper下的方法复写一边

在service包下创建impl包,并在该包下创建 XXXsService 接口的实例

实例中,加上注释@Service("XXXsService")作为服务层,双引号里面写的是实现接口的名字,但是首字母小写;例如:@Service("addresssService")

并在下方创建一个@Resource(name="addresssImpl"),addresssImpl是Dao层的接口名字,首字母小写并创建一个 private AddresssImpl addresssImpl;来调用Dao层,方法中返回实例addresssImpl的方法:return addresssImpl.Addressadd(address);

4.书写Controller层

在controller包下添加XXXsController类,

先添加@Controller声明其为控制层

在添加一个@RequestMapping("/roles") 表示第一层路径

在类中要调用服务层 增添注解 @Resource(name = "rolesService") ,以此调用服务层rolesService是服务层接口的名字,首字母小写,

并声明一个RolesService rolesService;来调用服务层

服务层的方法在书写前先声明路径,请求方法,以及文本类型

注解如下:

@RequestMapping(value = "/list", method = RequestMethod.GET, produces = "text/html;charset=UTF-8")

然后再添加注解:

@ResponseBody

最后书写方法,定义响应包内容,并return 返回一个json类型的数据体

public Object index12(HttpServletResponse response,@RequestBody Role role) {

response.setContentType("text/html;charset=UTF-8");

return JSON.toJSONString(rolesService.Roleadd(role));

}

当参数中有实体类的时候,要添加注解@RequestBody

相关推荐
程序员cxuan1 分钟前
我花了两天时间,终于把 Codex 额度掉太快的问题整明白了!!
人工智能·后端·程序员
IT_陈寒2 分钟前
Vue这个动态响应坑把我整不会了
前端·人工智能·后端
金銀銅鐵3 分钟前
[Java] 用图形化界面演示 iadd, isub, iconst_<i> 指令的效果
java·后端·python
AskHarries15 分钟前
做国内还是出海
后端
J2虾虾20 分钟前
Spring AI Alibaba文档
java·人工智能·spring
YikNjy26 分钟前
break和continue
java·开发语言·算法
SomeOtherTime28 分钟前
Geojson相关(AI回答)
java·前端·python
日月云棠39 分钟前
10 Integer —— 最常用的整数包装类深度解析
java·后端
大鸡腿同学43 分钟前
大模型为何总 “胡说八道”?做完 RAG 知识库,我看懂了它的底层逻辑
后端
秋943 分钟前
java项目中cpu飙升排查及解决方法
java·开发语言