Time of Update: 2017-01-19
實現二分法尋找二分法尋找,需要數組內是一個有序的序列二分尋找比線性尋找:數組的元素數越多,效率提高的越明顯二分尋找的效率表示:O(log2N) N在2的M次冪範圍,那尋找的次數最大就是M, log2N表示2的M次等冪於N, 省略常數,簡寫成O(logN)如有一個200個元素的有序數組,那麼二分尋找的最大次數:2^7=128, 2^8=256, 可以看出7次冪達不到200,8次冪包括, 所以最大尋找次數就等於8//迴圈,二分尋找static int binarySearch(int[]
Time of Update: 2017-01-19
類比單鏈表線性表:線性表(亦作順序表)是最基本、最簡單、也是最常用的一種資料結構。線性表中資料元素之間的關係是一對一的關係,即除了第一個和最後一個資料元素之外,其它資料元素都是首尾相接的。線性表的邏輯結構簡單,便於實現和操作。在實際應用中,線性表都是以棧、隊列、字串等特殊線性表的形式來使用的。線性結構的基本特徵為:1.集合中必存在唯一的一個“第一元素”;2.集合中必存在唯一的一個 “最後元素” ;3.除最後一個元素之外,均有 唯一的後繼(後件);4.除第一個元素之外,均有
Time of Update: 2017-01-19
前兩天給同事做 code review,感覺自己對 Java 的 Generics 掌握得不夠好,便拿出 《Effective Java》1 這本書再看看相關的章節。在 Item 24:Eliminate unchecked warnings 這一節中,作者拿 ArrayList 類中的 public <T> T[] toArray(T[] a) 方法作為例子來說明如何對變數使用 @SuppressWarnings annotation。ArrayList 是一個 generic
Time of Update: 2017-01-19
進階加密標準(英語:Advanced Encryption
Time of Update: 2017-01-19
關於Mybatis GeneratorMyBatis Generator (MBG) 是一個Mybatis的代碼產生器 MyBatis 和 iBATIS. 他可以產生Mybatis各個版本的代碼,和iBATIS 2.2.0版本以後的代碼。 他可以內省資料庫的表(或多個表)然後產生可以用來訪問(多個)表的基礎對象。 這樣和資料庫表進行互動時不需要建立對象和設定檔。 MBG的解決了對資料庫操作有最大影響的一些簡單的CRUD(插入,查詢,更新,刪除)操作。
Time of Update: 2017-01-19
實現多表聯集查詢還是在david.mybatis.model包下面建立一個Website類,用來持久化資料之用,重寫下相應toString()方法,方便測試程式之用。package david.mybatis.model;import java.text.SimpleDateFormat;import java.util.Date;public class Website { private int id; private String name; private int
Time of Update: 2017-01-19
本文執行個體為大家分享了java實現簡單註冊選擇所在城市的全部代碼,供大家參考,具體內容如下1.activity_main.xml <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
Time of Update: 2017-01-19
其實MyBatis具有的一個強大的特性之一通常是它的動態 SQL 能力。 如果你有使用 JDBC 或其他 相似架構的經驗,你就明白要動態串聯 SQL 字串在一起是十分糾結的,確保不能忘了空格或在列表的最後省略逗號。Mybatis中的動態 SQL 可以徹底處理這種痛苦。對於動態SQL,最通俗簡單的方法就是我們自己在硬式編碼時候賦予各種動態行為的判斷,而在Mybatis中,用一種強大的動態 SQL 語 言來改進這種情形,這種語言可以被用在任意映射的 SQL 陳述式中。動態 SQL 元素和使用
Time of Update: 2017-01-19
以介面操作的方式編程一般來講,我們建立映射SQL介面的類時通常會這樣: public static void testBasicQuery(int id) { SqlSession session = MybatisUtils.getSqlSession(); try { /* * 此處的david.mybatis.demo.IVisitorOperation.basicQuery必須和下圖中配置裡面的namespace對應 */
Time of Update: 2017-01-19
DES密碼編譯演算法DES全稱為Data Encryption
Time of Update: 2017-01-19
本文執行個體講述了Java使用JavaMail發送郵件的方法。分享給大家供大家參考,具體如下:代碼一、Email_Autherticator.java 伺服器驗證代碼import javax.mail.Authenticator;import javax.mail.PasswordAuthentication;public class Email_Autherticator extends Authenticator { String username = "你郵箱的使用者名稱";
Time of Update: 2017-01-19
本文執行個體總結了Java編寫計算機的常見方法。分享給大家供大家參考,具體如下:方法一:package wanwa;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Calculator extends JFrame {private Container container;private GridBagLayout layout;private GridBagConstraints
Time of Update: 2017-01-19
RSA密碼編譯演算法
Time of Update: 2017-01-19
在說struts2的安全執行緒之前,先說一下,什麼是安全執行緒?這是一個網友講的。如果你的代碼所在的進程中有多個線程在同時運行,而這些線程可能會同時運行這段代碼。如果每次運行結果和單線程啟動並執行結果是一樣的,而且其他的變數的值也和預期的是一樣的,就是安全執行緒的。就是說,在一個進程中有多個線程並發執行,每個線程執行過程中,變數值是相同的,執行結果也是相同的,就是安全執行緒的.否則就是線程不安全的.然後回顧一下servlet的安全執行緒問題,由於servlet是單例模式的,只會產生一個執
Time of Update: 2017-01-19
一、裝飾器模式(Decorator Pattern)允許向一個現有的對象添加新的功能,同時又不改變其結構。這種類型的設計模式屬於結構型模式,它是作為現有的類的一個封裝。這種模式建立了一個裝飾類,用來封裝原有的類,並在保持類方法簽名完整性的前提下,提供了額外的功能。我們通過下面的執行個體來示範裝飾器模式的使用。其中,我們將把一個形狀裝飾上不同的顏色,同時又不改變形狀類。二、實現我們將建立一個 Shape 介面和實現了 Shape 介面的實體類。然後我們建立一個實現了 Shape
Time of Update: 2017-01-19
不論你是否關注,Java Web應用都或多或少的使用了線程池來處理請求。線程池的實現細節可能會被忽視,但是有關於線程池的使用和調優遲早是需要瞭解的。本文主要介紹Java線程池的使用和如何正確的配置線程池。單線程我們先從基礎開始。無論使用哪種應用伺服器或者架構(如Tomcat、Jetty等),他們都有類似的基礎實現。Web服務的基礎是通訊端(socket),通訊端負責監聽連接埠,等待TCP串連,並接受TCP串連。一旦TCP串連被接受,即可從新建立的TCP串連中讀取和發送資料。為了能夠理解上述流程,
Time of Update: 2017-01-19
本文為大家分析四種Java線程池用法,供大家參考,具體內容如下1、new Thread的弊端執行一個非同步任務你還只是如下new Thread嗎?new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub } }).start();那你就out太多了,new Thread的弊端如下:a. 每次new Thread建立對象效能差。b.
Time of Update: 2017-01-19
SHA1package com.stone.security; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.security.DigestInputStream; import java.security.DigestOutputStream; import
Time of Update: 2017-01-19
內部類class A { //Inner1 要在 A 初始化後 才能使用,即要被A的對象所調用 class Inner1 { int k = 0; // static int j = 0; //A載入後,Inner1沒有載入,所以這個 靜態變數j 無法立即使用,報錯 final int z = 0; /*static void say1() { }*/ void say2() { } } //Inner2
Time of Update: 2017-01-19
我們先來看個例子import java.io.*; /*** Created by liguoqing on 2016/3/28.*/public class ReadTxtFile { public static void readTxt(String filePath) { try { File file = new File(filePath); if(file.isFile() && file.exists()) { InputStreamReader