自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 golang连接mysql数据库步骤

先下载mysql驱动,执行指令go get -u github.com/go-sql-driver/mysql导入驱动依赖包 "database/sql" "fmt" _ "github.com/go-sql-driver/mysql"创建连接database, err := sql.Open("mysql", "root:root@tcp(127.0.0.1:3306)/localhost_3306")...

2022-05-27 16:18:01 152

原创 go 为什么切片作为传参的时候,触发扩容机制,形参为什么影响不到实参,传入切片指针又可以

当传入切片时,触发扩容时,形参不能影响实参func main() { a := make([]int, 2, 3) // fmt.Printf("主函数对象地址是%p", &a) fmt.Println(a) test01(a) // test02(&a) fmt.Println(a)}func test02(s *[]int) { // fmt.Printf("test处理前对象地址是%p", &s) *s = append(*s, 2, 3, 4, .

2022-05-24 16:57:15 123

原创 golang单元测试

1.创建一个xxx_test.go文件2.再引入一个testing包import ( "testing")3.在声明一个TestXXX函数Test后面第一个字符为大写字母func TestStore(t *testing.T) { monster := Monster{ Name: "zzf", Age: 18, Skill: "游泳", } (&monster).Store()}4.执行 go test -v指令go test -v...

2022-05-22 00:36:05 135

原创 golang文件读写数据

package mainimport ( "bufio" "fmt" "io" "os")func main() { filepath := "d:/zzf.txt" //文件的操作权限赋予 file, err := os.OpenFile(filepath, os.O_RDWR|os.O_APPEND, 0666) if err != nil { return } defer file.Close() //获取读的流 reader := bufio.NewReader

2022-05-22 00:32:17 125

原创 golang文件读写数据

package mainimport ( "bufio" "fmt" "io" "os")func main() { filepath := "d:/zzf.txt" //文件的操作权限赋予 file, err := os.OpenFile(filepath, os.O_RDWR|os.O_APPEND, 0666) if err != nil { return } defer file.Close() //获取读的流 reader := bufio.NewReader

2022-05-21 22:09:54 142

原创 go文件读取

1.缓冲读取 file, err := os.Open("D:/os.txt") if err != nil { fmt.Println("没有该文件") panic(err) } fmt.Printf("%v", file) //函数结束前执行包括异常结束 defer file.Close() //获取缓冲流 reader := bufio.NewReader(file) for { str, error := reader.ReadString('\n') if

2022-05-20 17:04:22 90

原创 struct四种定义和初始化方式

package mainimport "fmt"type prson struct { name string age int}func main() { var p1 prson p1.name = "Bob" p1.age = 18 fmt.Println(p1) //直接初始化 p2 := prson{"Jack", 18} fmt.Println(p2) //new一个struct返回指针 var p3 *prson = new(prson) (*p3).na

2022-05-20 10:35:26 295

原创 【切片使用的三种方式】

func main() { //定义一个切片,然后去指向一个初始化的数组 a := [5]int{1, 2, 3, 4, 5} var slice1 = a[1:3] fmt.Println(slice1) //直接make var slice2 = make([]int, 3, 5) slice2[0] = 1 slice2[1] = 2 slice2[2] = 3 fmt.Println(slice2) //定义切片,直接指向具体数组 var slice3 = []int{1,

2022-05-20 10:14:27 207

原创 【golang数组各种定义方式】

import "fmt"func main() { //1.先定义后初始化 var a [2]int a[0] = 1 a[1] = 2 fmt.Println() //2.隐式定义并初始化赋值 b := [5]int{1, 2, 2, 3, 4} fmt.Println(b) //3.定义并初始化 var c [3]int = [3]int{1, 2, 3} fmt.Println(c) // 4.省前面部分的数据组类 var d = [3]int{80, 60, 95}

2022-05-20 09:55:02 697

原创 SpringBoot的启动流程原理

SpringBoot启动流程主要分为两步:SpringApplication对象的创建,以及SpringApplication.run方法的执行。SpringApplication对象的创建initialize()方法主要会保存主配置类,记录其全路径判断其是否为web模块,主要是通过Class for name全路径是否能反射出dispatchServlet类。以及加载一些ApplicationContextInitializer 和ApplicationListers从类路径下的met

2022-05-07 17:46:23 425

原创 GC三种算法:引用计数法 复制算法 标记清除压缩算法

引用计数法:给每个对象一个计数器,每当有一个地方引用该对象,则计数器加1 ,gc清除时,对计数为0的对象进行清除。优点:可以立即回收,每当计数器为0时,就可以回收缺点:每次计数器赋值需要大量计算,还有就是循环引用的时候清理不了赋值算法:每次gc,伊甸园区的和幸存from区的全部赋值到幸存to区,15次gc则进入到养老区优点:没有内存碎片,且效率较高缺点:每次都会多余一个内存空间to区标记清除压缩算法:扫描对象,对没有被引用的对象进行标记,然后再次扫描清除没有引用的对象,最后进行压缩优点:没有空

2022-04-08 17:24:10 179

原创 SpringBoot中Rest风格请求实现原理

2022-03-24 17:06:51 535

原创 线程池理解

##线程池的好处频繁的创建线程,销毁线程,会造成很大的性能开销,线程池技术可以人为的控制线程池的创建和销毁,可以提前创建好线程,放在线程池中,需要的时候就获取。线程池主要有以下几个属性构成corePoolSize:核心线程数maximumPoolSize:最大线程数keepAliveTime:线程空闲时间TimeUnit :空闲时间单位workQueue:等待队列三种常用的线程池newCachedThreadPool:无界线程池,该类型的线程池的的核心线程池的数量为0 ,也就是..

2022-02-14 10:52:20 132

原创 JDK动态代理方式

1.有接口情况用JDK动态代理,无接口使用CGLIB接口2具体JDK动态代理方式一个接口UserDaopublic interface UserDao { public int add(int a, int b); public int update(int id);}接口实现类public class UserDaoImpl implements UserDao { @Override public int add(int a,int b) {

2022-01-21 11:25:07 210

原创 io流文件复制的几种写法

字节流一个字节一个字节的复制` long startTime = System.currentTimeMillis(); try (FileInputStream fileInputStream= new FileInputStream("D://个人简历.doc"); FileOutputStream fileOutputStream = new FileOutputStream("D://zzf//个人简历.doc");) {

2021-10-13 16:28:33 66

原创 通过反射获取类属性做处理

先创建两个实体类Teacher 和Student@Datapublic class Teacher { private String name = "teacher"; private Integer age; private String subject;}@Datapublic class Student { private String name = "student"; private Integer age; private by

2021-10-13 15:36:09 74

原创 存储过程的创建

存储过程批量插入-- 如果存在同名的存储过程则删除DROP PROCEDUREIF EXISTS proc_batch_insert;-- 创建存储过程CREATE PROCEDURE proc_batch_insert ()BEGINDECLARE i INT;SET i = 1;WHILE i < 1500000 DO INSERT INTO mt_plan_wbs_template ( `ID`, `FD_TEMP_CODE`, `FD_TEMP_NAME`

2021-04-26 09:49:47 2915

原创 ActiveMQ 发布订阅者模式

消息的发送方编写—生产者创建连接工厂对象ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(tcp://localhost:61616);从工厂获取连接Connection connection = connectionFactory.createConnection()连接MQ服务connection.start();获取session连接对象//是否开启事务,签收模式,这里是不开启事务和自动应答.

2021-03-23 18:00:01 188

原创 java Vo和实体类的互相转换

java 中VO和实体类的互相转换1.首先导入依赖 <dependency> <groupId>net.sf.dozer</groupId> <artifactId>dozer</artifactId> <version>5.4.0</version> </dependency>2.注入 @Autowired protected Mapper dozerMapp

2021-03-16 16:10:47 2398

转载 web项目中获取类路径和相对路径的五种方法

import java.io.File;import java.io.IOException;import java.net.URL;public class MyUrlDemo { public static void main(String[] args) { MyUrlDemo muDemo = new MyUrlDemo(); try { muDemo.showURL(); } catch (IOException e) {

2020-09-02 08:52:39 766

原创 JpaRepository和EntityManger的区别

一。JpaRepository单表操作public interface TestDao extends JpaRepository<Project, String>, JpaSpecificationExecutor1.可以没有实现类2.可以通过@Query自定义方法3.使用@Modifying+@Query时的注意事项:方法返回值是int,表示影响的行数在调用的地方必须加事务,没事务不执行二.EntityManger更多的是进行连表操作时查询实体类的一种方式。Query qu

2020-09-01 11:03:30 1030

原创 springBoot+Vue文件导入导出excel表

文件导出一。后台代码:1.查询所有对象并且把对象信息写入excel表中2.设置头信息和编码格式hsp.addHeader(“Content-Disposition”, “attachment;filename=” + URLEncoder.encode(“项目信息.xls”,“UTF-8”));hsp.setContentType(“applicatoin/octet-stream;charset=utf-8”);hsp.setHeader(“Access-Control-Expose-Hea

2020-09-01 10:07:41 937

原创 SpringBoot的自动装配

1.pom.xml核心依赖:父工程<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.6.RELEASE</version...

2020-04-28 17:48:47 84

原创 springmvc配置文件

<?xml version="1.0" encoding="UTF-8"?><!-- 定义注解驱动Controller方法处理适配器 ,注:该适配器必须声明在<mvc:annotation-driven />之前,否则不能正常处理参数类型的转换 --><!--<bean class="org.springframework.web.servle...

2020-02-27 14:37:38 228

原创 spring配置文件部分详解

<?xml version="1.0" encoding="UTF-8"?><!-- 扫描的包 --><context:component-scan base-package="com.seecen.service"></context:component-scan><!-- 让spring读取jdbc.properties文件 --&...

2020-02-27 14:34:56 137

原创 匿名内部类 是否可以继承其它类,是否可以实现接口

可以继承其他类或实现其他接口。不仅是可以,而是必须!匿名内部类:可以继承其他类,但不能用extends。可以实现某接口,但不能用implements。匿名内部类,就是没有名字的内部类。故没有构造器,必须调用基类的构造器。所以是继承基类的。匿名内部类经常被用来覆盖基类的某些方法:class A{public void a(){System.out.orintln(“甲”);}pub...

2020-02-27 11:39:40 1024

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除