- 仿华为车机UI--图标从Workspace拖动到Hotseat同时保留图标在原来位置
Kwanvin
AndroidLauncher3深度定制开发华为uiandroidLauncher3java
基于Android13Launcher3,原生系统如果把图标从Workspace拖动到Hotseat里则Workspace就没有了,需求是执行拖拽动作后,图标同时保留在原位置。实现效果如下:实现思路:1.如果在workspace中拖动,则保留原来“改变图标位置”的功能2.如果拖拽到Hotseat,则添加到Hotseat的同时也在原来位置复制一个一样的View3.每次改变都要存到数据库以保存当前状态
- 一些基础知识
我就是杨过
Android方面Handlerhandlerlooper看官网使用gradle配置和使用都是干什么的android给开发者提供了哪些工具类TextUtils.isEmpty()安卓提供的开发类应该还有很多看看总结一下DataBindingAndroid提供了数据绑定技术所以要看Android官网的数据绑定通知的相关知识Android官网介绍的很详细Android版本控制以及在代码中的使用@Req
- 2019-04-23 用Node.js搭建一个静态服务器
E1FANG
首先,要知道服务器是什么个人理解:服务器是用于响应用户请求,和存储数据的。用node搭建服务器的步骤第一步引入http模块varhttp=require('http')第二步创建服务器varserver=http.createServer(function(req,res){//req是回调函数的第一个参数,通过它可以获取用户的IP,和浏览器的一些相关信息//res是服务器响应用户请求之后需要返回
- vue2结合electron开发桌面端应用
vitenode
桌面端Electronvueelectronjavascript前端
一、Electron是什么?Electron是一个使用JavaScript、HTML和CSS构建桌面应用程序的框架。嵌入Chromium和Node.js到二进制的Electron。允许您保持一个JavaScript代码代码库并创建可在Windows、macOS和Linux上运行的跨平台应用。Electron提供了丰富的本地(操作系统)API,使你能够使用纯JavaScript来创建桌面应用程序。E
- 对Vue组件生命周期的理解
2401_85770776
vuevue.js前端javascript
Vue.js组件生命周期中的几个重要阶段:创建、初始化数据、编译模板、挂载DOM、更新渲染、卸载。这些阶段对应了Vue.js的生命周期钩子函数。下面我将详细解释每个阶段以及它们在Vue.js生命周期中的作用。文章目录1.创建(Creation)2.初始化数据(InitializationofData)3.编译模板(TemplateCompilation)4.挂载DOM(MountingtheDOM
- 转码日记——Javascript笔记(14)BOM对象
zzcoding_
转码日记javascript前端html5
BOM(browserobjectmodel)浏览器对象模型在BOM中,为我们提供了一组对象,用来帮助我们完成对浏览器的操作。BOM对象:Window(代表整个浏览器的窗口,同时也是网页中的全局对象),Navigator(代表当前浏览器的信息,通过该对象可以识别不同的浏览器),Location(代表当前浏览器的地址栏信息,可以获得地址栏信息并操纵浏览器跳转页面),History(代表浏览器的历史记
- JavaScript初级——Location
Fan_web
前端学习分享前端cssjavascript开发语言html
1、Location——该对象中封装了浏览器的地址栏的信息2、如果直接打印Location,则可以获取到地址栏的信息(当前页面的完整路径)。3、如果直接将location属性修改为一个完整的路径或者相对路径,则页面会自动跳转到该路径,并且会生成相应的历史记录。4、方法:①assign()——用来跳转到其他页面,作用和直接修改location一样。②reload()——用于重新加载当前页面,作用和刷
- JavaScript初级——Navigatior
Fan_web
前端学习分享javascript开发语言前端csshtml
1、Navigator代表当前浏览器的信息,通过该对象可以来识别不同的浏览器。2、由于历史原因,Navigator对象中的大部分属性已经不能帮助我们是被浏览器了。3、一般使用userAgent来判断浏览器的信息。4、userAgent是一个字符串,包含有用来描述浏览器信息的内容,不同的浏览器会有不同的userAgent。5、在IE11中已经将微软和IE相关的标识都已经去除了,所以我们基本已经不能通
- JavaScript初级——History
Fan_web
前端学习分享css前端javascript开发语言html
1、属性:length——可以获取到当前访问的链接数量。2、方法:①back()——可以用来回退到上一个页面,作用和浏览器的回退按钮一样②forward()——可以跳转下一个页面,作用和浏览器的前进按钮一样③go()——可以用来跳转到指定的界面——需要一个整数作为参数:1:表示向前跳转一个页面,相当于forward()2:表示向前跳转两个页面-1:表示向后跳转一个页面-2:表示向后跳转两个页面本文
- JavaScript初级:BOM
Kur2
JavaScript
JavaScript初级——BOMBOM使得JavaScript能与浏览器进行“对话”主要是Window对象的操作Window对象对象:window对象表示浏览器中打开的窗口(每一个窗口都是一个对象)特点:Window是全局对象,可以直接调用其方法和属性Window对象的一些方法和属性可省略不写,如:Window.document等同于document,windows.alert()等同于aler
- JavaScript初级学习笔记
杰希默克
前端javascript面向对象跨平台对象
一、关于JavaScript1、什么是JavaScript?JavaScript是一种面向对象的程序语言。在程序中,对象是有“属性”和“方法”构成的。一个“东西”就是“对象”。“对象”的“属性”就是自身的特征,如:身高、体重、年龄等。“对象”的“方法”就是动作或者行为,如:开车、打游戏等。JS程序可以在多种平台下运行——跨平台,如:Windows、Linux、OSX等。JS只能在客户端的浏览器来运
- 2018-03-18 图片处理(一)----图片加载
紫杉叶子
笔记如下如图:2018-03-18_081925.png实现步骤:从sd卡中显示图片1.因为是android6.0系统,所以要动态申请读写sd卡的权限2.显示图片为了与屏幕大小更加的契合,要动态的获取对图片的一个采样率采样率:比如采样率为4,对于一个1000*1000的图片,宽和高:1000*1000---->高:1/4*宽:1/4=总:1/16----以1/16的大小来采样动态获取采样率//应该
- vue3页面空白-普通函数和箭头函数提升的不同
Kent_J_Truman
vuevue
在JavaScript中,普通函数(即使用function关键字定义的函数)和箭头函数(使用()和=>定义的函数)在作用域和提升(hoisting)行为上有不同的表现。1.普通函数(FunctionDeclarations)普通函数声明会被提升(hoisted),也就是说,它们可以在声明之前被调用。这是因为函数声明会被提升到当前作用域的顶部。例如:console.log(foo());//输出"H
- 如何升级node.js版本
bxp1321
node.js
升级Node.js可以通过多种方式来完成,以下是四种常见的方法:方法一:使用Node.js官方安装程序访问Node.js的官方网站,下载对应你操作系统的最新版本安装程序。通常,你可以https://nodejs.org/en/download找到你需要的版本,比如:v18.20.2LTS双击打开下载的安装程序,并按照安装向导的指示进行安装。如果你已经安装了Node.js,安装程序通常会提供一个“U
- Nginx部署前端Vue项目
不会代码的小林
前端
简介本文将介绍如何使用Nginx部署前端Vue项目。Nginx是一款轻量级的高性能Web服务器,可以用于静态文件的托管和反向代理等场景。而Vue.js是一个流行的JavaScript框架,用于构建用户界面。环境准备首先,确保已经安装了Node.js和npm。然后,使用以下命令安装VueCLI:bash复制代码运行npminstall-g@vue/cli创建Vue项目接下来,我们可以使用VueCLI
- 如何限制JS对象属性的配置
小鱼旋子
JavaScript里对象的属性是公开的,一般是不受保护的,即属性的修改/添加/添加不受限制,但是在一些应用情境下,又需要对对象的属性做一些限制。第一种情况:对属性的修改、增加、删除做限制Object.preventExtensions()限制了不能向对象中新添加属性和方法了但可以修改对象中存在的属性,也可以删除原有属性和方法Object.isExtensible():可以确定对象是否为可篡改,如
- Android之电量优化
追梦的鱼儿
android电量优化性能优化
目录1.减少不必要的网络请求2.优化位置服务3.优化后台任务4.优化图像和动画(界面渲染)5.避免后台服务常驻6.优化电量使用的监控在Android应用开发中,电量优化是一个非常重要的方面,因为用户对设备电量的敏感性很高。1.减少不必要的网络请求网络请求是耗电大户,尤其是在移动网络环境下。以下是一些优化策略:批量请求:将多个网络请求合并为一个请求。缓存数据:使用缓存机制减少重复的网络请求。//使用
- Android之同一个Thread线程里只能有一个Looper?(ThreadLocal)
追梦的鱼儿
androidjavahandlerThreadLocalLooper线程
目录ThreadLocal的基本原理Looper和ThreadLocal的结合如何使用ThreadLocal的示例1.ThreadLocal变量的定义2.创建Looper实例3.获取Looper实例示例完整的示例总结同一个Thread线程里只能有一个Looper对象。在Android中,ThreadLocal是一个非常有用的工具,它允许你在每个线程中存储和访问独立的变量副本。Looper是Andr
- Android之Handler的post方法和sendMessage的区别
追梦的鱼儿
androidjavaHandlerpostsendrunnable
目录post方法方法特点sendMessage方法方法特点使用场景区别总结Handler类在Android中用于在不同线程之间传递消息和执行代码。它提供了两种主要的方式来执行任务:通过post方法和通过sendMessage方法。这两种方法有不同的使用场景和特点。post方法方法post(Runnabler)postDelayed(Runnabler,longdelayMillis)postAtT
- Flybirds框架使用总结
自动化测试框架
运行环境Python版本:3.9.9Node版本:20.5.1Pycharm版本:2021.3专业版安装flybirds包打开Pycharm终端,输入如下命令:pipinstallflybirds安装完成后继续输入flybirdscreate然后输入项目名、平台,设备名和包名可以后面再填运行用例以Android自动化测试为例在生成的项目路径fbTest/features/test/android新
- JavaScript提升系列(二):JavaScript简介
拳战攻城师
一、JavaScript简史JavaScript诞生于1995年,最早的用于客户端基本的数据验证。Netscape公司在1995年12月发布了LiveScript,为了蹭热度,改名叫JavaScript,这就是JavaScript的第一个版本,JavaScript1.0。JavaScript1.0成功之后,Netscape随即又发布了JavaScript1.1。不久后,微软在IE3中加入了名为JS
- Android架构组件:MVVM模式的实战应用与数据绑定技巧
大分享文库
大分享文库cnkvip.comwww.cnkvip.comandroid
在Android开发中,随着应用复杂度的增加,如何有效地组织和管理代码成为了一个关键问题。MVVM(Model-View-ViewModel)架构模式因其清晰的结构和高效的开发效率,逐渐成为Android开发者们青睐的架构模式之一。本文将结合具体案例,详细分析MVVM模式在Android开发中的实战应用以及数据绑定技巧。一、MVVM模式概述MVVM模式是一种基于数据绑定的架构模式,用于设计和组织应
- JavaScript入门第七章(数据类型转换 )
v_648374
javascript开发语言ecmascript
显式转换:程序员主动调用语法去转换数据类型,语义更加明确注意:数据类型的转变并不会改变原来变量的值,而是会产生一个新的值例如:(1)letnum='10';parseInt(num):为什么要有数据类型转换?有时候想要进行某种计算的时候,由于数据类型不同往往会产生一些错误的结果,为了避免这种结果,我们需要将某种数据类型转化为其他数据类型例如:prompt()输入框得到的数据的类型是string,如
- 安卓model转鸿蒙ets
麦克尔.马
androidharmonyos华为
现在的androidstudio提供了java自动转kotlin的实现,非常方便。那android的java和kotlin有没有可能转成鸿蒙arkts呢。本质上都是字符串文件,讲道理应该是可行的。先从最简单的model转换开始,把kotlin的model转成ets。通过插件的形式把kt/java文件转成ets文件,贴个kt2ets的方法:funconvertKt2Ets(ktCode:String
- nginx部署前端vue项目
Min_nna
ai分析vue功能前端
在Nginx上部署Vue.js前端项目的步骤如下:1.构建Vue.js项目首先,确保你已经完成了Vue.js项目的开发。然后在项目根目录下运行以下命令来构建项目:npmrunbuild这将生成一个dist文件夹,里面包含了可以部署到Nginx的静态文件。2.安装Nginx如果你还没有安装Nginx,可以通过以下命令安装(以Ubuntu为例):sudoaptupdatesudoaptinstalln
- 插件化之资源id冲突问题
__hgb
由于插件apk中和宿主apk各自打包,插件资源id有可能会和宿主中的资源id产生冲突。而解决这个问题,可以有两种思路。解决方案一Android打包过程中需要用到aapt工具来为资源生成资源id,而我们可以修改插件资源id前缀,就可以避免发生冲突。每一个资源都对应一个十六进制的变量。由三部分组成,packageid+typeid+entryid.packageid:apk的packageid默认为0
- javascript设计模式---单例模式
知道了啊
javascript设计模式单例模式
JavaScript设计模式—单例模式单例模式又称为单体模式,并提供一个访问它的全局访问点,也就是说,第二次使用同一个类创建的对象的时候,应该得到和第一次创建的对象完全相同的对象特点一个类只能生成一个实例对象提供一个全局访问点来获取这个实例案例window和documentVuex,Redux和Router全局loading缺点确保在整个应用中,只有一个实例存在,而且该实例需要被全局访问时。但是使
- react-native-http-cache android编译错误
ablac
getSmallImageDiskStorageCache()改为getSmallImageFileCachegetMainDickStorageCache()改为getMainFileCacheios编译错误import"RCTHttpCache.h"注释下面三个//#import"RCTImageLoader.h"//#import"RCTImageCache.h"//#import"RCTB
- 黑猴子的家:JavaWeb 之 Ajax
黑猴子的家
1、Ajax简介AJAX是AsynchronousJavaScriptAndXML的简称。直译为,异步的JS和XML。AJAX的实际意义是,不发生页面跳转、异步载入内容并改写页面内容的技术。AJAX也可以简单的理解为通过JS向服务器发送请求。AJAX这门技术很早就被发明,但是直到2005年被谷歌的大量使用,才在市场中流行起来,可以说Google为AJAX的推广起到到推波助澜的作用。2、Ajax同步
- react 实用学习笔记总结,持续更新~
George灬
reactreact
React是用于构建用户界面的JavaScript库可以认为是MVC中的V(MVC:模型model-视图view-控制器controller)虚拟DOM(VirtualDOM)DOM(文档对象模型DocumentObjectModel)React通过Diff算法找出虚拟DOM和真实DOM之间的差异,仅渲染修改的这一部分变化,减少了DOM的重绘,提高了效率JSX语法是一种应用于React中的Java
- java工厂模式
3213213333332132
java抽象工厂
工厂模式有
1、工厂方法
2、抽象工厂方法。
下面我的实现是抽象工厂方法,
给所有具体的产品类定一个通用的接口。
package 工厂模式;
/**
* 航天飞行接口
*
* @Description
* @author FuJianyong
* 2015-7-14下午02:42:05
*/
public interface SpaceF
- nginx频率限制+python测试
ronin47
nginx 频率 python
部分内容参考:http://www.abc3210.com/2013/web_04/82.shtml
首先说一下遇到这个问题是因为网站被攻击,阿里云报警,想到要限制一下访问频率,而不是限制ip(限制ip的方案稍后给出)。nginx连接资源被吃空返回状态码是502,添加本方案限制后返回599,与正常状态码区别开。步骤如下:
- java线程和线程池的使用
dyy_gusi
ThreadPoolthreadRunnabletimer
java线程和线程池
一、创建多线程的方式
java多线程很常见,如何使用多线程,如何创建线程,java中有两种方式,第一种是让自己的类实现Runnable接口,第二种是让自己的类继承Thread类。其实Thread类自己也是实现了Runnable接口。具体使用实例如下:
1、通过实现Runnable接口方式 1 2
- Linux
171815164
linux
ubuntu kernel
http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.1.2-unstable/
安卓sdk代理
mirrors.neusoft.edu.cn 80
输入法和jdk
sudo apt-get install fcitx
su
- Tomcat JDBC Connection Pool
g21121
Connection
Tomcat7 抛弃了以往的DBCP 采用了新的Tomcat Jdbc Pool 作为数据库连接组件,事实上DBCP已经被Hibernate 所抛弃,因为他存在很多问题,诸如:更新缓慢,bug较多,编译问题,代码复杂等等。
Tomcat Jdbc P
- 敲代码的一点想法
永夜-极光
java随笔感想
入门学习java编程已经半年了,一路敲代码下来,现在也才1w+行代码量,也就菜鸟水准吧,但是在整个学习过程中,我一直在想,为什么很多培训老师,网上的文章都是要我们背一些代码?比如学习Arraylist的时候,教师就让我们先参考源代码写一遍,然
- jvm指令集
程序员是怎么炼成的
jvm 指令集
转自:http://blog.csdn.net/hudashi/article/details/7062675#comments
将值推送至栈顶时 const ldc push load指令
const系列
该系列命令主要负责把简单的数值类型送到栈顶。(从常量池或者局部变量push到栈顶时均使用)
0x02 &nbs
- Oracle字符集的查看查询和Oracle字符集的设置修改
aijuans
oracle
本文主要讨论以下几个部分:如何查看查询oracle字符集、 修改设置字符集以及常见的oracle utf8字符集和oracle exp 字符集问题。
一、什么是Oracle字符集
Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据。它使数据库工具,错误消息,排序次序,日期,时间,货
- png在Ie6下透明度处理方法
antonyup_2006
css浏览器FirebugIE
由于之前到深圳现场支撑上线,当时为了解决个控件下载,我机器上的IE8老报个错,不得以把ie8卸载掉,换个Ie6,问题解决了,今天出差回来,用ie6登入另一个正在开发的系统,遇到了Png图片的问题,当然升级到ie8(ie8自带的开发人员工具调试前端页面JS之类的还是比较方便的,和FireBug一样,呵呵),这个问题就解决了,但稍微做了下这个问题的处理。
我们知道PNG是图像文件存储格式,查询资
- 表查询常用命令高级查询方法(二)
百合不是茶
oracle分页查询分组查询联合查询
----------------------------------------------------分组查询 group by having --平均工资和最高工资 select avg(sal)平均工资,max(sal) from emp ; --每个部门的平均工资和最高工资
- uploadify3.1版本参数使用详解
bijian1013
JavaScriptuploadify3.1
使用:
绑定的界面元素<input id='gallery'type='file'/>$("#gallery").uploadify({设置参数,参数如下});
设置的属性:
id: jQuery(this).attr('id'),//绑定的input的ID
langFile: 'http://ww
- 精通Oracle10编程SQL(17)使用ORACLE系统包
bijian1013
oracle数据库plsql
/*
*使用ORACLE系统包
*/
--1.DBMS_OUTPUT
--ENABLE:用于激活过程PUT,PUT_LINE,NEW_LINE,GET_LINE和GET_LINES的调用
--语法:DBMS_OUTPUT.enable(buffer_size in integer default 20000);
--DISABLE:用于禁止对过程PUT,PUT_LINE,NEW
- 【JVM一】JVM垃圾回收日志
bit1129
垃圾回收
将JVM垃圾回收的日志记录下来,对于分析垃圾回收的运行状态,进而调整内存分配(年轻代,老年代,永久代的内存分配)等是很有意义的。JVM与垃圾回收日志相关的参数包括:
-XX:+PrintGC
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintGCDateStamps
-Xloggc
-XX:+PrintGC
通
- Toast使用
白糖_
toast
Android中的Toast是一种简易的消息提示框,toast提示框不能被用户点击,toast会根据用户设置的显示时间后自动消失。
创建Toast
两个方法创建Toast
makeText(Context context, int resId, int duration)
参数:context是toast显示在
- angular.identity
boyitech
AngularJSAngularJS API
angular.identiy 描述: 返回它第一参数的函数. 此函数多用于函数是编程. 使用方法: angular.identity(value); 参数详解: Param Type Details value
*
to be returned. 返回值: 传入的value 实例代码:
<!DOCTYPE HTML>
- java-两整数相除,求循环节
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
public class CircleDigitsInDivision {
/**
* 题目:求循环节,若整除则返回NULL,否则返回char*指向循环节。先写思路。函数原型:char*get_circle_digits(unsigned k,unsigned j)
- Java 日期 周 年
Chen.H
javaC++cC#
/**
* java日期操作(月末、周末等的日期操作)
*
* @author
*
*/
public class DateUtil {
/** */
/**
* 取得某天相加(减)後的那一天
*
* @param date
* @param num
*
- [高考与专业]欢迎广大高中毕业生加入自动控制与计算机应用专业
comsci
计算机
不知道现在的高校还设置这个宽口径专业没有,自动控制与计算机应用专业,我就是这个专业毕业的,这个专业的课程非常多,既要学习自动控制方面的课程,也要学习计算机专业的课程,对数学也要求比较高.....如果有这个专业,欢迎大家报考...毕业出来之后,就业的途径非常广.....
以后
- 分层查询(Hierarchical Queries)
daizj
oracle递归查询层次查询
Hierarchical Queries
If a table contains hierarchical data, then you can select rows in a hierarchical order using the hierarchical query clause:
hierarchical_query_clause::=
start with condi
- 数据迁移
daysinsun
数据迁移
最近公司在重构一个医疗系统,原来的系统是两个.Net系统,现需要重构到java中。数据库分别为SQL Server和Mysql,现需要将数据库统一为Hana数据库,发现了几个问题,但最后通过努力都解决了。
1、原本通过Hana的数据迁移工具把数据是可以迁移过去的,在MySQl里面的字段为TEXT类型的到Hana里面就存储不了了,最后不得不更改为clob。
2、在数据插入的时候有些字段特别长
- C语言学习二进制的表示示例
dcj3sjt126com
cbasic
进制的表示示例
# include <stdio.h>
int main(void)
{
int i = 0x32C;
printf("i = %d\n", i);
/*
printf的用法
%d表示以十进制输出
%x或%X表示以十六进制的输出
%o表示以八进制输出
*/
return 0;
}
- NsTimer 和 UITableViewCell 之间的控制
dcj3sjt126com
ios
情况是这样的:
一个UITableView, 每个Cell的内容是我自定义的 viewA viewA上面有很多的动画, 我需要添加NSTimer来做动画, 由于TableView的复用机制, 我添加的动画会不断开启, 没有停止, 动画会执行越来越多.
解决办法:
在配置cell的时候开始动画, 然后在cell结束显示的时候停止动画
查找cell结束显示的代理
- MySql中case when then 的使用
fanxiaolong
casewhenthenend
select "主键", "项目编号", "项目名称","项目创建时间", "项目状态","部门名称","创建人"
union
(select
pp.id as "主键",
pp.project_number as &
- Ehcache(01)——简介、基本操作
234390216
cacheehcache简介CacheManagercrud
Ehcache简介
目录
1 CacheManager
1.1 构造方法构建
1.2 静态方法构建
2 Cache
2.1&
- 最容易懂的javascript闭包学习入门
jackyrong
JavaScript
http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html
闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。
下面就是我的学习笔记,对于Javascript初学者应该是很有用的。
一、变量的作用域
要理解闭包,首先必须理解Javascript特殊
- 提升网站转化率的四步优化方案
php教程分享
数据结构PHP数据挖掘Google活动
网站开发完成后,我们在进行网站优化最关键的问题就是如何提高整体的转化率,这也是营销策略里最最重要的方面之一,并且也是网站综合运营实例的结果。文中分享了四大优化策略:调查、研究、优化、评估,这四大策略可以很好地帮助用户设计出高效的优化方案。
PHP开发的网站优化一个网站最关键和棘手的是,如何提高整体的转化率,这是任何营销策略里最重要的方面之一,而提升网站转化率是网站综合运营实力的结果。今天,我就分
- web开发里什么是HTML5的WebSocket?
naruto1990
Webhtml5浏览器socket
当前火起来的HTML5语言里面,很多学者们都还没有完全了解这语言的效果情况,我最喜欢的Web开发技术就是正迅速变得流行的 WebSocket API。WebSocket 提供了一个受欢迎的技术,以替代我们过去几年一直在用的Ajax技术。这个新的API提供了一个方法,从客户端使用简单的语法有效地推动消息到服务器。让我们看一看6个HTML5教程介绍里 的 WebSocket API:它可用于客户端、服
- Socket初步编程——简单实现群聊
Everyday都不同
socket网络编程初步认识
初次接触到socket网络编程,也参考了网络上众前辈的文章。尝试自己也写了一下,记录下过程吧:
服务端:(接收客户端消息并把它们打印出来)
public class SocketServer {
private List<Socket> socketList = new ArrayList<Socket>();
public s
- 面试:Hashtable与HashMap的区别(结合线程)
toknowme
昨天去了某钱公司面试,面试过程中被问道
Hashtable与HashMap的区别?当时就是回答了一点,Hashtable是线程安全的,HashMap是线程不安全的,说白了,就是Hashtable是的同步的,HashMap不是同步的,需要额外的处理一下。
今天就动手写了一个例子,直接看代码吧
package com.learn.lesson001;
import java
- MVC设计模式的总结
xp9802
设计模式mvc框架IOC
随着Web应用的商业逻辑包含逐渐复杂的公式分析计算、决策支持等,使客户机越
来越不堪重负,因此将系统的商业分离出来。单独形成一部分,这样三层结构产生了。
其中‘层’是逻辑上的划分。
三层体系结构是将整个系统划分为如图2.1所示的结构[3]
(1)表现层(Presentation layer):包含表示代码、用户交互GUI、数据验证。
该层用于向客户端用户提供GUI交互,它允许用户