- 博客(151)
- 资源 (4)
- 收藏
- 关注
原创 Spring web-flux 响应式编程
1、基于传统的结构 Demo (仅仅作为快速了解,生产环境不会用这种)请求处理类 Controller 类package com.yootk.webflux.handler;import org.springframework.web.reactive.function.server.ServerRequest;import org.springframework.web.reactive.function.server.ServerResponse;import reactor.core.pub
2022-04-01 14:41:07
809
原创 spring boot配置文件分类
配置文件分类Spring Boot 中4级配置文件1 级: file : config/application.yml 最高2 级: file : application.yml 该配置文件与jar 包同级3 级: classpath: config/application.yml 类路径 config 目录下4 级: classpath: application.yml 类路径下作用:1级与2级留做系统打包后设置通用属性,1级常用于
2022-03-31 09:25:58
818
原创 spring boot带属性数启动
在 java -jar 命令后 带属性数启动 spring boot# 在命令行 使用 80 端口覆盖 配置文件中的端口java -jar springboot.jar --server.port = 80携带多个属性启动Spring Boot ,属性间使用空格分隔参考链接
2022-03-31 09:02:24
428
原创 spring boot处理异常
对 Controller 层的异常进行统一处理,出现异常后,返回指定信息@RestControllerAdvicepublic class ProjectExceptionAdvice{ // 能处理什么异常 @ExceptionHandler(Exception.class) // 处理异常具体的方法 public R doOtherException(Excetption ex) { //记录日志 //发送消息给运维 //发送邮件给开发人员,ex对象发送给开发人员 ex.pr
2022-03-31 06:54:17
178
原创 spring 整合Druid 配置文件
spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC username: root password: root type: com.alibaba.druid.pool.DruidDataSource
2022-03-29 20:47:21
859
原创 spring boot 读取 yaml配置文件中的配置项
我的 yml 配置文件中的自定义配置项datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC username: root password: root定义一个 class 来接收这个配置项由spring帮我们去加载数据到对象中,一定要告诉spring加载这组信息(spring 已经拿到了配置信息,只有Spring 管
2022-03-28 22:16:47
309
原创 01 spring boot 中 vo、dto、model(entity)目录下 的类加 @Data 注解
spring boot @Data 注解
2022-03-26 09:48:27
1182
原创 IntelliJ IDEA 创建 spring boot 项目
#1、New Project --> 选择 Spring Initializr -->依次填写图中信息Name : 项目名 (b0902)Location : 项目存储的位置 (我将它存储在 ~/Java/Practice)Type : 依赖管理 (我选择用 Maven)Group: 当前项目属于哪个公司、哪个组织 (com.huizhouyiren)Artifact: 这个与 Name 同名 (IDEA自动填充)Package name :
2022-03-26 09:32:05
202
原创 Mac java 开发
1、在 mac 上搭建开发环境搜索 jdk版本brew search openjdk安装 jdk版本brew install openjdk@8brew install openjdk@11查看 Java版本java -version2、安装 tomcat官网下载tomcat参考链接参考链接
2022-03-25 09:53:45
351
原创 Rust 开发 01 安装 cargo-edit
简介1、cargo-editcargo-edit 这个工具扩展了 Cargo,允许通过从文件中修改 Cargo.toml 文件来添加。删除和升级依赖项。2、安装 cargo-editcargo install cargo-edit3、cargo-edit可用子命令cargo addcargo rmcargo upgrade...
2022-03-13 11:19:01
492
原创 golang 获取服务端的真实 IP
func GetLocalIP() (ip string, err error) { addrs, err := net.InterfaceAddrs() if err != nil { return } for _, addr := range addrs { ipAddr, ok := addr.(*net.IPNet) if !ok { continue } if ipAddr.IP.IsLoopback() { continue } if !ipAdd
2022-01-06 16:23:50
883
原创 使用 `gqlgen` 踩的坑
1、问题描述:1、我的 /Users/lo/go/src/graphql 路径下的 graphql 是用 gqlgen 生成的,其目录结构如下├── go.mod├── go.sum├── gqlgen.yml├── graph│ ├── generated│ │ └── generated.go│ ├── model│ │ └── models_gen.go│ ├── resolver.go│ ├── schema.graphqls│ └──
2021-11-20 09:19:52
358
原创 go-zero使用教程
1、goctl命令大全1、快速创建一个 api服务goctl api new user 2、生成 api 文件goctl api -o user.api3、验证api文件是否有效goctl api validate -api user.api4、生成 doc markdowngoctl api doc -dir user5、生成 golang api 服务-dir (指定代码存放目录)-api (指定api文件源)-force (是否强制覆盖已经存在的文件)-style
2021-11-11 10:11:45
1096
原创 gin-vue-admin 自动代码生成API 接口
1、Mysql 数据中获取所有的表SELECT SCHEMA_NAME AS `database` FROM INFORMATION_SCHEMA.SCHEMATA;2、PostgreSQL2、gin-vue-admin 接口调用顺序/api/init/initdb/api/base/captcha/api/init/checkdb/api/base/login/api/menu/getMenu/api/autoCode/getDB查看 ...
2021-11-11 10:08:36
1509
原创 macOS Catalina 通过 Goland 或者 IntelliJ IDEA 安装 Golang SDK
1、打开 IntelliJ IDEA 如下图所示2、点击 Setup GOROOT 如下图所示3、点击 Download 如下图所示1、⚠️Location 这里只能填 /usr/local2、Version 这里填 go version 命令输出的 golang 版本4、如果 /usr/local 下已经有 go1.17.2 了则显示如下5、点击 OK...
2021-11-10 17:29:00
380
原创 macOS Catalina 报错 compile: version “go1.16.10“ does not match go tool version “go1.17.2“ 解决方案
解决方案1 删除 Golang SDKcd $GOROOT && cd ../ && sudo rm -rf go2、根据报错信息重新下载 go1.17.2 这个版本的 Golang SDK3、golang下载地址4、安装 go1.17.2 并查看 golang 版本go version5、如下图所示则完美解决问题...
2021-11-10 16:14:33
3473
原创 MacOS Catalina 配置 Golang 开发环境
1、查看当前 macOS 的架构uname -a2、下载适配当前macOS架构的 Golang pkg3、指定 GOPATH 的目录cd $HOME && mkdir go && cd $HOME/go && mkdir bin && mkdir pkg && mkdir src4、配置 ~/.bash_profile 文件# HomeBrewexport HOMEBREW_BOTTLE_DOMAIN=htt
2021-11-10 13:55:30
356
原创 chromedp 模拟登陆 gitee
package mainimport ( "context" "github.com/chromedp/chromedp" "time")var ( URL = "https://gitee.com/login" Account = "gopher2011" Password = "123456")func main() { // chromdp依赖context上限传递参数 ctx, _ := chromedp.NewExecAllocator( context.Back
2021-10-24 19:51:16
635
原创 chromedp的使用 案例 二
package mainimport ( "context" "github.com/chromedp/chromedp" "time")var ( URL = "https://account.wps.cn/" URL02 = "https://github.com/search")func main() { // chromdp依赖context上限传递参数 ctx, _ := chromedp.NewExecAllocator( context.Background()
2021-10-24 17:25:42
548
原创 chromedp 的使用
1、参考链接2、golang代码package mainimport ( "context" "github.com/chromedp/chromedp" "time")var URL = "https://account.wps.cn/"// 参考链接 https://blog.youkuaiyun.com/yes169yes123/article/details/109562220func main() { // chromdp依赖context上限传递参数 ctx, _ := chr
2021-10-24 16:24:26
693
原创 gorm 中结构体字段 不带 gorm 这个 tag ,该字段也会被创建
type Student struct { Age int Name string}func (it *ServiceContext) AutoMigrate() { it.DB.AutoMigrate( &Student{}, )}// 数据库中照样会创建这张 student 表,并且该表 有 age name 这两个字段
2021-10-10 20:24:48
497
原创 go-zero 读取配置文件
1、自定义 test.yaml 配置文件Name: test-apiHost: 0.0.0.0Port: 8888Database: DSN: "root:root@tcp(127.0.0.1:3306)/test?charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai" MaxOpenConn: 0 MaxIdleConn: 2 ConnMaxLifetime: 28800 ConnMaxIdleTime: 288
2021-10-09 14:43:34
926
原创 gorm中一对一,多对多关系
1、一对一 : 属于 belongsTopackage main// belongsTotype Dog struct { //舔狗 gorm.Model Name string}type GirlGod struct { //女神 gorm.Model Name string}func (it *ServiceContext) AutoMigrate() { it.DB.AutoMigrate(&Dog{},&GirlGod{}) //创建这两张表,它们之间没
2021-09-30 17:02:00
417
原创 go操作excel文件
1、我的 excel文件 2021.xlsx2、读取 2021.xlsx 文件package mainimport ( "fmt" "github.com/xuri/excelize/v2")func main() { f, err := excelize.OpenFile("2021.xlsx") if err != nil { panic(err) } rows, err := f.GetRows("2021")//此时 sheet != Sheet1, sheet ==
2021-09-25 16:22:44
192
原创 golang爬虫 colly的使用
colly官方 examplefunc main(){ // Collector对象 负责所有的请求与数据处理 // 在创建 Collector 对象时,通过设置 URLFilters 属性,在 URLFilters 设置正则表达式,符合正则表达式的 url 才能被访问。 c := colly.NewCollector( colly.Async(true), //开启异步 colly.UserAgent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit
2021-09-16 21:29:32
268
原创 go-zero缓存的使用
1、编辑配置文件 (配置 redis 信息)vim datacenter/etc/datacenter-api.yamlName: datacenter-apiHost: 0.0.0.0Port: 8888CacheRedis: - Host: 127.0.0.1:6379 Pass: "" Type: nodeAuth: AccessSecret: "afadafafafafafa" AccessExpire: 19002、初始化缓存package s
2021-09-15 21:15:55
1099
原创 go-zero 配置文件模版(后续写代码直接照抄即可)
Name: sms_bot-apiHost: 127.0.0.1Port: 8888Database: Pkg : "./internal/svc" DriverName: "mysql" DSN: "root:98123456@tcp(192.168.4.240:3306)/qe?charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai"Logger: Path: "./tmp/sql.log" MaxAge: 1
2021-09-04 19:51:01
743
原创 go-redis 缓存对象
github.com/go-redis/redis缓存对象package mainimport ( "context" "github.com/davecgh/go-spew/spew" "github.com/go-redis/redis/v8")type Model struct { Str1 string `redis:"str1"` Str2 string `redis:"str2"` Int int `redis:"int"` Bo
2021-09-04 16:08:35
598
原创 Go中判断 字符串切片中是否有重复值
// 返回 true 则 list中有重复值// 返回 false 则 list中没有重复值func IsListDuplicated(list []string) bool { tmpMap := make(map[string]int) for _, value := range list { tmpMap[value] = 1 } var keys []interface{} for k := range tmpMap { keys = append(keys, k) }
2021-08-24 12:56:52
2156
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人