上次介绍了使用CXF框架开发SOAP WebService服务,接下来介绍如何使用CXF框架开发RESTful风格的WebService服务.
这里就不罗嗦介绍restful是什么云云的话了(因为我也不理解..),或者说官方的话读起来觉得隐晦难懂,REST -- REpresentational State Transfer 直接翻译:表现层状态转移(这偷猫的谁能懂???),所以呢,我觉得就是一句话:用URL定位资源,用HTTP来描述CRUD操作.
所以必须知道一下几点:
1.服务端每一个对象,每一个资源都可以通过唯一的URL请求方式来进行寻址.
2.基于HTTP协议来进行资源请求{GET(查),POST(增),PUT(改),DELETE(删)}.或许这就是REST的奥妙所在吧.
3.访问的每一个资源都可以使用不同的形式加以表示(XML/JSON).
CXF框架支持RESTful风格的编程,发布了JAX-RS规范(http://cxf.apache.org/docs/jax-rs.html).
======================================================================================================================================好了,如何发布一个REST服务并调用呢?
服务端(Spring继承JPA与数据库交互):
1.实体类(加上@XmlRootElement注解,方便对象与XML之间转换)
@XmlRootElement
@Entity
public class User {
private Integer uno;
private String uname;
}
2.定义一个REST服务接口
public interface IUserService {
@GET//请求的方法
@Path("sayHi")//方法的路径名(独一无二)
String sayHi(@QueryParam("name") String name);
@GET
@Path("queryById")
@Produces(MediaType.APPLICATION_JSON)//输出数据的格式
@Consumes(MediaType.APPLICATION_JSON)//接受数据的格式
User queryById(@QueryParam("uno") Integer uno);//方法中的查询参数,注意与@PathParam的区别,前者是键值对的形式出现的,本人喜欢用前者.
@GET
@Path("queryAll")
@Produces(MediaType.APPLICATION_JSON)
List queryAll();
@POST
@Path("addUser")
@Consumes(MediaType.APPLICATION_JSON)
void addUser(User user);
@PUT
@Path("updUser")
@Consumes(MediaType.APPLICATION_JSON)
void updUser(User user);
@DELETE
@Path("delUser")
@Consumes(MediaType.APPLICATION_JSON)
void delUser(@QueryParam("uno") Integer uno);
}
3.实现接口(其实rest不要求一定要有接口,所以可以直接实现方法)的部分省略,我是利用jpaRepository提供的方法实现的,有兴趣可以参照之前的博客.
@Component
public class UserServiceImpl implements IUserService{
......
}
4.发布REST服务(与Spring结合)
spring-cxf.xml:
[
]
web.xml:
contextConfigLocation
classpath:spring.xml
org.springframework.web.context.ContextLoaderListener
cxf
org.apache.cxf.transport.servlet.CXFServlet
cxf
/ws/*
客户端(JAXRS2.0+WebClient两种方式实现CRUD):
1.JAXRS2.0(推荐使用)
//使用JAXRS2.0发布REST服务
public class JAXRSClientTest {
private static final String url = "http://localhost:8080/restfulServer/ws/user";
private static final JacksonJsonProvider jsonProvider = new JacksonJsonProvider();
@Test
public void sayHiTest() {
String result = ClientBuilder.newClient()
.target(url).path("/sayHi").queryParam("name", "呢喃北上")
.request().get(String.class);
System.out.println(result);
}
@Test
public void queryByIdTest() {
System.out.println("根据id查询用户");
Client client = ClientBuilder.newClient().register(jsonProvider);// 注册json 支持
WebTarget target = client.target(url + "/queryById").queryParam("uno", 2);
Invocation.Builder builder = target.request();
Response response = builder.get();
User user = response.readEntity(User.class);
System.out.println(user.getUname());
response.close();
System.out.println("over");
}
@Test
public void queryAllTest(){
System.out.println("查询所有的用户");
List users = ClientBuilder.newClient().register(jsonProvider)
.target(url).path("/queryAll")
.request().get(new GenericType>() {});
for (User user : users) {
System.out.println(user);
}
System.out.println("over");
}
@Test
public void addUserTest(){
System.out.println("增加一位用户");
User user = new User(0, "mokeychan");
Client client = ClientBuilder.newClient().register(jsonProvider);
WebTarget target = client.target(url+"/addUser");
Response response = target.request().buildPost(Entity.entity(user, MediaType.APPLICATION_JSON)).invoke();
response.close();
System.out.println("over");
}
@Test
public void updUserTest(){
System.out.println("更新一名用户");
User user = new User(21,"雷蒙磨咯");
Client client = ClientBuilder.newClient().register(jsonProvider);
WebTarget target = client.target(url+"/updUser");
Response response = target.request().buildPut(Entity.entity(user, MediaType.APPLICATION_JSON)).invoke();
response.close();
queryAllTest();
System.out.println("over");;
}
@Test
public void delUser(){
System.out.println("删除一名用户");
Client client = ClientBuilder.newClient().register(jsonProvider);
WebTarget target = client.target(url+"/delUser?uno=18");
Response response = target.request().delete();
response.close();
System.out.println("over");
}
}
2.WebClient实现
//通用的WebClient方式发布
public class WebClientTest {
private static final String url = "http://localhost:8080/restfulServer/ws/user";
public static void main(String[] args) {
List providerList = new ArrayList();
providerList.add(new JacksonJsonProvider());
WebClient client = WebClient.create(url,providerList);
User user = client.path("/queryById").query("uno", 2).accept(MediaType.APPLICATION_JSON).get(User.class);
System.out.println(user.toString());
/*List users = client.path("/queryAll").accept(MediaType.APPLICATION_JSON).get(List.class);
for (Object user : users) {
System.out.println(user.toString());
}*/
}
}好了,发布与调用RESTful风格的WebService服务就实现了,不得不说利用URL来访问资源真的是妙啊.
demo源码:http://download.csdn.net/download/qq_33764491/10180087
你可能感兴趣的:(WebService,Spring)
Spring Cloud 和 Dubbo 区别
SpringCloud和Dubbo是两种主流的微服务框架,它们在设计理念、技术实现和应用场景上有显著差异。以下是两者的核心区别及各自的优缺点分析:一、核心区别1.初始定位与设计理念SpringCloud:定位为微服务架构的一站式解决方案,提供完整的分布式系统开发工具链(如服务注册、配置中心、网关、熔断器等),注重微服务治理的全面性。Dubbo:起源于SOA时代,核心关注服务调用与治理(如RPC通信
商城项目秒杀业务秒杀业务完善和网关配置路由转发----商城项目
旧约Alatus
电商项目 # Spring-Cloud框架 # Spring-Boot框架 spring boot 分布式 spring spring cloud 后端 mybatis 微服务
packagecom.alatus.mall.seckill.app;importcom.alatus.common.utils.R;importcom.alatus.mall.seckill.service.SecKillService;importcom.alatus.mall.seckill.to.SecKillSkuRedisTo;importorg.springframework.bea
MATH2110 - STATISTICS 3
后端
MATH2110-STATISTICS3SPRINGSEMESTERSEMESTER2025Coursework1Deadline:3pm,Friday14/3/2025Yourneat,clearly-legiblesolutionsshouldbesubmittedelectronicallyasaJupyterorPDFfileviatheMATH2110Moodlepagebythedea
@Schedule定时任务+分布式环境一些踩过的坑~
架构文摘JGWZ
分布式 学习 后端
定时任务的实现方式多种多样,框架也是层出不穷。“本文所谈及的是SpringBoot本身所带有的@EnableScheduling、@Scheduled实现定时任务的方式。以及采用这种方式,在分布式调度中可能会出现的问题,又针对为什么会发生这种问题?又该如何解决,做出了一些叙述。为了适合每个阶段的读者,我把前面测试的代码都贴出来啦~确保每一步都是有迹可循的,希望大家不要嫌啰嗦,感谢一、搭建基本环境基
132java ssm springboot基于大数据的吉林省农村产权交易数据分析可视化平台系统(源码+文档+运行视频+讲解视频)
QQ2279239102
spring boot 大数据 数据分析 开发语言 maven vue.js
文章目录系列文章目录目的前言一、详细视频演示二、项目部分实现截图三、技术栈后端框架springboot前端框架vue持久层框架MyBaitsPlus系统测试四、代码参考源码获取目的摘要:本文介绍了基于JavaSSM和SpringBoot开发的吉林省农村产权交易数据分析可视化平台系统,为农村产权交易市场提供决策支持。系统前端利用HTML、CSS和JavaScript构建直观的可视化界面,后端运用Ja
使用第三方工具监控 SpringBoot 接口超时,简单几步搞定!
程序员蜗牛g
springboot spring boot 后端 java
点击上方“程序员蜗牛g”,选择“设为星标”跟蜗牛哥一起,每天进步一点点程序员蜗牛g大厂程序员一枚跟蜗牛一起每天进步一点点31篇原创内容公众号为了实现SpringBoot项目的接口超时监控并触发邮件告警,以下是一些常用的第三方工具和解决方案,可根据项目规模和需求灵活选择。一、开源方案1.Prometheus+Alertmanager+Grafana功能特点:Prometheus:时序数据库,实时采集
干掉复杂代码! Spring Boot + CQRS 黄金组合,太优雅了!
程序员蜗牛g
springboot spring boot java 数据库
微服务架构的兴起放大了CQRS的必要性。在分布式系统中,服务通常需要自治和高度解耦,CQRS提供了一条清晰的路径。每个微服务都可以采用CQRS模式,确保其处理命令和查询的内部机制从其他服务中抽象出来。这也与领域驱动设计(DDD)非常吻合,其中领域事件可以触发不同微服务中的命令。潜在的陷阱虽然CQRS提供了许多好处,但它也面临着挑战:复杂性增加:引入CQRS会增加开销,尤其是在读取和写入之间的区别不
深入了解构建分布式微服务架构的利器:Spring Cloud Alibaba
和光同尘·心止
架构 分布式 微服务 springcloud
目录分布式微服务简介SpringCloudAlibaba简介核心组件Nacos组件Ribbon组件feign组件Sentinel组件seata组件gateway组件RabbitMQ组件组件安装步骤参考链接:阿里云官方文档:https://help.aliyun.com/阿里github官方文档:https://github.com/alibaba/SpringCloudAlibaba官方文档:ht
使用 Spring Boot Admin 管理和监控 Spring Boot 应用程序
AI天才研究院
Python实战 自然语言处理 人工智能 语言模型 编程实践 开发语言 架构设计
作者:禅与计算机程序设计艺术1.简介SpringBoot是一款开源框架,它让初学者能够快速地开发出基于Spring框架的应用程序。在过去的一年中,SpringBoot在GitHub上持续活跃,在全球范围内取得了令人瞩目的数据,获得了大量关注。目前,SpringBoot的版本号已经从2.x发展到了2.5.x、2.6.x和2.7.x。根据GitHub上的Star数据,截至2021年9月1日,Sprin
非常哇塞的 SpringBoot性能优化长文!
肥肥技术宅
java 大数据 java
SpringBoot已经成为Java届的No.1框架,每天都在蹂躏着数百万的程序员们。当服务的压力上升,对SpringBoot服务的优化就会被提上议程。本文将详细讲解SpringBoot服务优化的一般思路,并附上若干篇辅助文章作为开胃菜。本文较长,最适合收藏之。1.有监控才有方向在开始对SpringBoot服务进行性能优化之前,我们需要做一些准备,把SpringBoot服务的一些数据暴露出来。比如
Spring Boot如何利用Twilio Verify 发送验证码短信?
HBLOGA
Spring Boot Demo spring boot 后端 java
Twilio提供了一个名为TwilioVerify的服务,专门用于处理验证码的发送和验证。这是一个更为简化和安全的解决方案,适合需要用户身份验证的应用。使用TwilioVerify服务的步骤以下是如何在SpringBoot中集成TwilioVerify服务的步骤:1.添加依赖确保在pom.xml中添加Twilio的依赖(如果尚未添加):springboot-democom.et1.0-SNAPSH
构建微服务网关的利器:深入Spring Cloud Gateway
蓝天资源分享
微服务 架构 云原生
构建微服务网关的利器:深入SpringCloudGateway在微服务架构中,随着系统被拆分成多个独立的小型服务,服务的数量不断增加,服务的治理和调用变得复杂。为了有效管理和简化客户端与多个微服务之间的通信,API网关(如SpringCloudGateway)成为了一个不可或缺的组件。SpringCloudGateway是SpringCloud生态系统中的一个重要成员,它基于SpringFrame
Spring创建Bean 生命周期
K____End
Spring spring java 前端
SpringBean生命周期流程图+------------------------------------------------------+|开始|+------------------------------------------------------+|v+------------------------------------------------------+|加载配置元数据|
2025年计算机毕业设计springboot 校园二手物品交易平台的设计与实现
基林计算机毕设程序
课程设计 spring boot 后端
本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容选题背景随着环保意识的增强和校园经济的蓬勃发展,校园二手物品交易逐渐成为大学生群体中的重要经济活动。当前,国内外对于二手物品交易的研究主要集中在电商平台的发展、交易模式的创新以及市场潜力的挖掘等方面。然而,专门针对校园二手物品交易平台的研究相对较少,尤其是结合大学生实际需求和行为特点的
Elasticsearch 学习
Anthonywish
java 后端 elasticsearch springdata 全文检索
内容摘要安装Elasticsearch使用Rest的API操作索引使用Rest的API查询数据使用Rest的API聚合数据SpringDataElasticsearch使用1.Elasticsearch介绍和安装用户访问我们的首页,一般都会直接搜索来寻找自己想要购买的商品。而商品的数量非常多,而且分类繁杂。如果能正确的显示出用户想要的商品,并进行合理的过滤,尽快促成交易,是搜索系统要研究的核心。面
Vue+ElementUI+SpringMVC实现分页
史天航
java入门篇
Vue+ElementUI+SpringMVC实现分页这一段时间写项目用到了Vue+ElementUI,这里记录一下使用ElementUI内置分页插件结合后端SSM框架的实现思路和实现过程。其中遇到了很多坑,我会尽量把见到的坑都记录下来,希望对你有所帮助。首先让我们看一下最终效果:起步本博文的主要讲一下Vue+ElementUI结合后端SpringMVC实现分页的实现思路,基本的elementUI
单体架构、集群、分布式、微服务的区别!
码熔burning
微服务 架构 分布式 微服务
目录一、单体架构二、集群♀️♂️三、分布式架构四、微服务架构️五、总结我的其他文章也讲解的比较有趣,如果喜欢博主的讲解方式,可以多多支持一下,感谢!✨更多请看个人主页:码熔burning其他优质专栏:【✨设计模式】【SpringBoot】【多线程】【Redis】…等一、单体架构是什么:想象一下,你开了一家小餐馆,所有的功能都在一个地方完成:点餐、做饭、收银、打扫卫生,所有员工都在一个屋檐下工作
基于Springboot的毕业论文管理系统的设计与实现
2301_81127431
java java
基于SpringBoot的毕业论文管理系统的设计与实现摘要:随着科技和互联网的飞速发展,无纸化办公方式已成为时代潮流,不仅绿色环保,而且能提高办公效率。目前,在很多高校,无纸化办公方式也特别普遍,但是,对于毕业论文的管理,却有很多高校仍处于人工管理的阶段,过程繁琐且效率低下,不利于教师对学生毕业论文管理做到整理方便、查找迅速。这种人工管理论文的方式已不能满足现代高校建设数字化校园的发展需要。针对目
Spring Boot 接口 JSON 序列化优化:忽略 Null 值的九种解决方案详解
坎布里奇
SpringBoot spring boot json python
一、针对特定接口null的处理:方法一:使用@JsonInclude注解1.1类级别:在接口返回的DTO类或字段上添加@JsonInclude注解,强制忽略null值:类级别:所有字段为null时不返回@JsonInclude(JsonInclude.Include.NON_NULL)publicclassMyResponseDTO{privateStringfield1;1.2字段级别:在具
在Spring Boot项目中将中文转换为拼音:从入门到实践
和烨
核心业务思路 java
文章目录在SpringBoot项目中将中文转换为拼音:从入门到实践引言一、拼音转换的背景与需求1.1拼音转换的应用场景1.2技术选型二、SpringBoot集成pinyin4j2.1添加依赖2.2创建拼音工具类2.3在SpringBoot中使用工具类2.4编写测试用例三、实践中的注意事项3.1多音字处理3.2性能优化3.3其他拼音库四、总结在SpringBoot项目中将中文转换为拼音:从入门到实践
Easy Trans Spring Boot Starter ---Spring系列的字段翻译库
蓝胖子不是胖子
python 开发语言
EasyTransSpringBootStarter使用文档1.简介easy-trans-spring-boot-starter是一个基于SpringBoot的库,用于简化数据翻译和转换操作。它可以帮助你将数据库中的枚举值、状态码等转换为用户友好的文本,或者将一种数据格式转换为另一种格式。2.功能特点数据翻译:将枚举值、状态码等转换为用户友好的文本。数据转换:将一种数据格式转换为另一种格式。多语言
JAVAWeb——maven、SpringBoot、HTTP、Tomcat
l_tian_tian_
maven spring boot http
目录1.mavena.概述b.作用c.仓库b.坐标c.依赖管理2.SpringBoot3.HTTPa.概述b.请求协议c.响应协议d.协议解析4.Tomcata.Web服务器b.Tomcatc.SpringBoot与Tomcat关系1.mavena.概述Maven是apache旗下的一个开源项目,是一款用于管理和构建java项目的工具b.作用c.仓库用于存储资源,管理各种jar包本地仓库:自己计算
Spring Boot 学习笔记
剑走偏锋o.O
spring boot 学习 笔记
文章目录一、SpringBoot简介二、SpringBoot的优势三、SpringBoot的核心组件1.SpringBootStarter2.自动配置3.嵌入式容器4.Actuator四、SpringBoot的开发流程1.创建项目2.配置文件3.编写代码4.运行应用五、SpringBoot的常用注解1.`@SpringBootApplication`2.`@EnableAutoConfigurat
Spring Boot中的策略模式:如何基于ID灵活选择服务类?
墨瑾轩
一起学学Java【一】 spring boot 策略模式 后端
关注墨瑾轩,带你探索编程的奥秘!超萌技术攻略,轻松晋级编程高手技术宝库已备好,就等你来挖掘订阅墨瑾轩,智趣学习不孤单即刻启航,编程之旅更有趣SpringBoot中的策略模式:如何基于ID灵活选择服务类?在软件开发中,策略模式是一种行为设计模式,它使你能够在运行时更改算法或行为。在SpringBoot应用中,通过策略模式实现基于某种条件(如ID)来动态选择不同的服务类,可以使代码更加灵活和可维护。本
Rust入门学习笔记
凌云行者
Rust rust 入门笔记
Rust简介特点即安全又高效,并发是一种静态编译语言,要在写代码时声明数据类型擅长领域高性能WebServiceWebAssembly命令行工具网络编程嵌入式设备系统编程操作更新rust:rustupupdate卸载rust:rustupselfuninstall查看rust版本:rustc--version查看本地文档:rustupdoc用vscode打开某项目:进入项目目录后code.文件名后
SpringBoot篇之集成Jedis、Lettuce、Redisson
AK@
springboot spring boot 后端 java
目录前言一、详解Jedis、Lettuce和Redisson的区别二、SpringBoot集成2.1集成Jedis2.2集成Lettuce2.3集成Redisson总结前言大家好,我是AK,最近在做新项目,基于旧项目框架修改,正好最近也在整理springboot相关知识,项目中用到Redis,因此整理出来,帮助需要的小伙伴搞清楚到底选择哪个Redis客户端库。一、详解Jedis、Lettuce和R
org.springframework.transaction.CannotCreateTransactionException: Could not open
CptainLee
Spring SSH
1.看看用户名/密码是否正确2.数据库是否启动3.看看spring的数据库、事务等配置文件我遇到这个问题是因为拷贝学习项目的时候,忘记改mysql密码了。。。。。
Spring基础(五):Bean的生命周期
Lansonli
Spring系列核心知识 spring java Bean的生命周期
文章目录Bean的生命周期一、Bean从创建到销毁经历的各个阶段以及每个阶段所调用的方法二、测试生命周期1、准备bean2、配置bean3、测试bean三、关于后置处理器1、创建后置处理器实现BeanPostProcesser重写两个方法2、配置后置处理器,对容器中的所有bean添加后置处理器的生命周期四、BeanPostProcessor接口作用Bean的生命周期一、Bean从创建到销毁经历的各
远程调用Dubbo和OpenFeign的详解
格子先生Lab
dubbo spring cloud
在微服务架构中,服务之间的远程调用(RPC)是核心功能之一。Dubbo和OpenFeign是两个常用的远程调用框架,分别适用于不同的场景。Dubbo是一个高性能的JavaRPC框架,而OpenFeign是SpringCloud生态中的声明式HTTP客户端,主要用于RESTful服务的调用。本文将详细介绍如何使用Dubbo和OpenFeign实现远程调用,并分析它们的适用场景。1.Dubbo简介Du
SpringBoot 中使用Lua编写Redis脚本
爱吃三鲜豆腐的吐司
java spring boot
Lua是一种编程语言,它的基本语法大家可以参考网站:Lua教程|菜鸟教程1.什么是LuaLUA是一种轻量级、可扩展的脚本编程语言,以其小巧、快速、灵活和易于嵌入到宿主应用程序中的特性而闻名。轻量级:小巧的解释器,占用资源少,适用于嵌入式环境和资源受限系统。动态类型:支持动态类型,变量无需事先声明类型,运行时自动识别。可扩展:通过CAPI易于与宿主程序集成,提供丰富的扩展机制,便于构建定制化功能。面
多线程编程之join()方法
周凡杨
java JOIN 多线程 编程 线程
现实生活中,有些工作是需要团队中成员依次完成的,这就涉及到了一个顺序问题。现在有T1、T2、T3三个工人,如何保证T2在T1执行完后执行,T3在T2执行完后执行?问题分析:首先问题中有三个实体,T1、T2、T3, 因为是多线程编程,所以都要设计成线程类。关键是怎么保证线程能依次执行完呢?
Java实现过程如下:
public class T1 implements Runnabl
java中switch的使用
bingyingao
java enum break continue
java中的switch仅支持case条件仅支持int、enum两种类型。
用enum的时候,不能直接写下列形式。
switch (timeType) {
case ProdtransTimeTypeEnum.DAILY:
break;
default:
br
hive having count 不能去重
daizj
hive 去重 having count 计数
hive在使用having count()是,不支持去重计数
hive (default)> select imei from t_test_phonenum where ds=20150701 group by imei having count(distinct phone_num)>1 limit 10;
FAILED: SemanticExcep
WebSphere对JSP的缓存
周凡杨
WAS JSP 缓存
对于线网上的工程,更新JSP到WebSphere后,有时会出现修改的jsp没有起作用,特别是改变了某jsp的样式后,在页面中没看到效果,这主要就是由于websphere中缓存的缘故,这就要清除WebSphere中jsp缓存。要清除WebSphere中JSP的缓存,就要找到WAS安装后的根目录。
现服务
设计模式总结
朱辉辉33
java 设计模式
1.工厂模式
1.1 工厂方法模式 (由一个工厂类管理构造方法)
1.1.1普通工厂模式(一个工厂类中只有一个方法)
1.1.2多工厂模式(一个工厂类中有多个方法)
1.1.3静态工厂模式(将工厂类中的方法变成静态方法)
&n
实例:供应商管理报表需求调研报告
老A不折腾
finereport 报表系统 报表软件 信息化选型
引言
随着企业集团的生产规模扩张,为支撑全球供应链管理,对于供应商的管理和采购过程的监控已经不局限于简单的交付以及价格的管理,目前采购及供应商管理各个环节的操作分别在不同的系统下进行,而各个数据源都独立存在,无法提供统一的数据支持;因此,为了实现对于数据分析以提供采购决策,建立报表体系成为必须。 业务目标
1、通过报表为采购决策提供数据分析与支撑
2、对供应商进行综合评估以及管理,合理管理和
mysql
林鹤霄
转载源:http://blog.sina.com.cn/s/blog_4f925fc30100rx5l.html
mysql -uroot -p
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
[root@centos var]# service mysql
Linux下多线程堆栈查看工具(pstree、ps、pstack)
aigo
linux
原文:http://blog.csdn.net/yfkiss/article/details/6729364
1. pstree
pstree以树结构显示进程$ pstree -p work | grep adsshd(22669)---bash(22670)---ad_preprocess(4551)-+-{ad_preprocess}(4552) &n
html input与textarea 值改变事件
alxw4616
JavaScript
// 文本输入框(input) 文本域(textarea)值改变事件
// onpropertychange(IE) oninput(w3c)
$('input,textarea').on('propertychange input', function(event) {
console.log($(this).val())
});
String类的基本用法
百合不是茶
String
字符串的用法;
// 根据字节数组创建字符串
byte[] by = { 'a', 'b', 'c', 'd' };
String newByteString = new String(by);
1,length() 获取字符串的长度
&nbs
JDK1.5 Semaphore实例
bijian1013
java thread java多线程 Semaphore
Semaphore类
一个计数信号量。从概念上讲,信号量维护了一个许可集合。如有必要,在许可可用前会阻塞每一个 acquire(),然后再获取该许可。每个 release() 添加一个许可,从而可能释放一个正在阻塞的获取者。但是,不使用实际的许可对象,Semaphore 只对可用许可的号码进行计数,并采取相应的行动。
S
使用GZip来压缩传输量
bijian1013
java GZip
启动GZip压缩要用到一个开源的Filter:PJL Compressing Filter。这个Filter自1.5.0开始该工程开始构建于JDK5.0,因此在JDK1.4环境下只能使用1.4.6。
PJL Compressi
【Java范型三】Java范型详解之范型类型通配符
bit1129
java
定义如下一个简单的范型类,
package com.tom.lang.generics;
public class Generics<T> {
private T value;
public Generics(T value) {
this.value = value;
}
}
【Hadoop十二】HDFS常用命令
bit1129
hadoop
1. 修改日志文件查看器
hdfs oev -i edits_0000000000000000081-0000000000000000089 -o edits.xml
cat edits.xml
修改日志文件转储为xml格式的edits.xml文件,其中每条RECORD就是一个操作事务日志
2. fsimage查看HDFS中的块信息等
&nb
怎样区别nginx中rewrite时break和last
ronin47
在使用nginx配置rewrite中经常会遇到有的地方用last并不能工作,换成break就可以,其中的原理是对于根目录的理解有所区别,按我的测试结果大致是这样的。
location /
{
proxy_pass http://test;
java-21.中兴面试题 输入两个整数 n 和 m ,从数列 1 , 2 , 3.......n 中随意取几个数 , 使其和等于 m
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
import java.util.Stack;
public class CombinationToSum {
/*
第21 题
2010 年中兴面试题
编程求解:
输入两个整数 n 和 m ,从数列 1 , 2 , 3.......n 中随意取几个数 ,
使其和等
eclipse svn 帐号密码修改问题
开窍的石头
eclipse SVN svn帐号密码修改
问题描述:
Eclipse的SVN插件Subclipse做得很好,在svn操作方面提供了很强大丰富的功能。但到目前为止,该插件对svn用户的概念极为淡薄,不但不能方便地切换用户,而且一旦用户的帐号、密码保存之后,就无法再变更了。
解决思路:
删除subclipse记录的帐号、密码信息,重新输入
[电子商务]传统商务活动与互联网的结合
comsci
电子商务
某一个传统名牌产品,过去销售的地点就在某些特定的地区和阶层,现在进入互联网之后,用户的数量群突然扩大了无数倍,但是,这种产品潜在的劣势也被放大了无数倍,这种销售利润与经营风险同步放大的效应,在最近几年将会频繁出现。。。。
如何避免销售量和利润率增加的
java 解析 properties-使用 Properties-可以指定配置文件路径
cuityang
java properties
#mq
xdr.mq.url=tcp://192.168.100.15:61618;
import java.io.IOException;
import java.util.Properties;
public class Test {
String conf = "log4j.properties";
private static final
Java核心问题集锦
darrenzhu
java 基础 核心 难点
注意,这里的参考文章基本来自Effective Java和jdk源码
1)ConcurrentModificationException
当你用for each遍历一个list时,如果你在循环主体代码中修改list中的元素,将会得到这个Exception,解决的办法是:
1)用listIterator, 它支持在遍历的过程中修改元素,
2)不用listIterator, new一个
1分钟学会Markdown语法
dcj3sjt126com
markdown
markdown 简明语法 基本符号
*,-,+ 3个符号效果都一样,这3个符号被称为 Markdown符号
空白行表示另起一个段落
`是表示inline代码,tab是用来标记 代码段,分别对应html的code,pre标签
换行
单一段落( <p>) 用一个空白行
连续两个空格 会变成一个 <br>
连续3个符号,然后是空行
Gson使用二(GsonBuilder)
eksliang
json gson GsonBuilder
转载请出自出处:http://eksliang.iteye.com/blog/2175473 一.概述
GsonBuilder用来定制java跟json之间的转换格式
二.基本使用
实体测试类:
温馨提示:默认情况下@Expose注解是不起作用的,除非你用GsonBuilder创建Gson的时候调用了GsonBuilder.excludeField
报ClassNotFoundException: Didn't find class "...Activity" on path: DexPathList
gundumw100
android
有一个工程,本来运行是正常的,我想把它移植到另一台PC上,结果报:
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.mobovip.bgr/com.mobovip.bgr.MainActivity}: java.lang.ClassNotFoundException: Didn't f
JavaWeb之JSP指令
ihuning
javaweb
要点
JSP指令简介
page指令
include指令
JSP指令简介
JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分。
JSP指令的基本语法格式:
<%@ 指令 属性名="
mac上编译FFmpeg跑ios
啸笑天
ffmpeg
1、下载文件:https://github.com/libav/gas-preprocessor, 复制gas-preprocessor.pl到/usr/local/bin/下, 修改文件权限:chmod 777 /usr/local/bin/gas-preprocessor.pl
2、安装yasm-1.2.0
curl http://www.tortall.net/projects/yasm
sql mysql oracle中字符串连接
macroli
oracle sql mysql SQL Server
有的时候,我们有需要将由不同栏位获得的资料串连在一起。每一种资料库都有提供方法来达到这个目的:
MySQL: CONCAT()
Oracle: CONCAT(), ||
SQL Server: +
CONCAT() 的语法如下:
Mysql 中 CONCAT(字串1, 字串2, 字串3, ...): 将字串1、字串2、字串3,等字串连在一起。
请注意,Oracle的CON
Git fatal: unab SSL certificate problem: unable to get local issuer ce rtificate
qiaolevip
学习永无止境 每天进步一点点 git 纵观千象
// 报错如下:
$ git pull origin master
fatal: unable to access 'https://git.xxx.com/': SSL certificate problem: unable to get local issuer ce
rtificate
// 原因:
由于git最新版默认使用ssl安全验证,但是我们是使用的git未设
windows命令行设置wifi
surfingll
windows wifi 笔记本wifi
还没有讨厌无线wifi的无尽广告么,还在耐心等待它慢慢启动么
教你命令行设置 笔记本电脑wifi:
1、开启wifi命令
netsh wlan set hostednetwork mode=allow ssid=surf8 key=bb123456
netsh wlan start hostednetwork
pause
其中pause是等待输入,可以去掉
2、
Linux(Ubuntu)下安装sysv-rc-conf
wmlJava
linux ubuntu sysv-rc-conf
安装:sudo apt-get install sysv-rc-conf 使用:sudo sysv-rc-conf
操作界面十分简洁,你可以用鼠标点击,也可以用键盘方向键定位,用空格键选择,用Ctrl+N翻下一页,用Ctrl+P翻上一页,用Q退出。
背景知识
sysv-rc-conf是一个强大的服务管理程序,群众的意见是sysv-rc-conf比chkconf
svn切换环境,重发布应用多了javaee标签前缀
zengshaotao
javaee
更换了开发环境,从杭州,改变到了上海。svn的地址肯定要切换的,切换之前需要将原svn自带的.svn文件信息删除,可手动删除,也可通过废弃原来的svn位置提示删除.svn时删除。
然后就是按照最新的svn地址和规范建立相关的目录信息,再将原来的纯代码信息上传到新的环境。然后再重新检出,这样每次修改后就可以看到哪些文件被修改过,这对于增量发布的规范特别有用。
检出