From f73bba2d760d03de4574cc10f948ddea1e842ca9 Mon Sep 17 00:00:00 2001
From: Cui YongXing <2835316714@qq.com>
Date: Fri, 26 Jul 2024 09:47:03 +0800
Subject: [PATCH] day08
---
.gitignore | 38 ++++++++++++
.idea/.gitignore | 8 +++
.idea/encodings.xml | 7 +++
.idea/inspectionProfiles/Project_Default.xml | 5 ++
.idea/misc.xml | 17 ++++++
.idea/setting.xml | 8 +++
.idea/vcs.xml | 6 ++
pom.xml | 55 ++++++++++++++++++
src/main/java/com/bwie/Application.java | 11 ++++
src/main/java/com/bwie/dao/BillDao.java | 15 +++++
src/main/java/com/bwie/pojo/Bill.java | 12 ++++
.../java/com/bwie/service/BillService.java | 12 ++++
.../bwie/service/impl/BillServiceImpl.java | 28 +++++++++
src/main/java/com/bwie/test/TestBill.java | 46 +++++++++++++++
src/main/resources/bootstrap.yml | 22 +++++++
src/main/resources/mapper/BillDao.xml | 14 +++++
理论/img.png | Bin 0 -> 22174 bytes
17 files changed, 304 insertions(+)
create mode 100644 .gitignore
create mode 100644 .idea/.gitignore
create mode 100644 .idea/encodings.xml
create mode 100644 .idea/inspectionProfiles/Project_Default.xml
create mode 100644 .idea/misc.xml
create mode 100644 .idea/setting.xml
create mode 100644 .idea/vcs.xml
create mode 100644 pom.xml
create mode 100644 src/main/java/com/bwie/Application.java
create mode 100644 src/main/java/com/bwie/dao/BillDao.java
create mode 100644 src/main/java/com/bwie/pojo/Bill.java
create mode 100644 src/main/java/com/bwie/service/BillService.java
create mode 100644 src/main/java/com/bwie/service/impl/BillServiceImpl.java
create mode 100644 src/main/java/com/bwie/test/TestBill.java
create mode 100644 src/main/resources/bootstrap.yml
create mode 100644 src/main/resources/mapper/BillDao.xml
create mode 100644 理论/img.png
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..5ff6309
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,38 @@
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### IntelliJ IDEA ###
+.idea/modules.xml
+.idea/jarRepositories.xml
+.idea/compiler.xml
+.idea/libraries/
+*.iws
+*.iml
+*.ipr
+
+### Eclipse ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+
+### Mac OS ###
+.DS_Store
\ No newline at end of file
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..13566b8
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 0000000..aa00ffa
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..8d66637
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..544713a
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/setting.xml b/.idea/setting.xml
new file mode 100644
index 0000000..ed05fd8
--- /dev/null
+++ b/.idea/setting.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..cd15fc8
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,55 @@
+
+
+ 4.0.0
+
+ com.bwie
+ billManage
+ 1.0-SNAPSHOT
+
+
+ 17
+ 17
+ UTF-8
+
+
+
+ org.springframework.boot
+ spring-boot-starter
+ 3.2.6
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+ 3.2.6
+
+
+
+ org.springframework.cloud
+ spring-cloud-starter-bootstrap
+ 3.1.0
+
+
+ mysql
+ mysql-connector-java
+ 8.0.29
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+ 3.0.2
+
+
+ org.projectlombok
+ lombok
+ 1.18.32
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ 3.2.6
+
+
+
+
diff --git a/src/main/java/com/bwie/Application.java b/src/main/java/com/bwie/Application.java
new file mode 100644
index 0000000..fafef69
--- /dev/null
+++ b/src/main/java/com/bwie/Application.java
@@ -0,0 +1,11 @@
+package com.bwie;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class Application {
+ public static void main(String[] args) {
+ SpringApplication.run(Application.class,args);
+ }
+}
diff --git a/src/main/java/com/bwie/dao/BillDao.java b/src/main/java/com/bwie/dao/BillDao.java
new file mode 100644
index 0000000..8119684
--- /dev/null
+++ b/src/main/java/com/bwie/dao/BillDao.java
@@ -0,0 +1,15 @@
+package com.bwie.dao;
+
+import com.bwie.pojo.Bill;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+@Mapper
+public interface BillDao {
+
+
+ int add(Bill bill);
+
+ List selectAll();
+}
diff --git a/src/main/java/com/bwie/pojo/Bill.java b/src/main/java/com/bwie/pojo/Bill.java
new file mode 100644
index 0000000..8d92759
--- /dev/null
+++ b/src/main/java/com/bwie/pojo/Bill.java
@@ -0,0 +1,12 @@
+package com.bwie.pojo;
+
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class Bill {
+ private Integer billid;
+ private Date billDate;
+ private Double billMonery;
+}
diff --git a/src/main/java/com/bwie/service/BillService.java b/src/main/java/com/bwie/service/BillService.java
new file mode 100644
index 0000000..18b8941
--- /dev/null
+++ b/src/main/java/com/bwie/service/BillService.java
@@ -0,0 +1,12 @@
+package com.bwie.service;
+
+import com.bwie.pojo.Bill;
+
+import java.util.List;
+
+public interface BillService{
+ int add(Bill bill);
+
+ List selectAll();
+
+}
diff --git a/src/main/java/com/bwie/service/impl/BillServiceImpl.java b/src/main/java/com/bwie/service/impl/BillServiceImpl.java
new file mode 100644
index 0000000..48bae2b
--- /dev/null
+++ b/src/main/java/com/bwie/service/impl/BillServiceImpl.java
@@ -0,0 +1,28 @@
+package com.bwie.service.impl;
+
+import com.bwie.dao.BillDao;
+import com.bwie.pojo.Bill;
+import com.bwie.service.BillService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class BillServiceImpl implements BillService {
+
+ @Autowired
+ private BillDao billDao;
+
+ @Override
+ public int add(Bill bill) {
+ int add = billDao.add(bill);
+
+ return add;
+ }
+
+ @Override
+ public List selectAll() {
+ return billDao.selectAll();
+ }
+}
diff --git a/src/main/java/com/bwie/test/TestBill.java b/src/main/java/com/bwie/test/TestBill.java
new file mode 100644
index 0000000..0d42cdd
--- /dev/null
+++ b/src/main/java/com/bwie/test/TestBill.java
@@ -0,0 +1,46 @@
+package com.bwie.test;
+
+import com.bwie.pojo.Bill;
+import com.bwie.service.BillService;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+
+@Component
+public class TestBill {
+
+ @Autowired
+ private BillService billService;
+
+ /**
+ * 添加
+ */
+ @Test
+ public void addBill(){
+
+ Bill bill = new Bill();
+ bill.setBillDate(new Date());
+ bill.setBillMonery(100.11);
+ int add = billService.add(bill);
+ if (add>0){
+ System.out.println("-----添加成功----");
+ }else {
+ System.out.println("-----添加失败----");
+ }
+ }
+
+ /**
+ * 查询列表
+ */
+ @Test
+ public void selectAll(){
+ billService.selectAll();
+ }
+
+
+
+
+
+}
diff --git a/src/main/resources/bootstrap.yml b/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..4e206d6
--- /dev/null
+++ b/src/main/resources/bootstrap.yml
@@ -0,0 +1,22 @@
+server:
+ port: 9009
+spring:
+ datasource:
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://127.0.0.1:3306/day08?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+ username: root
+ password: cyx12345
+
+
+# mybatis配置
+mybatis:
+ # 搜索指定包别名
+ typeAliasesPackage: com.bwie.pojo
+ # 配置mapper的扫描,找到所有的mapper.xml映射文件
+ mapperLocations: classpath:mapper/**/*.xml
+ configuration:
+ map-underscore-to-camel-case: true
+# 将mapper接口所在包的日志级别改成debug,可以在控制台打印sql
+logging:
+ level:
+ com.bwie.**: debug
diff --git a/src/main/resources/mapper/BillDao.xml b/src/main/resources/mapper/BillDao.xml
new file mode 100644
index 0000000..de525dd
--- /dev/null
+++ b/src/main/resources/mapper/BillDao.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+ insert into bill (billDate,billMonery) values (#{billDate},#{billMonery})
+
+
+
diff --git a/理论/img.png b/理论/img.png
new file mode 100644
index 0000000000000000000000000000000000000000..c9d855ee9f5ecfb5b07036baad050baeba6ea341
GIT binary patch
literal 22174
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
Mj(Z=Y9*s!*7feq;>Hq)$
literal 0
HcmV?d00001