事出有因 在向HttpURLConnection的输出流写入内容时,因没有设置charset,导致接收方对数据的验签不一致. URL url = new URL(requestUrl); //打开连接 HttpURLConnection urlConn = (HttpURLConnection)url.openConnection(); ...... ...... //获取输出流 out = new OutputStreamWriter(urlConn.getOutputStream()); /…
 Java Web开发中,路径问题是个挺麻烦的问题,本文小结了几个常见的路径问题,希望能对各位读者有所帮助. (1) Web开发中路径的几个基本概念 假设在浏览器中访问了如下的页面,如图1所示: 图1 Eclipse中目录结构如图2所示: 图2 那么针对这个站点的几个基本概念表述如下: 1. web站点的根目录:http://localhost:8080/ 2. web应用的的根目录:http://localhost:8080/test/ 3.同级目录:http://localhost:8080…
字符集.字符编码.XML中的中文编码 作为程序员的你是不是对于ASCII .UNICODE.GB2321.UTF-7.UTF-8等等不时出现在你面前的这些有着奇怪意义的词感到很讨厌呢,是不是总觉得好象明白一点又好象不是很明白它们真正的意义.下面我就来讲讲这些东东. 一.       字符集 字符集是什么呢,计算机表示某种语言所需要的符号和文字.它有很多种规范,例如 ASCII.GB2312.BIG5.GB18030.UNICODE,它们就是一些符号的集合,这些符号的索引值与具体存储到计算中的值并…
字符集.字符编码.XML中的中文编码 作为程序员的你是不是对于ASCII .UNICODE.GB2321.UTF-7.UTF-8等等不时出现在你面前的这些有着奇怪意义的词感到很讨厌呢,是不是总觉得好象明白一点又好象不是很明白它们真正的意义.下面我就来讲讲这些东东. 一.       字符集 字符集是什么呢,计算机表示某种语言所需要的符号和文字.它有很多种规范,例如 ASCII.GB2312.BIG5.GB18030.UNICODE,它们就是一些符号的集合,这些符号的索引值与具体存储到计算中的值并…
Java Web开发中路径问题小结 (1) Web开发中路径的几个基本概念 假设在浏览器中访问了如下的页面,如图1所示: 图1 Eclipse中目录结构如图2所示: 图2 那么针对这个站点的几个基本概念表述如下: 1. web站点的根目录:http://localhost:8080/ 2. web应用程序的的根目录:http://localhost:8080/test/ 3.同级目录:http://localhost:8080/test/articles/article1.jsp和http://…
标题:Maven在Java项目开发中的应用 一.基本信息 时间:2019 来源:山西农业大学 关键词:Maven:Java Web:仓库:开发人员:极限编程; 二.研究内容 1.Maven 基本原理概述 Maven 是 Apache 组织中特别成功的重要开源项目,它最突出的特点是,作为一款优秀的项目构建和管理工具,它把原本需要开发人员操作的繁杂的工作转变成了简单的命令.通过它,可以实现构建工作自动化,完成项目的清理.编译.打包.发送报告和部署等工作,简化构建过程,还可以避免造成构建重复. 2.M…
前言   Java项目开发中经常要用到分页功能,现在普遍使用SpringBoot进行快速开发,而数据层主要整合SpringDataJPA和MyBatis两种框架,这两种框架都提供了相应的分页工具,使用方式也很简单,可本人在工作中除此以外还用到第三种更方便灵活的分页方式,在这里一同分享给大家. 使用 主要分为SpringDataJPA分页.MyBatis分页.Hutools工具类分页几个部分 1.SpringDataJPA分页 1).引入依赖 <dependency> <groupId&g…
关于Unicode,字符集,字符编码,每个程序员都应该知道的事 作者:Jack47 李笑来的文章如何判断一个人是否聪明?中提到: 必要.清晰.且准确的概念,是一切思考的基石.所谓思考,很大程度上,就是在建立那些概念与概念之间的关联.概念是必要.清晰.且准确的,它们之间的关联也应该是准确的. 确实很认同这两句话,搞清楚字符集,字符编码,Unicode等关键词的意义,基本上也就能搞明白遇到的编码问题了.本文力求通俗易懂,但涉及的内容比较多,而且编码问题又不是那么容易理解的,所以如果大家看完之后还是对…
本节内容: 前言 相关概念 Python中的默认编码 Python2与Python3中对字符串的支持 字符编码转换 一.前言 Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章.有的人云亦云,也有的写得很深入.近日看到某知名培训机构的教学视频中再次谈及此问题,讲解的还是不尽人意,所以才想写这篇文字.一方面,梳理一下相关知识,另一方面,希望给其他人些许帮助. Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码:Python3的 默认编码 为Uni…
[转]Python中的字符串与字符编码 本节内容: 前言 相关概念 Python中的默认编码 Python2与Python3中对字符串的支持 字符编码转换 一.前言 Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章.有的人云亦云,也有的写得很深入.近日看到某知名培训机构的教学视频中再次谈及此问题,讲解的还是不尽人意,所以才想写这篇文字.一方面,梳理一下相关知识,另一方面,希望给其他人些许帮助. Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编…
Unicode字符集的字符编码方式CEF 一.字符编码方式CEF的选择 1. 由于Unicode字符集非常大,有些字符的编号(码点值)需要两个或两个以上字节来表示,而要对这样的编号进行编码,也必须使用两个或两个以上字节. 比如,汉字"严"的Unicode码(Unicode码点值.Unicode编号)是十六进制数4E25,转换成二进制数有15位(100 1110 0010 0101),对"严"这个字符的编号进行编码的话,至少需要2个字节.表示其他更大编号的字符,可能需…
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 环境说明   普通的linux 和 普通的windows.   VS2015 和 GCC 7.0 前言   曾记得,我在(https://blog.csdn.net/u011728480/article/details/100277582 <数与计算机 (编码.原码.反码.补码.移码.IEEE 754.定点数.浮点数)>)里面说过,计算机里面存储了数值和符号.…
乱码产生的原因 不管是request乱码还是response乱码,其实都是由于客户端(浏览器)跟服务器端采用的编码格式不一致造成的.以request乱码为例:浏览器向服务器发送请求,因为浏览器与服务器之间的通信实质上是socket流,所以要先将请求参数(字符)转换成字节,也就是编码过程,服务器接收到请求参数后进行解码(字节转字符),然后封装到request对象中.如果客户端的编码与服务器端的解码不统一,就会导致通过request获取到的请求参数的值是乱码. 乱码出现在这么几个位置上 数据传递过程…
一.有关Java Web与MVC设计模式 学习过基本Java Web开发的人都已经了解了如何编写基本的Servlet,如何编写jsp及如何更新浏览器中显示的内容.但是我们之前自己编写的应用一般存在无条理性,对于一个小型的网站这样的编写没有任何问题,但是一但我们需要编写大型的web工程的话,我们现有的编写模式会造成web应用的可扩展性较差,而且一但出现问题不能准确的定位出问题出在哪里. Java是一门应用设计模式比较广泛的语言.目前主流提出的23种设计模式均可在Java语言编写的程序中所应用.目前…
1.JVM Java虚拟机,class文件的运行时环境,就好比软件运行在操作系统一样,java要运行在JVM中才行,这也是Java之所以支持扩平台的基础. 2.Servlet/JSP 是满足一定接口需求的Java程序,Servlet的作用是能够接受容器委托过来的http请求,完成业务逻辑后,将结果返回给容器.Servlet以线程级别接受用户请求,比传统的CGI程序更节省资源. JSP比Servlet更亲民一些,本质上是嵌入了java程序的html网页.有了JSP,我们可以不必写繁琐的Servle…
今天帮别人写封装几个url 请求,打成jar 包,可以以java接口的方式提供给外部访问. 遇到两个问题: 1. 是否把依赖的jar包也 打入 我要生成的jar包中,如果你不打入,别人直接调用接口会报错.如果你打入可能会和使用该jar包的项目发生冲突,因为别人可能已经引入了相关jar包. 自己可以根据要求来定: 如果不打就需要把jar和pom文件都提供给需求提出者. 如果需要可以使用maven 插件 maven-assembly-plugin. <plugin> <groupId>…
常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份. Http协议是一种无状态的协议,一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接,这就意味着服务器无法从连接上跟踪会话,可以使用Cookie和Session来跟踪会话. Cookie Cookie实际上是一小段的文本信息.客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cook…
一.DNS协议 作用将域名解析为IP   类似于我们只需要知道中央一台,中央二台,而不需要知道它的频率,方便记忆. java dns 域名解析协议实现 1 域名解析,将域名可转换为ip地址InetAddress也可以通过使用getAddress()来获得IP地址,但是它的返回值是一个4个字节的数组.因此尽管getAddress()在获得IP方面是有用的,但却不适于用来输出. package dns; import java.net.InetAddress; import java.net.Unk…
1.Java开发中主要用到的jar包介绍:(1)java JDK基础开发包:java包和javax包.书写方式:import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.Map; 1.java.util包:集合类list/set/map等接口和实现类.calendar,date日期操作类.properties读取配置文件类.random随机数类.Timer计时器类.…
POST方法乱码: 1:存在乱码的示例: 前端页面: <%@ page language="java" contentType="text/html; charset=UTF-8" //设置UTF8编码 pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + ":/…
软件开发中,各个开发阶段不是顺序执行的,而各个阶段都进行迭代并行执行的,然后在进入下一个阶段的开发. 这样对于开发中的需求变化,及人员变动都能得到更好的适应. 软件开发过程汇总迭代模型如下图所示:…
看以博客感觉不错,分享一下http://www.cnblogs.com/tianguook/archive/2012/08/31/2665755.html (1) Web开发中路径的几个基本概念 假设在浏览器中访问了如下的页面,如图1所示: 图1 Eclipse中目录结构如图2所示: 图2 那么针对这个站点的几个基本概念表述如下: 1. web站点的根目录:http://localhost:8080/ 2. web应用程序的的根目录:http://localhost:8080/test/ 3.同…
基本概念 字符[character] 字符代表了字母表中的字符,标点符号和其他的一些符号.在计算机中,文本是由字符组成的. 字符集合[character set] 由一套用于特定用途的字符组成,例如支持西欧语言的字符集合,支持中文的字符集合.字符集合只定义了符号和他们的语意,其实跟计算机没有直接关系. 现实生活中,不同的语系有自己的字符集合,例如藏文有自己的字符集合,汉文有自己的字符集合.到计算机的世界中,也有各种字符集合,例如ASCII字符集合,GB2312字符集合,GBK字符集合.还有一个其…
乱码是个大坑,相信每个人都遇过,而且是个绕不过去的坑.我理解每个程序员都应该写一篇编码相关的博文,梳理自己对这一块的理解,下面是我反复理解多次之后的学习小结. 1.从记事本的不同编码说起: 打开记事本,输入“我我”,保存为ansi编码(其实是gb2312,这也是默认编码).再分别另存为unicode(其实是utf-16 little endian).unicodeBigEndian(其实是utf-16 big endian).utf8,用UltraEdit打开,切换到二进制模式,内容如下: 编码…
ImmutableClass null检查 字符编码 default logger 函数可变参数 Nashorn JavaScript engine 执行脚本文件 改变js文件输出流 全局变量 2D图 类单例 克隆 修饰符 结语 ImmutableClass 一旦初始化,值无法修改 主要是用于多线程之间的数据共享,避免数据污染 class不设置setter即可实现Immutable Class public class ImmutableIntArray { private final int[…
UTF-32 用 4 个字节存储每一个字符,以保证能把 UCS 完全表达出来.但实际上 UCS 的字符数量根本不需要用 32 位表示,UTF-32 极大地浪费了空间.另外,由于组合字符的存在,定长表示并不能如预期那样迅速地定位字符,反正就是超级不好用. UTF-16 将 UCS 映射为 16 长的整数,用于数据存储或传输.UCS 的码位,需要 1 个或 2 个 16 位的码来表示,因此这是一个变长表示.另外,UTF-16 也需要指定字节序.Java 和 C# 里的字符串表示就是用的 UTF-16…
1.Java  支持的8种基本数据类型: java的四种整数数据类型:byte 1    short 2     int4     long8   byte     8位带符号整数 -128到127之间的任意整数   即-2的7次方     到    2的7次方减1   short   16位无符号整数-32768~32767之间的任意整数  即-2的15次方   到   2的15次方减1   Int       32位带符号整数 -2^31到2^31-1之间的任意整数 Long     64位…
一.知识点 1.身份运算: 2.现在计算机系统通用的字符编码工作方式:在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码.用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件. 3.进制转换: 转二进制:bin() 转八进制:oct() 转十六进制:hex() 4.高精度数字处理方法: from decimal import * getcontext…
1.进制: JavaScript中允许使用字面量的形式声明不同进制的数字: var a = 0b10; // 2 声明一个二进制 var b = 010; // 8 八进制,严格模式下会报错 var c = 10; // 10 十进制 var d = 0x10 // 16 十六进制 其中八进制字面量在严格模式下会报错,数字超过范围,将会忽略前导 0 ,解析为十进制数字 2.进制之间转换: 调用toString方法,可以在进制之间进行转换. d.toString(2); //"10000"…
最近用latex写文章,要用到修订模式,于是采用latexdiff命令生成修订版pdf.这原本是一个非常简单方便的方法,却隐藏着字符编码的问题,初次用可能会遇到意想不到的问题,让人很烦,比如,生成出来的.tex文档,不是UTF-8编码,而是UTF-16,这导致latex无法编译(本人是采用的Windows10+TeXLive 2019+VS CODE).通过notepad将其转换成UTF-8编码,会出现奇奇怪怪的字符,如下: Package inputenc: Unicode character…