- 真实案例出发,再谈retrofit封装
何小Ai同学
android-基础androidretrofit
原文链接:Anthony的简书博客项目代码:CameloeAnthony/Ant前言在使用了一段时间的Retrofit之后,今天终于在这里讲解到了网络的部分。目前开源的HTTP框架有很多,Volley,AndroidAsyncHttp,以及OkHttp+Retrofit等。而我在自己的使用中选择了Retrofit,这里就从基础到原理,再到实例的方式,讲解我对Retrofit做出的一些封装和使用。来
- Android Volley学习
小地盘
Android借赏AndroidVolleyRequestQueueNetworkResponseImageRequest
拜读了郭霖大师的博客,真是受益匪浅。AndroidVolley完全解析(一),初识Volley的基本用法AndroidVolley完全解析(二),使用Volley加载网络图片AndroidVolley完全解析(三),定制自己的RequestAndroidVolley完全解析(四),带你从源码的角度理解Volley1.功能介绍1.1.VolleyVolley是Google推出的Android异步网络
- Android-Volley源码分析
grumoon
android源码阅读Volley网络请求AndroidHttp
更多开源项目分析请点击Android优秀开源项目实现原理解析1.功能介绍Volley是Google推出的Android异步网络调用框架和图片加载框架。在GoogleI/O2013大会上发布。名字由来:aburstoremissionofmanythingsoralargeamountatonce发布演讲时候的配图从名字由来和配图中无数急促的火箭可以看出Volley的特点:特别适合数据量小,通信频繁
- Java网络编程:HttpURLConnection、HttpClient和Volley
静谧星光
java开发语言编程
简介:在Java中进行网络编程时,有多种库和框架可供选择。本文将重点介绍三种常用的网络编程工具:HttpURLConnection、HttpClient和Volley。这些工具提供了方便的API和功能,使得在Java应用程序中发送HTTP请求和处理响应变得更加简单和高效。HttpURLConnection:HttpURLConnection是Java标准库中的类,用于发送HTTP请求和处理响应。它
- 掌握Glide:Android高效图片加载解决方案
一点旧一点新
本文还有配套的精品资源,点击获取简介:Glide是一个专为Android优化的图片加载库,由GoogleVolley团队开发,能提供流畅的滚动体验和高效的内存与图片解码管理。本文深入探讨了Glide的功能特点,例如智能缓存、内存管理、图片变形与缩放、动画支持、生命周期管理以及易于定制的API。文中还指导如何在项目中集成和使用Glide,包括基本和高级用法、自定义配置的示例代码,以及如何选择适合项目
- 【Android】Glide基本用法及With方法源码解析
去看全世界的云
Androidglideandroidjava
文章目录引入优点使用步骤导入依赖权限使用其他用法占位符错误图片后备回调符圆角过渡动画大小调整gif缩略图使用RequestOptions缓存机制设置缓存策略清理缓存使用集成库OkHttpVolleywith源码解析getRetrieverGlide.getinitializeGlidegetRequestManagerRetrieverRequestManagerRetriever#get引入Gl
- javax.net.ssl.SSLHandshakeException: com.android.org.bouncycastle.jce.exception.ExtCertPathValidator
走着学磔
bug三星
访问https踩到的坑,在http请求下同样的代码不会出现的问题,但是https不行,问题手机三星安卓版本4.3com.android.volley.NoConnectionError:javax.net.ssl.SSLHandshakeException:com.android.org.bouncycastle.jce.exception.ExtCertPathValidatorExceptio
- Android 2020-2021年 最新面试题(附个人面试经历),Glide的缓存机制
wa2231a
程序员架构移动开发android
4.Broadcast注册方式与区别(1)静态注册(minifest),(2)动态注册http://www.jianshu.com/p/ea5e233d9f43此处延伸:什么情况下用动态注册5.HttpClient与HttpUrlConnection的区别http://blog.csdn.net/guolin_blog/article/details/12452307此处延伸:Volley里用的哪
- 深入剖析Android Volley缓存机制(18)
Android 小码蜂
Volley详解androidkotlinflutterandroid-studioandroidstudio
深入剖析AndroidVolley缓存机制:从源码解读数据读取与更新全流程一、引言在移动应用开发中,网络请求是不可或缺的一环。然而,频繁的网络请求不仅会消耗用户的流量,还会影响应用的响应速度和性能。为了解决这些问题,缓存机制应运而生。AndroidVolley作为一款强大的网络请求库,提供了灵活且高效的缓存策略,能够显著提升应用的性能和用户体验。本文将深入剖析AndroidVolley的缓存读取与
- 探秘 Android Volley JsonObjectRequest:从源码到实践的深度解析(7)
Android 小码蜂
Volley详解androidkotlinflutterandroid-studioandroidstudio
探秘AndroidVolleyJsonObjectRequest:从源码到实践的深度解析一、引言在移动应用开发领域,网络请求是连接客户端与服务器的重要桥梁。对于Android开发者而言,Volley框架因其高效、灵活的特性,成为处理网络请求的首选方案之一。而在实际开发中,JSON数据格式因其简洁性和通用性,被广泛应用于服务器与客户端的数据交互。Volley提供的JsonObjectRequest类
- Kotlin+Jetpack Compose+Volley+ViewModel Android开发
烫手的猪蹄儿
功能代码说明androidkotlinandroidjetpack
刚开始接触kotlin+JetpackCompose开发Android应用,这里记录下自己的理解建议看官方中文文档:https://developers.google.cn/codelabs/jetpack-compose-basics#0https://developer.android.google.cn/codelabs/jetpack-compose-state#01.概念1.1Jetpa
- Android 访问网络框架之——OkHttp框架的解析
mr丶yang
原创Okhttp框架网络
越来越发现一些第三方的框架比Android原生大的API好用多了,而且android废弃掉了HttpClient,有必要学习一些访问网络的框架,于是踏上了一条框架学习之路,先前学习了Volley框架。今天来解析一下OkHttp框架。一,OkHttp的简单使用,主要包括:一般的get请求一般的post请求基于Http的文件上传文件下载加载图片支持请求回调,直接返回对象、对象集合支持session的保
- 2018-06-05
sheepintheriver
#推送微信公众平台:**id:
[email protected]****pw:zhongdongpaixie**---*推荐阅读*中东排协《四校总决赛观赛指南》,全程高能,傻子文案,排版优秀,重点突出。***https://mp.weixin.qq.com/s/fe0cFqYjkjq8Lf42We2gYw***中东排协《动销决赛日!激战体育馆》,不多说了。***https://mp.we
- 移动端网络框架--基于valley实现
Amrecs
androidvalley框架网络框架移动
说明:在开发Android项目时自己写的一个网络连接框架,基于valley框架的使用建立了一个支持多线程的、异步下载的、多数据格式的网络框架valley简介:在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient(Apache)等,今年的GoogleI/O2013上,Volley发
- Android:Volley框架使用
偶是不器
Androidandroidvolley网络请求学习
3.15Volley框架使用Volley框架主要作为网络请求,图片加载工具。当应用数据量小、网络请求频繁,可以使用Volley框架。框架Github地址:https://github.com/google/volleyVolley框架的简单使用,创建项目Pro_VolleyDemo。将Github上下载Volley框架源代码,volley-master.zip。解压vlley-master.zip
- 上英语课NO.72
暖煦2020
2020-2-4星期三阴上英语课NO.72今天晚上预习英语时,我学会了几个单词,playsoccerplaybasketballplayfootballplaybaseballplayvolleyball我好开心,因为老师上课时我都能听懂。明天我还要预习。我是星球宝贝039号星宝,这是我的第70篇日记。不积跬步,无以至千里;不积小流,无以成江海
- 网络框架之----Volley的封装
Parcelable
Android学习之路代码笔记
Volley封装get请求和post请求定义请求回调的接口publicinterfaceNetListener{//参数就是解析后的数据voidsuccessListener(Tresponse);//参数对错误信息进行操作voiderrorListener(VolleyErrorerror);}创建Volley请求/***这个请求可以直接将数据进行解析,所以可以直接使用请求后的数据*/publi
- Android 9.0 webview无法显示网页内容
EraJieZhang
原因是:从Android9.0(API级别28)开始,默认情况下禁用明文支持。因此http的url均无法在webview中加载。解决办法:在AndroidManifest.xml文件中的APplication标签添加android:usesCleartextTraffic="true"。android:usesCleartextTraffic="true"另外使用Volley还需要在applica
- 【Android - 框架】之Glide的使用
总会颠沛流离
一、Glide简介:Glide是Google官方推荐的一个图片加载和缓存的开源库,它不仅能实现平滑的图片列表滚动效果,还支持远程图片的获取、大小调整和展示,并且可以加载GIF图片。Glide相比与UIF、Volley、Picasso、Fresco等其他框架的优点是轻量和稳定。二、Glide的配置:使用Glide首先需要导入Glide的依赖,在build.gradle文件中添加:implementa
- 欧洲排球联合会
hbdxyxmk
欧洲排球联合会:http://www.cev.lu2017年欧冠参赛的队伍AbiantGRONINGENAddressesOosterveld169451GX-Rolde,(NED)MediaDetailsWebSite:www.lycurgus.nlFacebook:LycurgusVolleybal/?fref=tsTwitter:@LycurgusVolleyYouTube:www.yout
- 北京奥运会十周年纪念
tiger007lw
图片发自App10年前的今天看了四场排球比赛,当时真的是非常激动。那个时候还没有微信,通过短信把激动的心情发给了大家,找到了当时保留的短信:【今天是我有生以来最快乐的日子之一。要到现场看四场奥运会女排比赛。简单的、无须理由的快乐直达心底,幸福弥漫四周。少年时代结下的排球情缘穿越时空,发、扣、拦与生命的律动达到完美的共鸣!郎平、蕊蕊,过去、现在,少年情怀、现实生活,被volleyball紧紧串起,谢
- volley提示:Trust anchor for certification path not found
牵手生活
提示内容如下:javax.net.ssl.SSLHandshakeException:java.security.cert.CertPathValidatorException:Trustanchorforcertificationpathnotfound.解决办法:来源于stackoverflowMakingaHTTPSrequestusingAndroidVolley步骤1:创建HttpsTr
- 更新k8s镜像版本的三种方式
wilsonchai
一、知识准备更新镜像版本是在k8s日常使用中非常常见的一种操作,本文主要介绍更新介绍的三种方法二、环境准备组件版本OSUbuntu18.04.1LTSdocker18.06.0-ce三、准备镜像首先准备2个不同版本的镜像,用于测试(已经在阿里云上创建好2个不同版本的nginx镜像)dockerpullregistry.cn-beijing.aliyuncs.com/mrvolleyball/ngi
- 计算机毕设:网民社交网络数据的分析与挖掘
mqdlff_python
数据分析计算机毕设网民社交网络分析数据分析数据挖掘数据库机器学习
1.读数据表首先,我们读取原始数据,并查看各字段基本情况。gradyeargenderagefriendsbasketballfootballsoccersoftballvolleyballswimmingcheerleadingbaseballtennissportscutesexsexyhotkisseddancebandmarchingmusicrockgodchurchjesusbible
- (一),Glide的基本用法
chenhao911x
现在Android上的图片加载框架非常成熟,从最早的老牌图片加载框架UniversalImageLoader,到后来Google推出的Volley,再到后来的新兴军Glide和Picasso,当然还有Facebook的Fresco。每一个都非常稳定,功能也都十分强大。但是它们的使用场景基本都是重合的,也就是说我们基本只需要选择其中一个来进行学习和使用就足够了,每一个框架都尝试去掌握的话则有些浪费时
- 【日语学习笔记】2-28生词表
小关的自学笔记
生词表讲解居間「いま」②【名】起居室今「いま」①【现在】本棚「ほんだな」①【名】书架本「ほん」+棚「たな」=本棚「ほんだな」【连浊现象】bed「ベッド」①【名】起床pet「ペット」①【宠物】soccerball「サッカーボール」⑤【名】足球volleyball「バレーボール」④【排球】basketball「バスケットボール」⑥【篮球】子供「こども」0【名】孩子,小孩大人「おとな」0【大人,成年人】
- Android最简单的MVP架构写法
韩小鱼
Android简单MVP简单Android
1、bean文件夹属于封装的对象2、model---我把他的定义就是专门写网路请求的3、presenter----我把他当做是沟通的桥梁,实现数据层与视图层的交互4、view---最简单的视图层包括(activity、adapter、fragment等。。。)解释一下我不喜欢讲话,所以一般都是代码或者截图了。1、我那登录作为例子2、我网路框架用的是volley,为什么用volley呢?答案:因为这
- Retrofit原理简析
俗人浮生
记得很久以前,写过一篇文章,主要说的是Retrofit应用的:Retrofit2+RxJava2踩坑今天我们来简单说说Retrofit的原理,其实嘛,作为一个搞技术的人,对Retrofit应该有一种好奇的态度,毕竟这是个很优秀的框架,里面用了不少设计模式,很值得我们学习,我们先从Request说起吧。笔者之前也写过一篇文章:Volley源码学习,就算不看Volley的源码,使用过Volley的人都
- Glide 图片形状裁剪 ,滤镜等
weixin_30348519
移动开发
Glide、Picasso、Fresco已逐渐成为Android主流的图片加载工具(个人见解,使用Volley、ImageLoader、xUtils的大佬们请勿喷~),在多数Android程序员的印象中,它们只是加载图片和缓存图片的工具,其实它们还有很多强大的功能没有被发掘...今天,小编向各位介绍一下这些工具的新功能:图像转换下面是小编配合Glide,以GlideTransformations为
- 【Android机器学习实战】3、定制可点击View、目标检测、以图搜图实战
呆呆的猫
android目标检测kotlin
文章目录一、添加依赖二、定制可点击的View控件三、设计布局四、实现图片检测Activity和搜图Activity五、点击目标检测页时跳转至搜图页一、添加依赖首先,新建项目ProductSearchTest,项目github地址详见在build.gradle中添加如下依赖://VolleyNetworkcallimplementation'com.android.volley:volley:1.2
- java短路运算符和逻辑运算符的区别
3213213333332132
java基础
/*
* 逻辑运算符——不论是什么条件都要执行左右两边代码
* 短路运算符——我认为在底层就是利用物理电路的“并联”和“串联”实现的
* 原理很简单,并联电路代表短路或(||),串联电路代表短路与(&&)。
*
* 并联电路两个开关只要有一个开关闭合,电路就会通。
* 类似于短路或(||),只要有其中一个为true(开关闭合)是
- Java异常那些不得不说的事
白糖_
javaexception
一、在finally块中做数据回收操作
比如数据库连接都是很宝贵的,所以最好在finally中关闭连接。
JDBCAgent jdbc = new JDBCAgent();
try{
jdbc.excute("select * from ctp_log");
}catch(SQLException e){
...
}finally{
jdbc.close();
- utf-8与utf-8(无BOM)的区别
dcj3sjt126com
PHP
BOM——Byte Order Mark,就是字节序标记 在UCS 编码中有一个叫做"ZERO WIDTH NO-BREAK SPACE"的字符,它的编码是FEFF。而FFFE在UCS中是不存在的字符,所以不应该出现在实际传输中。UCS规范建议我们在传输字节流前,先传输 字符"ZERO WIDTH NO-BREAK SPACE"。这样如
- JAVA Annotation之定义篇
周凡杨
java注解annotation入门注释
Annotation: 译为注释或注解
An annotation, in the Java computer programming language, is a form of syntactic metadata that can be added to Java source code. Classes, methods, variables, pa
- tomcat的多域名、虚拟主机配置
g21121
tomcat
众所周知apache可以配置多域名和虚拟主机,而且配置起来比较简单,但是项目用到的是tomcat,配来配去总是不成功。查了些资料才总算可以,下面就跟大家分享下经验。
很多朋友搜索的内容基本是告诉我们这么配置:
在Engine标签下增面积Host标签,如下:
<Host name="www.site1.com" appBase="webapps"
- Linux SSH 错误解析(Capistrano 的cap 访问错误 Permission )
510888780
linuxcapistrano
1.ssh -v
[email protected] 出现
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
错误
运行状况如下:
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
debug1: Reading configuratio
- log4j的用法
Harry642
javalog4j
一、前言: log4j 是一个开放源码项目,是广泛使用的以Java编写的日志记录包。由于log4j出色的表现, 当时在log4j完成时,log4j开发组织曾建议sun在jdk1.4中用log4j取代jdk1.4 的日志工具类,但当时jdk1.4已接近完成,所以sun拒绝使用log4j,当在java开发中
- mysql、sqlserver、oracle分页,java分页统一接口实现
aijuans
oraclejave
定义:pageStart 起始页,pageEnd 终止页,pageSize页面容量
oracle分页:
select * from ( select mytable.*,rownum num from (实际传的SQL) where rownum<=pageEnd) where num>=pageStart
sqlServer分页:
 
- Hessian 简单例子
antlove
javaWebservicehessian
hello.hessian.MyCar.java
package hessian.pojo;
import java.io.Serializable;
public class MyCar implements Serializable {
private static final long serialVersionUID = 473690540190845543
- 数据库对象的同义词和序列
百合不是茶
sql序列同义词ORACLE权限
回顾简单的数据库权限等命令;
解锁用户和锁定用户
alter user scott account lock/unlock;
//system下查看系统中的用户
select * dba_users;
//创建用户名和密码
create user wj identified by wj;
identified by
//授予连接权和建表权
grant connect to
- 使用Powermock和mockito测试静态方法
bijian1013
持续集成单元测试mockitoPowermock
实例:
package com.bijian.study;
import static org.junit.Assert.assertEquals;
import java.io.IOException;
import org.junit.Before;
import org.junit.Test;
import or
- 精通Oracle10编程SQL(6)访问ORACLE
bijian1013
oracle数据库plsql
/*
*访问ORACLE
*/
--检索单行数据
--使用标量变量接收数据
DECLARE
v_ename emp.ename%TYPE;
v_sal emp.sal%TYPE;
BEGIN
select ename,sal into v_ename,v_sal
from emp where empno=&no;
dbms_output.pu
- 【Nginx四】Nginx作为HTTP负载均衡服务器
bit1129
nginx
Nginx的另一个常用的功能是作为负载均衡服务器。一个典型的web应用系统,通过负载均衡服务器,可以使得应用有多台后端服务器来响应客户端的请求。一个应用配置多台后端服务器,可以带来很多好处:
负载均衡的好处
增加可用资源
增加吞吐量
加快响应速度,降低延时
出错的重试验机制
Nginx主要支持三种均衡算法:
round-robin
l
- jquery-validation备忘
白糖_
jquerycssF#Firebug
留点学习jquery validation总结的代码:
function checkForm(){
validator = $("#commentForm").validate({// #formId为需要进行验证的表单ID
errorElement :"span",// 使用"div"标签标记错误, 默认:&
- solr限制admin界面访问(端口限制和http授权限制)
ronin47
限定Ip访问
solr的管理界面可以帮助我们做很多事情,但是把solr程序放到公网之后就要限制对admin的访问了。
可以通过tomcat的http基本授权来做限制,也可以通过iptables防火墙来限制。
我们先看如何通过tomcat配置http授权限制。
第一步: 在tomcat的conf/tomcat-users.xml文件中添加管理用户,比如:
<userusername="ad
- 多线程-用JAVA写一个多线程程序,写四个线程,其中二个对一个变量加1,另外二个对一个变量减1
bylijinnan
java多线程
public class IncDecThread {
private int j=10;
/*
* 题目:用JAVA写一个多线程程序,写四个线程,其中二个对一个变量加1,另外二个对一个变量减1
* 两个问题:
* 1、线程同步--synchronized
* 2、线程之间如何共享同一个j变量--内部类
*/
public static
- 买房历程
cfyme
2015-06-21: 万科未来城,看房子
2015-06-26: 办理贷款手续,贷款73万,贷款利率5.65=5.3675
2015-06-27: 房子首付,签完合同
2015-06-28,央行宣布降息 0.25,就2天的时间差啊,没赶上。
首付,老婆找他的小姐妹接了5万,另外几个朋友借了1-
- [军事与科技]制造大型太空战舰的前奏
comsci
制造
天气热了........空调和电扇要准备好..........
最近,世界形势日趋复杂化,战争的阴影开始覆盖全世界..........
所以,我们不得不关
- dateformat
dai_lm
DateFormat
"Symbol Meaning Presentation Ex."
"------ ------- ------------ ----"
"G era designator (Text) AD"
"y year
- Hadoop如何实现关联计算
datamachine
mapreducehadoop关联计算
选择Hadoop,低成本和高扩展性是主要原因,但但它的开发效率实在无法让人满意。
以关联计算为例。
假设:HDFS上有2个文件,分别是客户信息和订单信息,customerID是它们之间的关联字段。如何进行关联计算,以便将客户名称添加到订单列表中?
&nbs
- 用户模型中修改用户信息时,密码是如何处理的
dcj3sjt126com
yii
当我添加或修改用户记录的时候对于处理确认密码我遇到了一些麻烦,所有我想分享一下我是怎么处理的。
场景是使用的基本的那些(系统自带),你需要有一个数据表(user)并且表中有一个密码字段(password),它使用 sha1、md5或其他加密方式加密用户密码。
面是它的工作流程: 当创建用户的时候密码需要加密并且保存,但当修改用户记录时如果使用同样的场景我们最终就会把用户加密过的密码再次加密,这
- 中文 iOS/Mac 开发博客列表
dcj3sjt126com
Blog
本博客列表会不断更新维护,如果有推荐的博客,请到此处提交博客信息。
本博客列表涉及的文章内容支持 定制化Google搜索,特别感谢 JeOam 提供并帮助更新。
本博客列表也提供同步更新的OPML文件(下载OPML文件),可供导入到例如feedly等第三方定阅工具中,特别感谢 lcepy 提供自动转换脚本。这里有导入教程。
- js去除空格,去除左右两端的空格
蕃薯耀
去除左右两端的空格js去掉所有空格js去除空格
js去除空格,去除左右两端的空格
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>&g
- SpringMVC4零配置--web.xml
hanqunfeng
springmvc4
servlet3.0+规范后,允许servlet,filter,listener不必声明在web.xml中,而是以硬编码的方式存在,实现容器的零配置。
ServletContainerInitializer:启动容器时负责加载相关配置
package javax.servlet;
import java.util.Set;
public interface ServletContainer
- 《开源框架那些事儿21》:巧借力与借巧力
j2eetop
框架UI
同样做前端UI,为什么有人花了一点力气,就可以做好?而有的人费尽全力,仍然错误百出?我们可以先看看几个故事。
故事1:巧借力,乌鸦也可以吃核桃
有一个盛产核桃的村子,每年秋末冬初,成群的乌鸦总会来到这里,到果园里捡拾那些被果农们遗落的核桃。
核桃仁虽然美味,但是外壳那么坚硬,乌鸦怎么才能吃到呢?原来乌鸦先把核桃叼起,然后飞到高高的树枝上,再将核桃摔下去,核桃落到坚硬的地面上,被撞破了,于是,
- JQuery EasyUI 验证扩展
可怜的猫
jqueryeasyui验证
最近项目中用到了前端框架-- EasyUI,在做校验的时候会涉及到很多需要自定义的内容,现把常用的验证方式总结出来,留待后用。
以下内容只需要在公用js中添加即可。
使用类似于如下:
<input class="easyui-textbox" name="mobile" id="mobile&
- 架构师之httpurlconnection----------读取和发送(流读取效率通用类)
nannan408
1.前言.
如题.
2.代码.
/*
* Copyright (c) 2015, S.F. Express Inc. All rights reserved.
*/
package com.test.test.test.send;
import java.io.IOException;
import java.io.InputStream
- Jquery性能优化
r361251
JavaScriptjquery
一、注意定义jQuery变量的时候添加var关键字
这个不仅仅是jQuery,所有javascript开发过程中,都需要注意,请一定不要定义成如下:
$loading = $('#loading'); //这个是全局定义,不知道哪里位置倒霉引用了相同的变量名,就会郁闷至死的
二、请使用一个var来定义变量
如果你使用多个变量的话,请如下方式定义:
. 代码如下:
var page
- 在eclipse项目中使用maven管理依赖
tjj006
eclipsemaven
概览:
如何导入maven项目至eclipse中
建立自有Maven Java类库服务器
建立符合maven代码库标准的自定义类库
Maven在管理Java类库方面有巨大的优势,像白衣所说就是非常“环保”。
我们平时用IDE开发都是把所需要的类库一股脑的全丢到项目目录下,然后全部添加到ide的构建路径中,如果用了SVN/CVS,这样会很容易就 把
- 中国天气网省市级联页面
x125858805
级联
1、页面及级联js
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
&l