原创 IO流之複製文件

1.使用FileInputStream package cn.itcast.io; import java.io.FileInputStream; import java.io.FileNotFoundException; import

原创 多線程之多窗口賣票&線程之間的通信

案例一:使用多線程完成三個窗口賣票(不能出現重複賣票以及負數票) 賣票程序SellTicket 這裏使用Lock類中的方法實現加鎖和釋放鎖! package cn.itcast.thread2; import java.util.con

原创 多態&抽象&繼承

多態 package cn.itcast.extend; public class ExtendDemo2 { public static void main(String[] args) { A a=new B();//多條

原创 ubantu安裝rabbitMQ步驟

rabbitMQ安裝步驟 (1)、要在linux下安裝rabbitMQ,則需要先安裝erlang安裝包。因爲rabbitMQ是用erlang語言寫的,需要先配置erlang的環境。 (2)、erlang安裝: 下載安裝包 地址:http

原创 AOP面向切面編程,JDK的動態代理方式

1. AOP概念 1.1 什麼是AOP 在軟件行業中,AOP可以理解爲面向切面編程,它是一種通過預編譯和運行期動態代理實現程序功能的統一的一種技術。AOP,其實是OOP的延續。利用AOP可以使得業務邏輯代碼各部分之間的耦合度降低,提高程

原创 經緯度座標工具類

在開發地圖的時候難免會遇到經緯度的一些算法,這裏我分享一些經緯度的算法,主要包括, 判斷兩個經緯度座標之間的距離 判斷一個經緯度座標是否在一個圓形面中(如共享單車的電子圍欄爲圓形) 判斷一個經緯度座標是否在一個多邊形的中(電子圍欄類型

原创 線程安全的日期工具類

高併發情況下,SimpleDateFormat是線程不安全的,我們使用ThreadLocal解決線程安全問題。 日期模板枚舉類PatternEnum public enum PatternEnum { //g glob

原创 exe4j工具打包java Swing編寫的軟件

java之所以能夠跨平臺運行,正式因爲java虛擬機。但並不是每個客戶的電腦都安裝我們java程序員熟悉的JDK,因此如何讓java編寫的Swing軟件運行在客戶的PC端?對於打包exe可執行程序的步驟如下: 第一步:下載exe4j工具,

原创 Alibaba 開源框架dubbo簡介

1、什麼是dubbo 隨着互聯網的發展,網站應用的規模不斷的擴大,常規的垂直架構已無法應對,分佈式框架以及流動計算架構應運而生,亟需一個治理系統確保架構有條不紊的演進。 單一應用架構 當網站流量很小時,只需要一個應用,將所有功能部

原创 Dubbo註冊中心zookeeper

1、Linux基本命令回顧 1.1、命令 cp 文件的複製 tar -czvf newDemo.tar.gz ./oldDemo 其中newDemo.tar.gz爲壓縮文件的文件名 ./oldDemo表示當前目錄下待壓縮的的

原创 Cookie工具類

Cookie在開發中經常使用,我們知道,它是一個用在客戶端的。下面編寫CookieUtils工具類,方便開發。 編寫CookieUtils類 public class CookieUtils { /** * 設置c

原创 GPS座標轉化工具類

座標說明 目前比較流行的gps座標爲原始座標,火星座標,百度座標等。 原始座標:未經過任何處理的座標。 火星座標:中國國家XXX機構說是爲了防止安全(其實也不安全),也叫中國座標。 百度座標:百度地圖在火星座標基礎上進行了偏移。類似的

原创 WebService專業術語以及入門程序

一.WebService概述 1.WebService,顧名思義就是基於Web的服務。它使用Web(HTTP)方式,接收和響應外部系統的某種請求。從而實現遠程調用. 2.我們可以調用互聯網上查詢天氣信息Web服務,然後將它嵌入到我們的程

原创 使用單循環實現冒泡排序

對於冒泡排序是最容易,也是最容易在筆試中遇到的試題:接下來我們討論一下單循環的冒泡排序是如何實現的. 直接上代碼: package cn.itcast.sort; public class BubbleSort { public st

原创 這道Java面試題你真的理解麼?好多大神都回答錯誤!

最簡單面試題: 代碼: package cn.itcast.sort; public class Demo1 { public static void main(String[] args) { new Zi(); } } cl