logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Spring开发系列教程(12)——AOP避坑指南

无论是使用AspectJ语法,还是配合Annotation,使用AOP,实际上就是让Spring自动为我们创建一个Proxy,使得调用方能无感知地调用指定方法,但运行期却动态“织入”了其他逻辑,因此,AOP本质上就是一个。因为Spring使用了CGLIB来实现运行期动态创建Proxy,如果我们没能深入理解其运行原理和实现机制,就极有可能遇到各种诡异的问题。我们来看一个实际的例子。假设我们定义了一个

文章图片
#spring
Django系列教程(11)——管理后台(Admin)入门

我们需要自定义数据表中哪些字段可以显示,哪些字段可以编辑,并对数据表中的条目进行排序,同时定义过滤选项。Django的ModelAdmin自带的和ordering选项可以轻松帮我们做到。要自定义数据表显示字段,我们只需对上述代码做出如下改进。我们先定义类,然后使用方法即可。# 定制哪些字段需要展示# list_display_links = ('title', ) # 默认# sortable_b

文章图片
#django
基于Android的语音文字识别盲人无障碍辅助App

本项目开发了一款基于Android平台的语音文字双向转换应用,采用科大讯飞语音识别引擎实现两大核心功能:1)文本转语音,可将输入文本内容转换为语音播放;2)语音转文本,通过麦克风录入语音并实时识别为文字。

文章图片
Flutter系列教程之(6)——Tab导航与ListView使用

这里简单的介绍一下吧,代码就不放出了,我们只需要让页面继承StatefulWidget,之后在请求数据之后使用setState去修改数据,从而实现页面的改变,详情请看。我写的demo中,为了方便起见,都是使用的StatelessWidget,一般来说,ListView使用的情形是根据网络请求获得数据,之后再将数据以列表的形式显示。length表示有几个标签页,TabBar则表示上头的选项卡,你可以

文章图片
#flutter
Flutter系列教程之(4)——自定义Widget控件及相关知识

我们需要创建我们自定义的Widget控件,只需要创建一个类去继承和这两个类即可,这两个类都是Flutter提供的基本Widget类,不过在使用上有所区别是静态Widget,而则是动态Widget与唯一不同的特点,就是其提供了一个setState()的方法,我们可以调用此方法,更新数据,从而会让该Widget的内容发生改变(本质上与 MVVM 模式类似)那什么是静态Widget和动态Widget分别

文章图片
#flutter
Flutter系列教程之(3)——简单的APP实现

可以看到,home参数接收了一个Scaffold的Widget,这个是Flutter提供的脚手架模版,我们只需要设置照着写就可以得到一个简单的Material Design的页面了,如之前的图片所示。这里,我是使用了图标,Icon这个类是用来显示图片的Widget,Icons.add是使用了Google官方的Material Design图标中的add图标,也就是图中的加号。开始之前,记住一个概念

文章图片
#flutter
Flutter系列教程之(1)——环境配置、创建项目及打包apk

这里就不提Android Studio的安装和下载啦,我们打开Android Studio,先下载并安装好Dart的插件,重启一次Android Studio之后再安装Flutter插件,安装完之后,让我们创建一个demo来试试效果吧,安装完Flutter插件之后,Android Studio会出现一行创建Flutter的选项,选择即可创建Flutter项目。现在是简单的打包apk,由于我也是初入

文章图片
#flutter
Spring开发系列教程(26)——异步处理

在Servlet模型中,每个请求都是由某个线程处理,然后,将响应写入IO流,发送给客户端。从开始处理请求,到写入响应完成,都是在同一个线程中处理的。实现Servlet容器的时候,只要每处理一个请求,就创建一个新线程处理它,就能保证正确实现了Servlet线程模型。在实际产品中,例如Tomcat,总是通过线程池来处理请求,它仍然符合一个请求从头到尾都由某一个线程处理。这种线程模型非常重要,因为Spr

文章图片
#spring#java#后端
到底了