摘要:目前学习用Android Studio进行android手机开发,出现了各种问题,出现问题后,搜索百度,有的一个问题,各种答案,通过多次试错排查,终于总结出了一套可以完全使用的方法了。具体的步骤如下: 1. 首先下载最新安装版Android Studio Arctic Fox,安装好后,会下载SDK
阅读全文
随笔分类 - JAVA
摘要:useBean动作标签 这个标签是笔者认为最重要的标签,所以放在了最后。 首先介绍Java Bean的特点:可以实现代码服用,易编写,易维护,易使用,可以在任何有JVM的机器上使用而不许重新编译。1.编写JavaBean的规则:(1)如果类的成员变量的名字是xxx,那么为了更改或获取成员变量的值在类中可以定义两个方法:getXxx()来获取属性和setXxx()来设置属性,要注意大小写。(2)对于boolean类型的成员变量,允许使用is来代替get和set。(3)类中的方法属性必须是Public的。(4)类中如果有构造方法,那么这个构造方法也是public的,并且是无参数的。例:一个简单be
阅读全文
摘要:语法格式:<jsp:forward page="uri"/>或者<jsp:forward page="uri"><jsp:param name="参数名称" value="值"/></jsp:forward>属于标签指令形式,因此要注意完结加/注:forward 语句属于无条件跳转语句 标签指令形式代码必须写在<% %>之外 使用此跳转语句,页面跳转了,地址栏没有改变,用户的请求依然没有改变 此跳转属于服务器端跳转示例:forward.jsp(webapp
阅读全文
摘要:METHOD属性METHOD属性是一个必须的属性,它指定Web浏览器将表单数据传送到服务器过程中所用的方法。在传送表单数据上有两种方法可供选择:POST和GET。 POST方法会使Web浏览器分两步传送数据。浏览器首先尝试与在ACTION属性中指定的服务器进行连接,当连接完成,再将表单数据通过这个特定传输通道(separate transmission)传送给服务器。服务器要以标准方式读取表单的参数。GET方法会使Web浏览器连接服务器并通过这个单一传输通道传送表单数据。浏览器将会把表单数据追加到ACTION所指定的URL之后(就像命令行参数一样)并用问号将URL与参数值分隔开。你要用哪一种方
阅读全文
摘要:•创建一个以JDBC连接数据库的程序,包含7个步骤: 1、加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的静态方法forName(StringclassName)实现。 例如: try{ //加载MySql的驱动类Class.forName("com.mysql.jdbc.Driver"); }catch(ClassNotFoundExceptione){ System.out.println("找不到驱动程序类,加载驱动失败!"); e.printStack
阅读全文
摘要:cookie是一小块可以嵌入在HTTP请求和应答中的数据。典型情况下,Web服务器将cookie值嵌入到应答的首部,而浏览器则在其以后的请求中都将携带同样的cookie。cookie的信息中可以有一部分用来存储会话ID,这个ID被服务器用来将某些HTTP请求绑定在会话中。cookie由浏览器保存在客户端,通常保存在一个名为cookie.txt的文件。cookie还含有一些其他属性,诸如可选的注释、版本号以及最长生存期。下面为cookies servlet的代码,它显示了当前请求的首部所包含的所有cookie的一些信息。 1 import javax.servlet.*; 2 import j.
阅读全文
摘要:根据设计,HTTP是一种无状态的协议。它意味着Web应用并不了解有关同一用户以前请求的信息。维持会话状态信息的方法之一是使用Servlet或者JSP容器提供的会话跟踪功能。Servlet API规范定义了一个简单的HttpSession接口,通过它我们可以方便地实现会话跟踪。 HttpSession接口提供了存储和返回标准会话属性的方法。标准会话属性如会话标识符、应用数据等,都以“名字-值”对的形式保存。简而言之,HttpSession接口提供了一种把对象保存到内存、在同一用户的后继请求中提取这些对象的标准办法。在会话中保存数据的方法是setAttribute(String s, Objec.
阅读全文
摘要:新建一shtml文件MyTemp.shtml<HTML><HEAD><TITLE>Times!</TITLE></HEAD><BODY>The current time here is:<SERVLET CODE=CurrentTime></SERVLET><P>The current time in London is:<SERVLET CODE=CurrentTime><PARAM NAME=zone VALUE=GMT></SERVLET><
阅读全文
摘要:写一个html文件,做form调用<html><head><title>Java Servelets Sample - Properties</title></haed><body><form METHOD="POST" ACTION="/myapp/Properties" ENCTYPE="x-www-form-encoded"><h2><center>Java Servlets Sample - Properties<
阅读全文
摘要:一、安装JDK 1.7 1、添加环境变量:在 我的电脑->属性->高级->环境变量 2、新建系统变量,变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0 (JDK的安装目录) 3、在原有的系统变量 Path后面加上英文分号,再添加%JAVA_HOME%\bin;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\jre\bin;不要删除原来的。看清楚,它们之间的分号,是英文的分号。4、重启电脑生效(因为添加的是系统变量,如果你的系统是win7,则不需要重启)。 4、测试JDK是否安装成功,运行->cmd-&
阅读全文
摘要:在Java 5.0之前启动一个任务是通过调用Thread类的start()方法来实现的,任务的提于交和执行是同时进行的,如果你想对任务的执行进行调度或是控制 同时执行的线程数量就需要额外编写代码来完成。5.0里提供了一个新的任务执行架构使你可以轻松地调度和控制任务的执行,并且可以建立一个类似数据库连接 池的线程池来执行任务。这个架构主要有三个接口和其相应的具体类组成。这三个接口是Executor, ExecutorService、ScheduledExecutorService,让我们先用一个图来显示它们的关系:
阅读全文
摘要:Callable与 Future 两功能是Java在后续版本中为了适应多并法才加入的,Callable是类似于Runnable的接口,实现Callable接口的类和实现Runnable的类都是可被其他线程执行的任务。
Callable的接口定义如下;
阅读全文
摘要:JDK1.0定义了stop和suspend方法,前者用来直接总之线程,后者会阻塞线程直到另一个线程调用resume.
stop和suspend都有一些共同的点:都试图专横的控制一个给定线程的行为.
阅读全文
摘要:java的锁机制现行的有synchronized和Lock。synrhronized关键字简洁、清晰、语义明确。其应用层的语义是可以把任何一个非null对象作为”锁”,当synchronized作用在方法上时,锁住的便是对象实例(this);当作用在静态方法时锁住的便是对象对应的Class实例,因为Class数据存在于永久带,因此静态方法锁相当于该类的一个全局锁;当synchronized作用于某一个对象实例时,锁住的便是对应的代码块。synrhronized锁主要通过Lock-Free的队列,放弃了些公平性,通过自旋锁提高了瞬时的吞吐量。 下面是JAVA模拟银行账户存储和转移的实例: 1..
阅读全文
摘要:在多线程中可以很方便的控制多个弹跳球的移动,当球体碰到窗体边界便折回。用Thread.start启动一个新的线程。 1 /** 2 @version 1.32 2004-07-27 3 @author Cay Horstmann 4 */ 5 6 import java.awt.*; 7 import java.awt.event.*; 8 import java.awt.geom.*; 9 import java.util.*; 10 import javax.swing.*; 11 12 /** 13 Shows an animated bounci...
阅读全文
摘要:二叉树是每个节点最多有两个子树的有序树。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。在JAVA中可以用类很方便的实现二叉树: 1 package MyTree; 2 3 //tree.java 4 //demonstrates binary tree 5 //to run this program: C>java TreeApp 6 import java.io.*; 7 import java.util.*; // for Stack class 8 //...
阅读全文
摘要:JAVA不允许一个类继承自多个类,为了解决这个问题,JAVA提供了java.lang.Runnable接口,它有一个run()方法: 1 package runimpl; 2 public class Machine implements Runnable{ 3 private int a=0; 4 public void run(){ 5 for(a=0;a<50;a++){ 6 System.out.println(Thread.currentThread().getName()+":"+a); 7 try{ 8 Thread.sle...
阅读全文
摘要:JAVA后台线程的特点是只有所有的前台线程结束运行,后台线程才能结束,后台线程可用setDaemon()进行设置: 1 package withdaemon; 2 3 public class Machine extends Thread { 4 private int a; 5 private static int count; 6 7 public void start() { 8 super.start(); 9 Thread deamon=new Thread() {10 public void run...
阅读全文
摘要:JAVA中当前运行的线程可以调用另一个线程的join()方法,使当前的线程转到阻塞状态,等待另一个线程运行完毕再继续运行,它才运行: 1 package join; 2 public class Machine extends Thread{ 3 public void run(){ 4 for(int a=0;a<50;a++) 5 System.out.println(getName()+":"+a); 6 } 7 public static void main(String args[])throws Exception{ 8 Machine ma...
阅读全文
摘要:可以用setPriority来设置线程的优先级,getPriority取得线程的优先级: 1 package priority; 2 3 import sharevar.Machine; 4 5 public class priority extends Thread { 6 private static StringBuffer log=new StringBuffer(); 7 private static int count=0; 8 9 public void run() {10 for (int a=0;a<20;a++) {11...
阅读全文